Come far sí che il metodo open source dia il meglio di sé? Iniziare un progetto e pubblicarlo su GitHub con licenza di libera condivisione e modifica, è un modo per rimanere aperti e può funzionare accettabilmente per piccoli progetti, ma diventa ingenuo e caotico per progetti medi o complessi.
####Coordinatore####
È necessaria una persona o un’associazioe che coordina il progetto open source, dunque un coordinatore. Il coordinatore, a seconda del caso, decide quali figure sono necessarie. Per esempio: persone esperte che leggono un libro libero e danno il loro consenso autorevole sulla qualità dell’opera (controllori); oppure programmatori scelti tra vari volontari o programmatori che hanno l’incarico di controllare, dunque accettare o declinare, il codice proveniente dalla comunità; persone incaricate di mantenere una documentazione chiara, completa e coerente; ecc. ecc.
Se qualcuno non è contento dell’operato di un coordinatore, per esempio, non piace il modo in cui viene portato avanti Ubuntu o il modo in cui hanno realizzato un wikibook, allora si diventa coordinatori di nuovo progetto e si offre una motivata alternativa.
####Obiettivi e principi####
Il coordinatore deve esprimere quanto meglio e piú dettagliatamente possibile i suoi intenti nell’opera che sta coordinando. Per esempio, pubblicando un documento di introduzione dove si chiariscono gli obiettivi (risultati da raggiungere e prospettive future) e i principi (l’etica che si sta seguendo, quali valori si considerano prioritari ad altri, ecc.).
Nei progetti piú seri e complessi queste attenzioni ci sono, ma ci tenevo a metterle per esplicito perché voglio diffondere consapevolezza e realizzare io stesso qualche progetto open source. Faccio presente che c’è forte analogia tra queste considerazioni e il metodo che consigliavo per rendere le discussioni produttive.
####Moduli e interfacce####
Quando un progetto diventa complesso, anche al di là della programmazione, bisogna suddividerlo in compiti semplici e circoscritti che possiamo chiamare astrattamente “moduli”. Questi moduli devono poi comunicare tra loro, collegarsi sensatamente tutti insieme e quindi bisogna definire l’interfaccia (altro concetto astratto) di ciascun modulo. Questo approccio può non servire per piccoli progetti, ma è necessario per gestire la complessità nei grandi progetti e soprattutto quando molte persone diverse ci devono lavorare.
####Comunità open source####
L’aspetto piú bello, anche sociale, di tutti i progetti open source, è che essendo aperti, pur nella divergenza di intenti, si desidera condividere tutto tra tutti. Sarebbe dunque auspicabile un portale di riferimento dedicato a tutte le produzioni open source e alle persone (con profilo reale o avatar) che fanno gruppo, dialogano tra loro, e sostengono questa nuova economia fortemente cooperativa.