Open source coordinato

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.

I contributi che arrivano dalla comunità fanno fare al singolo un salto di qualità che da solo non gli riuscirebbe, ok. Ma, senza una testa che dà una direzione al progetto, vengono fuori problemi di documentazione disomogena o parzialmente assente, stili e intenti diversi nel realizzare differenti parti di un progetto, assenza di fiducia nella bontà di un progetto dove il “controllore” o “garante” è una figura quasi indefinita, e penso anche altri problemi. Non tutti i progetti open source hanno una storia felice, molti vengono abbandonati o soffrono dei problemi che ho accennato prima, per questo serve un coordinatore (che auspicabilmente, se è saggio, ascolta volentieri e abbondantemente tutto quello che arriva dalla comunità).

Mi sono espresso male ho corretto:

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.

E aggiungo… magari il partito pirata potrebbe dedicarsi ad un portale del genere e attirare nuovi utenti.