Business Open Source

Girando sul newgroup it.comp.os.linux.sys, mi sono imbattuto su una domanda posta da una persona che stava tentando di capire come si fa a guadagnare utilizzando software con licenza GNU/GPL. La difficoltà della persona in questione a capire l'ottica Open Source che in tanti hanno cercato di spiegargli, mi ha spinto a formulare una risposta il più possibile completa e precisa, dove illustro le differenze ideologiche che stanno alla base di questo diverso modello di business. Nella speranza che possa aiutare anche altre persone, lascio qui la mia risposta ai posteri.


Provo a partire da zero per tentare di chiarirti questo problema. Non è così facile come molti altri pensano, bisogna cambiare completamente punto di vista e modello di business.
Allora. Io scrivo l'applicazione pincopallino che fa esattamente quel che serve a te. La rilascio sotto la GPL e decido di metterla su Internet. Tu la scarichi, la provi, ti piace, pensi di modificarla e poi rivenderla. Giustamente vuoi farci i soldi necessari a mandare avanti la tua azienda. Vediamo come si fa:

Caso software proprietario:

Non hai i sorgenti, hai una licenza per un programma che paghi $tot, tu la prendi, la rivendi al tuo cliente tale e quale a $tot + 30%. Quel 30% * $tot * $numero_di_copie è il tuo guadagno, fine della storia.

Caso software GPL:

Hai il software con tanto di sorgenti che hai pagato 0 (in questo caso). Decidi di venderlo al cliente, il cliente lo paga $tot e può usarlo su tutte le macchine che vuole, farci quello che vuole, rivenderlo ad altri se gli sta bene, regalarlo ai parenti se è questo che vuole. È ovvio che $tot rispetto a 30% * $tot * $numero_di_copie è una buffonata, se si parla di numeri grandi di copie, e la cosa non funziona.

Allora come si fa? Devi cambiare modello di business: Prendi il software GPL, a pagamento o meno, lo proponi ai clienti. Un cliente ti dice "Bello, però lo voglio in italiano e che abbia questa funzione in più, cambiare questo e quello e voglio assistenza". Tu metti le mani sul codice, fai le modifiche che servono, il tutto rimane sempre sotto GPL (non sei costretto a metterlo su Internet). Vai dal cliente e glielo installi, gli dai il programma e puoi scegliere di dargli o meno i sorgenti nello stesso momento (anche se DEVI sempre dargli la possibilità di ottenerli senza costi aggiuntivi e lui deve sapere di avere questa possibilità). A questo punto arriva la questione della retribuzione:

Poi c'è la questione dell'assistenza, che quello può essere fatto annualmente: per un anno di assistenza su questo software (help desk, fornitura delle patch di aggiornamento, quel che riesci ad inventarti) ti fai pagare quel che ritieni giusto.
Eventualmente puoi farti pagare per tenere corsi per gli impiegati che dovranno usare il software o altri servizi del genere.

Questo è come si fanno i soldi sulla GPL.

Obiezioni:

Q: Chi impedisce loro di andare a prendersi il programma aggratis?
A: Nessuno. Sono liberi di farlo. Ma se si sono rivolti alla tua azienda è perché o non sono capaci, o non vogliono perderci tempo dietro, quindi si rivolgono a qualcuno che fa queste cose. Come nessuno impedisce di andare a cercarsi un software commerciale in offerta in chissà quale sito australiano: il risparmio non vale lo sforzo richiesto.

Q: Ma una volta che hanno preso il software da me modificato, possono benissimo decidere di non contattarmi più e tenersi il software funzionante, anzi anche nel caso in cui servisse installarlo su nuove macchine, possono farlo senza contattarmi.
A: Vero, tuttavia per le modifiche te le avranno già pagate e difficilmente un cliente fa questo tipo di mossa: se non si fanno più vivi, è perché non sono soddisfatti per il servizio che è stato fatto precedentemente. E comunque il software tende ad invecchiare, quindi si rifaranno vivi per aggiornamenti o eventuali nuove modifiche, o appunto se avranno bisogno di aiuto per installarlo su nuove macchine. Con il software commerciale, l'anno successivo viene rilasciata una nuova versione che bisogna ripagare per intero. Con il software libero, invece, devi pagare solo le modifiche necessarie a modernizzare il tutto. Fondamentalmente sono soluzioni simili, solo che mi pare più giusto il caso del software libero.

Q: Ma una volta che hanno ottenuto il software da me, potrebbero mettersi a rivenderlo ad un prezzo inferiore del mio e farmi concorrenza.
A: Vero. Però anche loro hanno le restrizioni della GPL, quindi gli stessi problemi tuoi. O non offrono assistenza, ma vendono solo il software già modificato, oppure devono mettere anche loro i programmatori al lavoro per modifiche & varie. Nel primo caso, un software senza assistenza non penso possa rubare molto mercato ad un software con assistenza che costa un attimo di più... Anzi, al massimo può crearti nuova clientela che necessita dell'assistenza che non hanno ottenuto dall'altra parte.
Nel secondo caso, invece, al massimo vi fate una concorrenza leale, visto che i programmatori costano a te quanto all'altro. E ad ogni modo, io dubito che anche uno solo dei tuoi potenziali clienti possa trovare il desiderio di mettersi a vendere soluzioni informatiche. Non si sarebbero rivolti a te in principio, se fossero in grado/interessati a questo tipo di mercato.

Un altro esempio:

Ti faccio un altro esempio così magari capisci meglio.

C'è questo mio software pincopallino che ho messo su Internet con la GPL. Mille mila utenti lo scaricano senza darmi un soldo, lo usano, si divertono, magari ci fanno business (e in qualche caso magari mi fanno una donazione, ma non ci posso certo fare i conti sopra) ed io non vedo un euro. Un bel giorno il dirigente di $Superazienda vede che il figlio sta usando un programma che potrebbe essergli parecchio utile in azienda. Gli chiede dove l'ha pigliato, questo vede il mio sito e decide di chiamarmi.

IO - "Pronto...?" (Pensando: "Chi capperi mi chiama alle 10 di mattina?? Io sto dormendo!!!!!!!")
DIR - "Salve sono $dirigente di $azienda. La chiamo perché ho visto il suo programma $pincopallino e avrei delle domande in proposito: potrebbe venire ad installarmelo su $tanti pc? È possibile modificarlo in $questa, $quella e $altra maniera? E poi se dovessero esserci problemi, che garanzie ho?"
IO - "Ah sì.. ecco... allora per l'installazione non ci sono problemi, la mia parcella è $tot per ora. Per le modifiche ne dobbiamo discutere in dettaglio, comunque è possibile, analizzando il problema le posso fare un preventivo. Per quanto riguarda le garanzie le dico: nessuna, però possiamo fare un contratto di assistenza annuale con il quale mi impegno ad installarle gli aggiornamenti, configurarle il programma secondo le sue necessità, risolverle problemi che le sorgono entro le 24h, ecc. ecc. ecc."
DIR - "Perfetto! Quando ci possiamo incontrare che ne discutiamo approfonditamente?"

Questo è un altro esempio, magari non mi capita l'azienda gigantesca, ma tante piccole aziende o privati che hanno bisogno di assistenza per installare il programma o farlo funzionare come vogliono e per quello mi faccio pagare. Ci saranno mille mila esperti in grado di farlo funzionare da soli, ma ci saranno molte più persone che hanno bisogno d'aiuto per farlo. E con la GPL si punta a farsi pagare questa assistenza, piuttosto che lo sviluppo del software in sé.

Spero davvero che ora ti sia più chiaro il funzionamento del modello Open Source, non è facile entrare nell'ottica, ma una volta fatto questo, si aprono orizzonti nuovi e si possono fare anche tanti soldi.
Come la Red Hat.