Sincronizza Indice |
Scarica il progetto |
Testo dell'articolo |
Stampa l'articolo |
Open Source non è solo la libera condivisione del codice sorgente (licenza GPL o simili), è soprattutto una filosofia, dai risultati entusiasmanti. Open Source è un modo di condividere le conoscenze, tutti mettono
le proprie capacità e conoscenze a disposizione degli altri; se
il progetto è interessante, il numero molto alto delle persone
che programmano e debuggano consente di sviluppare progetti notevoli e
con crescita esplosiva.
Si consiglia vivamente la lettura di http://www.agonet.it/mac/opensource/cattedrale.html
e degli Halloween I-II-III (il tutto è disponibile in Italiano). Vediamo un semplice esempio? La filosofia Open Source fa' diventare degli enormi pregi quei difetti che erano tali, solo per l'incapacità di vedere oltre il proprio naso: il rifiuto della concorrenza, tipico dei progetti Closed Source. Per iniziare, vi racconto di una mia esperienza involontaria e solitaria
di Open Source, premetto che le mie basi di programmatore sono very Closed
Source. Tempo fa ho iniziato un progetto (FlexAgenda) in Visual Basic,
in perfetto stile Closed Source (con obiettivo il codice), scrivendo codice
solo per me stesso, tenendone a mente tutta la struttura. Poi ho iniziato a non lavorarci per settimane, riprendere il lavoro per
qualche giorno, poi di nuovo pausa per settimane e via di seguito per
numerosi cicli. Insomma i cicli di pause-modifiche (cicli open sourcizzanti) mi
hanno catapultato nell'Open Source, nello scrivere il codice per altri
(non c'è differenza nello scrivere per altri rispetto allo scrivere
per se stessi a distanza di tempo), avendo come obiettivo la struttura
dei dati. Risultato dei cicli open: qualità prodotto 7, qualità codice 7, robustezza 8 (un solo grosso bug in mesi di utilizzo e per giunta previsto, nonostante che la gestione degli errori fosse a dir poco grezza), impegno richiesto 7 (a tratti mi sono persino divertito!!). Dopo questa esperienza sono giunto a queste conclusioni: È falso che la leggibilità sia data dallo stile di scrittura.
Qualsiasi progetto (o modifica) nasce in modalità Closed Source, ma può essere gestito con successo solo in modalità Open Source (in Closed Source il progetto diventa rapidamente ingestibile e palloso). L'Open Source è basato su Minima Massa Critica (MMC), Basso
Tempo di Risposta (BTP), Anarchia Costruttiva (AC). MINIMA MASSA CRITICA È il primo pilastro dell'Open Source, ed è anche il nucleo di alcuni newsgroup, in primis it.comp.lang.visual-basic. Vediamo di spiegazzarci :) C'è innanzitutto la spinta a primeggiare, lo spirito di gruppo,
l'emulazione, e altre cosette simili. Questo fa sì che se c'è
uno che risponde a decine di post, ecco che anch'io sono spinto a rispondere
a più persone, se c'è uno che risponde con precisione e
bravura, ecco che anch'io sono spinto a dare risposte migliori, se c'è
uno che risponde anche agli inesperti, ecco che anch'io sono spinto a
rispondere agli inesperti, ecc. Ecco cos'è la Minima Massa Critica. Quando viene raggiunta
succede che io spingo te, tu spingi un altro, un altro spinge un altro
ancora ..... e qualcun altro spinge me. Ma perché si inneschi questo è necessario un numero minimo di persone, che varia in base all'interesse che ha il progetto e alla velocità della comunicazione, altrimenti la reazione si spegne. BASSO TEMPO DI PUBBLICAZIONE Come si ottiene un alta velocità di comunicazione? Forse vi sto confondendo le idee, quindi parlerò ancora di un
caso reale: del NG. Come funziona la cosa? Se io adesso ho cinque minuti liberi, mi sento spinto a rispondere ai
vari post, perché sò che la mia risposta arriverà
in tempo utile (Basso Tempo di Pubblicazione). Beh se si ha un alto numero di persone, per un semplice motivo statistico,
nell'arco di 24h ci sarà sempre qualcuno che ha cinque minuti liberi
e che si sente stimolato a rispondere. ANARCHIA COSTRUTTIVA Un vantaggio notevole dell'anarchia è che gli impegni (coordinamento, distribuzione, pubblicazione, ecc.) vengono suddivisi tra più persone. Alta velocità e basso sforzo. Esempio di Open Source:
Io, Dbg, carico e registro il progetto FlexAgenda (ehehehe). Borrelli nota che da un po' di tempo Dbg non segue il progetto, lo
gestisce male, fa' casino, e visto che Dbg fa finta di niente, decide
di gestire lui il progetto. Fibia guarda tutti due i progetti, nota che sono complicati, astrusi,
indigeribili, e decide di gestire un nuovo progetto, FlexAgenda per tutti
(ehehehe). In maniera facile, indolore, rapida, si creano progetti in grado di interessare
i vari tipi di interessi, attitudini, capacità, delle persone. I progetti Borrelli_FlexAgenda, Simple_FlexAgenda stanno
crescendo, e il progetto FlexAgenda è un po' fermo a causa
della notoria incostanza del suo gestore, ma ecco che in due mesi infuocati,
prendendo spunto dai due progetti, il progetto viene rianimato dal suo
gestore e dai partecipanti, accresciuto, recupera e sorpassa i progetti. Ognuno fa quello che gli piace fare, dove gli piace fare, con chi gli
piace fare, quando gli piace farlo e il risultato di questo sono sempre
ottimi risultati. Questo scritto è composto da mie e altrui esperienze e idee. |
Giuseppe
Della Bianca
|
Torna all'indice degli articoli |