Perché sviluppare programmi open source gratuiti? [chiuso]

36

Perché qualcuno dovrebbe usare il proprio tempo per sviluppare un progetto open source gratuitamente e senza compensazione?

    
posta Diego 01.12.2010 - 13:49
fonte

14 risposte

55

Per piccoli progetti, le ragioni potrebbero essere "hobby", "avere un po 'di esperienza", "fama", "gioia" ecc. ma non è così che funzionano i grandi progetti open source come Mozilla, OpenOffice, Linux.

Perché Sun ha acquistato StarDivision e ha reso StarOffice un programma open source (chiamato OpenOffice.org)? Perché Mozilla crea un browser di prim'ordine e lo distribuisce come open source? Perché ci sono persone che creano Linux, scrivono driver e quant'altro, e lo mettono a disposizione di tutti gratuitamente? Perché Microsoft crea driver opensource per Linux in modo che possa funzionare meglio nella virtualizzazione di MS?

Perché ha senso per gli affari. Guadagna in questo modo, o almeno ha intenzione di farlo.

In alcuni casi, il predominio dei prodotti di MS, ovvero Windows, Office, Internet Explorer, era il motivo per cui creava un prodotto concorrente, quindi sarebbe stato più difficile per MS utilizzare la dominanza desktop per conquistare altri domini, cioè server, servizi Internet, anche. Questo spiega, in qualche modo, OpenOffice.org e Mozilla.

In altri casi, il software open source ha lo scopo di guidare le vendite di hardware, altri software o servizi. I driver Open Source ovviamente aiutano a vendere componenti hardware agli utenti Linux. RedHat vende supporto per la loro distribuzione Linux, e vendono il fatto che il loro Linux è autentico RedHat. Altri prodotti, ad es. Oracle, sono certificati per l'uso su RedHat, ma non su CentOS, anche se probabilmente funziona altrettanto bene. L'hardware del server è certificato per RedHat, anche se altre distribuzioni di Linux probabilmente funzionano altrettanto bene. I grandi clienti non si preoccupano del prezzo, vogliono il certificato.

Alcune aziende, ad es. Google, sponsorizza molti progetti open source, perché aiuta la loro attività. Non lo fanno per l'altruismo. Vogliono un Internet gratuito, un Internet pervasivo, un Internet diffuso, dove le persone usano i servizi di Google in modo che Google generi entrate.

    
risposta data 01.12.2010 - 14:16
fonte
26

Perché tutto deve essere sul denaro? Come pensi che funzioni Wikipedia? Nessuno viene pagato per inserire contenuti su Wikipedia, tuttavia è discutibile la migliore enciclopedia intorno.

modifica

Parliamo di soldi.

I progetti open source, come tutti i progetti, sono scritti al di fuori del necessario. Hai un problema X e scrivi la libreria Y o l'applicazione Z per risolverlo, perché

  • Non ci sono strumenti, che lo risolvano o
  • Non sono abbastanza buoni o
  • Non valgono i soldi (scrivere il tuo strumento probabilmente "costa" di più, ma alla fine hai esattamente quello che vuoi e puoi modificarlo come vuoi, così il costo ammortizzato velocemente).

Quindi ora hai trascorso alcune sere e nei fine settimana (e / o a pagamento) scrivendo la prossima cosa bollente fino a raggiungere un punto, dove il bambino inizia a camminare. Ora devi scegliere tra:

  • Distribuzione commerciale: si tratta di marketing, materiale legale, assistenza clienti, tutte le correzioni da te stesso, tonnellate di incredibili richieste di funzionalità e meno di feedback inutili. Alla fine si ottiene ciò che rimane dei soldi una volta che tutti i parassiti hanno preso il loro pezzo di torta. E probabilmente a nessuno piacerà il tuo prodotto perché costa troppo.
  • Distribuzione open source: questo implica ... uhm ... inserire il codice in un repository pubblico e fare un annuncio o due su mailing list pertinenti. Otterrai un riconoscimento o anche una certa fama. Otterrete una base di utenti, che fornisce feedback costruttivo, segnalazioni di bug utili ed eventualmente anche patch. Ricevi alcune donazioni o vieni invitato ad alcune conferenze o vieni pagato per implementare le funzioni a o b. E hai prodotto un sacco di valore, anche se nessuno ha pagato nulla. E la prossima volta che tu o la tua azienda avete bisogno di qualcosa, le probabilità sono buone, lo otterrete e lo otterrete gratuitamente.

L'open source funziona, perché è una comunità. Perché è reciproco. Non ottieni denaro scrivendo codice open source. Ottieni denaro consumando codice open source. Allora perché scrivi codice open source? Per restituire qualcosa.

    
risposta data 01.12.2010 - 13:57
fonte
24

Questo è un hobby per alcune persone; credici o no.

Gillette sarà felice di darti un rasoio gratuito e venderti le lame.

Alcune persone fanno soldi in altri modi e vogliono restituire alla comunità. Sono sicuro che Linus Torvalds ha fatto un sacco di soldi 'off' di Linux senza vendere il codice e probabilmente gira denaro.

Non tutti i software open source sono stati concepiti o progettati per consentire a qualsiasi utente di scaricarli, installarli e utilizzarli, in modo che tu possa passare più tempo a seconda del livello di abilità e la maggior parte delle persone ne valuta il tempo.

    
risposta data 01.12.2010 - 13:56
fonte
11

La compensazione monetaria non è l'unica compensazione possibile. La fama (anche se per lo più in un cerchio limitato) è un'altra. Le gioie di mostrare ciò che hai fatto è ancora un altro.

Io, lo faccio principalmente perché ho voglia di scrivere software e se succede ad aiutare qualcun altro, vincono tutti.

    
risposta data 01.12.2010 - 13:58
fonte
4

Ci sono diversi motivi per sviluppare applicazioni open source. In generale, più è fondamentale la necessità di adattarsi meglio all'open source. Ad esempio, ASP.NET MVC, Ruby on Rails, Django, PHP e altri framework Web sono tutti open source. Esatto, anche Microsoft ha un progetto open source abbastanza noto. La necessità di un framework web ben organizzato che ti permetta di concentrarti sulla creazione di un'applicazione web è più grande dell'applicazione web specifica che stai costruendo.

Molte persone (me compreso) contribuiscono all'open source perché utilizziamo questi framework nel nostro lavoro diurno. È autoconservazione in un certo senso. Se non devo continuare a reinventare la ruota solo perché sono in una nuova compagnia, perché dovrei?

Per fare soldi con l'open source, questo è un argomento delicato. La maggior parte delle licenze open source ti consente di vendere il tuo software. La licenza specifica regola se è necessario condividere le modifiche (le licenze BSD / ASL non funzionano mentre le licenze GPL sono in genere nella maggior parte dei casi) o fornire l'attribuzione del progetto originale.

I casi che vedo lavorare più spesso sono:

  • Vendita di supporto. MySQL, Spring e alcuni altri seguono questo modello e lo fanno bene.
  • Vendere la convenienza. RedHat, SuSE e altre distribuzioni Linux raggruppano insieme un gruppo di applicazioni per la comodità dell'utente.
  • Vendita di elettrodomestici. In breve, questo è il modo in cui aziende come Google, Nokia, Linksys, ecc. Fanno insieme pacchetti di proprietà e open source di denaro e li proteggono. È probabilmente l'opzione più redditizia.
  • Vendita di t-shirt / tazze / ecc. Non porta molto, ma meglio di niente.

La linea di fondo è che il codice sorgente potrebbe essere aperto, ma ci sono sempre persone che hanno bisogno di più del codice grezzo. Sono sicuro che ci sono più modi per fare soldi con l'open source, devi solo essere creativo.

    
risposta data 01.12.2010 - 14:06
fonte
4

Questa domanda non è specifica per l'open source, perché puoi scrivere codice, gratuitamente e non pubblicarlo mai al pubblico (anche se ciò sarebbe raro a causa di tutti i noti vantaggi del codice di condivisione).

La vera domanda è: perché fare qualcosa gratis? La risposta è, perché ti rende felice .

Personalmente, mi piace imparare, e apprendo più a lavorare sull'open source che a lavorare sul mio lavoro retribuito. Perché l'apprendimento migliora le mie capacità mi aiuta anche a ottenere posti di lavoro migliori.

    
risposta data 25.01.2011 - 21:38
fonte
2

C'è una varietà di motivi.

Alcune persone vengono pagate per averlo scritto, perché il loro datore di lavoro ritiene che valga la pena (e ci sono un sacco di potenziali ragioni per questo). Alcune persone avviano aziende basate su F / OSS perché possono ricavarne profitti.

Alcune persone usano F / OSS e vogliono restituire.

Alcune persone lo considerano un gioco di reputazione, come la ricerca accademica o la risposta alle domande qui.

Alcune persone vogliono un determinato software per i propri scopi e lo rilasciano solo perché quello che vogliono è usarlo e a volte possono ricevere suggerimenti utili se anche altre persone lo possono usare.

    
risposta data 01.12.2010 - 19:55
fonte
1

Oltre al denaro, ovviamente c'è fama - e poi loro stanno imparando come funziona qualcosa costruendolo e costruendo te stesso. Ottenere un'esperienza preziosa e commerciabile al di fuori della normale vita lavorativa. Penso che Ayende sia un buon esempio di questo.

Per inciso - in generale ho trovato alcuni dei migliori e più intuitivi progetti e framework con cui ho lavorato per essere open source - penso che le persone che sono veramente abbastanza appassionate per passare il loro tempo libero a costruire un progetto da zero o semplicemente a mantenerlo produrre un prodotto migliore di persone che sono state raggruppate insieme dal 9-5.

    
risposta data 01.12.2010 - 14:49
fonte
1

Non è solo per fare soldi ma più spesso per risparmiare denaro . La vasta libreria di buone librerie e strumenti OSS lo rende una scelta naturale.

Negli stessi casi (GPL e amici) ciò significa che sei legalmente obbligato a rendere anche il codice OSS risultante. In altri casi, è solo una scelta personale, ma puoi comunque ricevere altri premi (soprattutto qualche riconoscimento, a volte la possibilità di vendere supporto, a volte (mi è successo) un buon riferimento da mostrare ai potenziali datori di lavoro)

    
risposta data 01.12.2010 - 17:41
fonte
1

Puoi rilasciarlo con una licenza libera restrittiva, come GNU AGPL, e poi pagare per le eccezioni.

    
risposta data 01.12.2010 - 20:34
fonte
1

In più di un'occasione, ho contribuito con una patch a un progetto open source semplicemente perché volevo assicurarmi che la funzione / correzione fosse inclusa nelle versioni future.

Non sembra un tratto che qualcuno possa pubblicare qualcosa come open source semplicemente perché offre la possibilità che altri lo usino e lo mantengano attuale.

Ho lavorato con una persona che ha scritto codice che (IIRC) ha convalidato CUSIP . Lo ha pubblicato in rete. Anni dopo ha scaricato una lib CUSIP per un sistema diverso. È stato sorpreso di vedere un riferimento al codice che ha scritto anni prima.

    
risposta data 25.01.2011 - 22:43
fonte
0

Puoi supportarlo per ottenere denaro. Se hai un programma molto ben pensato e utilizzato dalla community, ad esempio jboss, puoi offrire i tuoi servizi e supporto. La gente pagherà per questo.

    
risposta data 01.12.2010 - 15:52
fonte
0

L'azienda per cui lavoro, è iniziata con un codice di dominio pubblico (scritto dal proprietario dell'attività commerciale) [L'open source era anni dall'invenzione]. Il suo modello di business originale doveva essere un consulente per usarlo (l'uso non è semplice e molte centinaia di persone si guadagnano da vivere consultando). Ovviamente le richieste di miglioramenti delle funzionalità erano così grandi da diventare un codice commerciale proprietario *. Tuttavia, la maggior parte degli stipendi guadagnati si riduce rapidamente a numeri: (1) Utenti che svolgono il proprio lavoro, (2) Consulenti del gruppo (1), infine (3) Sviluppatori / tester ecc.

Uso il plurale, perché diversi altri codici proprietari derivano dalla stessa versione del codice sorgente del dominio pubblico.

    
risposta data 01.12.2010 - 22:54
fonte
0

Potresti trovarti nella seguente posizione:

  • hai bisogno di un buon software per fare le cose per te
  • trovi che hai bisogno di un maggiore controllo sul funzionamento del software che le opzioni di configurazione delle offerte disponibili forniscono
  • hai accesso al codice sorgente per software che soddisfa quasi le tue esigenze, e l'esperienza per modificarlo per esercitare il controllo di cui hai bisogno
  • devi solo apportare piccole modifiche per i tuoi scopi, ma vuoi beneficiare di molte altre modifiche apportate da altri, e il futuro dello sviluppo del software sembra luminoso
  • le tue modifiche non sono isolate e abbastanza sostanziali considerarli come beni che vale la pena proteggere o vendere, o il sovraccarico aggiunto in tal modo sarebbe superiore ai benefici
  • sai che le tue modifiche possono essere di beneficio a molti altri con bisogni simili ai tuoi; farli incorporare nella linea di sviluppo principale ti farà risparmiare fatica, rispetto al mantenimento della tua copia biforcuta

In questa situazione, partecipare a un progetto open source è una decisione aziendale perfettamente sensata.

Può anche essere una buona pubblicità.

    
risposta data 01.04.2011 - 12:41
fonte

Leggi altre domande sui tag