Newsgroup: it.comp.programmare
Titolo: OpenSource software: come guadagnare

Scusate ma ancora non ho capito come un programmatore possa guadagnare 
denaro producendo software open source.
Qualcuno me lo puï¿œ spiegare ?

 Qualcuno me lo può spiegare ?
La spegazione dettagliata è lunga, quella rapida la puoi riassumere
nel motto "ricco e famoso" invertendo i termini. Se sei conosciuto
come un buon, o meglio ottimo, professionista, molte aziende ti
cercheranno. L'open source ti permettere di diventare famoso, se il
software viene giudicato utile naturalmente.

 software viene giudicato utile naturalmente.
E nel tempo che intercorre tra la scrittura della prima linea di codice 
ed il momento in cui si � diventati "famosi" e le aziende sono disposte 
a pagarti tanti money, con cosa si paga l'affitto della casa ?
p.s.non vorrei apparire polemico, ma vorrei capire bene. Questa di 
diventare famoso me la immaginavo, ma...ancora non capisco
grazie cmq


La prima cosa da precisare ï¿œ che il software open source non ï¿œ 
necessariamente gratuito (e questo giï¿œ spiega una parte della 
questione). Spesso si associano i due concetti, ma non ï¿œ sempre cosï¿œ.
Quanto al guadagnare ci sono almeno due modi:
- lavori per un'azienda che ti paga regolarmente e distribuisce il 
software che scrivi come open-source. Nel campo dell'embedded (quello 
che per motivi professionali conosco meglio) molte aziende che producono 
hardware rilasciano in open-source il software necessario a supportarlo 
(drivers, board support packages), spesso facendolo sviluppare a terze 
parti. A loro interessa vendere la "ferraglia", il software ï¿œ un "male 
necessario" e distribuirlo in open source consente di ridurre i costi di 
manutenzione e avere un vantaggio rispetto ai concorrenti che quel 
software lo fanno pagare (tanto che anche molte aziende che rilasciavano 
BSP open-source a pagamento o solo binari si stanno spostando verso 
open-source gratuito). Nel campo dell'embedded poi avere i sorgenti 
(gratis o a pagamento) ï¿œ fondamentale, tanto che anche microsoft 
rilascia una bella fetta dei sorgenti dei suoi sistemi operativi 
embedded (CE e microframework).
- Ti fai pagare customizzazioni e modifiche al tuo software. E' vero che 
chiunque ha i sorgenti e lo puï¿œ fare ma, a meno di non trovare gente che 
lo fa per quattro soldi, un cliente finale preferirï¿œ far modificare il 
software a chi l'ha scritto.
Quanto questi modelli siano applicabili e, soprattutto applicabili alla 
realtï¿œ italiana, non sta a me discuterlo. Ci sono esempi di software 
open-source che sicuramente danno da vivere a una nutrita comunitï¿œ di 
sviluppatori e altri che sono falliti o vengono sovvenzionati da 
universitï¿œ o altri enti e quindi non si autosostengono al 100%.
-- 
Valter Minute
(the reply address of this message is invalid)
(l'indirizzo di reply di questo messaggio non ï¿œ valido)

Valter Minute ha scritto:

Grazie, finalmente un barlume di spiegazione, adesso ho le idee un pï¿œ 
piï¿œ chiare!! Ringrazio per la disponibilitï¿œ

 grazie cmq
C'� anche un altra considerazione da fare.
La base di software devi comunque crearla, anche se non lo rilasci 
open-source. Certo, puoi lavorare come consulente etc., ma anche in quel 
caso c'� un grosso investimento iniziale in termini di studio e pratica 
(perch� un consulente che conosce le cose solo in teoria non lo vuole 
nessuno, credo!).
Con l'open-source puoi partire da una base di codice non tua e fornire 
customizzazioni. Ad esempio, sempre nel campo dell'embedded, molte 
piccole aziende hanno la loro versione di linux o altri sistemi 
operativi open source adattata a uno specifico microprocessore o a 
situazioni operative particolari. Senza riscrivere tutto hanno un 
prodotto che pu� essere valido e il "prezzo" di dover lasciare in open 
source quello che si realizza (in alcuni casi � obbligatorio farlo per 
licenza) si compensa con la possibilit� di partire da una base di codice 
ampia e testata.
Ovviamente la stessa cosa la puoi fare con un sistema operativo 
commerciale (ed � quello che faccio io), senza vincoli su quello che 
realizzi (in molti casi � il cliente finale a decidere come distribuire 
e se distribuire il codice), ma pagando la "base" da cui parti.
Conosco realt� che hanno avuto successo con uno o l'altro approccio e, 
personalmente, non mi piacciono troppo le diatribe "filosofiche" che 
spesso nascono attorno all'argomento.
Riporto solo la mia (poca) esperienza.
-- 
Valter Minute
(the reply address of this message is invalid)
(l'indirizzo di reply di questo messaggio non � valido)

 grazie cmq
Devi però fare uno sforzo di immaginazione per meglio comprendere il
meccanismo.
Hai due situazioni distinte, vuoi investire il tuo tempo e denaro per
creare un'opensource di possibile successo, in questo caso rientri in
una logica imprenditoriale, anche se apparentemente piccola, oppure
sei dipendente (diretto od indiretto) e riesci nel frattempo a creare
qualche routine che puoi inserire in un circuito opensource senza
entrare in conflitti legali con nessuno.
Il rischio esite nei due casi, con la differenza che nel secondo caso
rischi poco denaro (vale l'equazione tempo=denaro).
Pensa ad una banda di musicisti che suonano nel garage di casa e
troverai un'analogia del primo caso. Mentre se pensi ad un buon cuoco
in un ristorante di successo troverai un'analogia del secondo caso.
Chiaro che poi ognuno deve farsi i suoi conti e capire cosa sia
conveniente. Io sono convinto che chi abbia pochi mezzi e denaro a
disposizione ha tutto l'interesse a buttarsi nell'opensource, vale a
dire crere cose utili che siano percepite positivamente dalla
collettività, a quel punto diventa conosciuto(a) senza affrontare le
spese di autopromozione. Lo stesso vale per le aziende, un esempio
eclatante è Arduino, googla questo nome e capirai.

 Qualcuno me lo può spiegare ?
Dove hai letto che un programmatore guadagna producendo software open
source?

Valter Minute ha scritto:

Neanche a me; ho postato questo topic appunto per capirci qualcosa in 
pi� di concreto. Penso che quello che tutti conosco � "open-source 
significa gratis", ma penso che in pochi sappiano cosa ci si pu� fare 
per lavorare ed � quello che sto cercando di capire. Per ora non mi 
sembra un valida scelta per un programmatore alle prime armi che si deve 
guadagnare uno stipendio, ma rimane solo una mia opinione e sar� 
contento di cambiarla se qualcuno mi illumini!
Grazie

 eclatante � Arduino, googla questo nome e capirai.
Per quanto riguarda Arduino hai ragione perch� lo conosco gi�.
Se per� scrivo un software con licenza proprietaria, magari aspetto un 
anno pubblicizzandolo (distribuendolo in maniera gratuita), poi magari 
posso iniziare a venderlo alle sole industrie con caratteristiche piu 
avanzate rispetto a chi lo usa gratuitamente a casa (scelta adottata da 
tanti software, Avast per citarne uno).
Se invece lo avvessi dato con licenza open source e dopo un anno intendo 
venderlo, chi me lo comprer�, visto che il codice � liberamente 
disponibile ?

 
Leggi le risposte degli altri utenti, l� troverai degli spunti.
Comunque di "volontariato informatico" non ne ho mai sentito parlare

 disponibile ?
Qui semplifichi in modo esagerato, dietro un codice c'è un know how
personale o colletivo. Se inserisci un codice per eliminare gli spazi
a destra ed a sinistra (trim), non te lo comprerà nessuno, fin qui
chiaro. Però già da ora ci sono annnunci di aziende software che danno
la priorità a programmatori che abbiano già pubblicato loro plugin o
altri script utili, un modo intelligente per valutare le candidature.
Prova a vedere le ricerche di esperti jquery.
Se inserisci nel canale opensource un codice per la contabilità di
azienda verrà usato a volontà, ma quando qualcuno avrà bisogno di
ulteriore sviluppo, personalizzazione, installazioni particolari,
formazione e non ricordo quant'altro, allora verranno da te e ti
pagheranno. Prova a vede Oratio e sql-ledger per questo.
Dall'altra parte hai lo sviluppo di un closedsource che non conoscerà
mai nessuno a meno che sborsi una barca di soldi per la pubblicità.
Certo che se hai la fortuna di ricevere una commessa ben pagata prima
dello sviluppo, allora il problema non si pone.
Insomma conosci Arduino, chi lo ha ideato è ora famoso in tutto il
mondo, non solo in Italia, ed è corteggiato da parecchie aziende,
industrie, compagnie, ecc.. Non ne è valsa la pena?
A proposito, io ho fatto il volontario informatico per due anni in un
paese in via di sviluppo, sia ben chiaro, ho già dato....

reptisco ha scritto:

E di scrivere software per il piacere di farlo, ne hai sentito parlare?

 paese in via di sviluppo, sia ben chiaro, ho gi� dato....
Beh si, sono motivazioni non male ed inizio a capire qualcosa di piu sul 
open-source. Rimango scettico per una cosa, anzi forse timoroso:
se inizio lo sviluppo di un buon progetto open-source (software o 
hardware come arduino), secondo me converrebbe pubblicarlo sotto licenza 
open-source solo ad uno stadio d'evoluzione abbastanza avanzato, mi 
sbaglio ? Dico questo perch� se il progetto fosse buono, un qualsiasi 
progettista/programmatore potrebbe impossessarsi dell'idea, iniziare un 
suo sviluppo (magari con un numero di programmatori maggiore del mio) e 
superarmi nello sviluppo spacciando il tutto come sua iniziativa.
Alla fine penso che sia questo il punto che preoccupa chi sviluppa, cio� 
il fatto che qualcuno si possa impossessare del tuo software, magari 
venderlo sotto licenza proprietaria e farci soldi a tue spese

Roberto Montaruli ha scritto:

Lo sto facendo da anni, ma non � questo l'argomento del topic

 venderlo sotto licenza proprietaria e farci soldi a tue spese
Dipende dalla licenza open-source che scegli.
Alcune non pongono nessun vincolo e consentono di fare quello che dici 
tu (BSD, se non sbaglio), altre (GPL) richiedono che i derivati vengano 
rilasciati con la stessa licenza quindi tu avrai accesso alle modifiche 
fatte da questo tuo ipotetico concorrente e potrai integrarle con il tuo 
lavoro (a patto di redistribuire poi il risultato).
D'altro canto dimostrare che qualcuno si � impossessato del tuo codice � 
l'ha usato per realizzare un'applicazione closed-source non � cos� semplice.


Valter Minute ha scritto:

Appunto, � questo il problema che volevo sollevare.
A mio parere, se non viene scelto l'open-source (tipo licenza GPL) per 
il proprio software � dovuto anche al fatto che si ha paura che il 
nostro lavoro "gratuito" venga usato da qualcun'altro che facendo poco o 
niente, faccia soldi a nostre spese.

 niente, faccia soldi a nostre spese.
Non sono un avvocato, ma credo che la GPL serva proprio ad evitare 
quanto dici, obbligando chi modifica il tuo codice a rilasciare poi il 
risultato di nuovo sotto GPL (e quindi, in pratica, a "restituirtelo").
Quanto poi questo modello funzioni per uno sviluppatore singolo non 
saprei dirtelo.


 
Come funziona lo so, ma se prendo un codice open source fatto da Tizio 
(per es. in java) e mi rimetto a scriverlo in C# e lo vendo come 
closed-source, Tizio come far� a scoprirmi ?
Questo � il nocciolo, cmq so che nn c'� una risposta!

 Questo è il nocciolo, cmq so che nn c'è una risposta!
Secondo me la risposta la puoi trovare nella complessità del progetto,
ripeto se si tratta di cosucce semplici le puoi copiare, modificare ed
addirittura rivendere senza che nessuno se ne accorga, ma qui siamo
nel campo dei progettini da bambini dell'asilo.
Hai mai provato ad analizzare un codice corposo fatto da altri? Ebbene
ti costa meno rifarlo che analizzarlo e modificarlo.

 Questo � il nocciolo, cmq so che nn c'� una risposta!
In quel caso il problema non � il codice, ma gli algoritmi che hai 
trovato per risolvere un problema, visto che il codice � al 100% diverso.
Esiste la possibilit� di brevettare gli algoritmi, anche se pu� portare 
a cose assurde (come il brevetto di algoritmi noti da decenni e/o 
talmente banali che nessuno aveva mai pensato di brevettarli) e, 
ovviamente, non � semplice dimostrare che la tua idea � stata "rubata".
Ma questo � vero in tantissime realt�, non solo nel software. L'idea di 
un circuito, di una componente meccanica, di una formula chimica possono 
essere prese e rivendute, magari con qualche leggero ritocco.
