La cattedrale, il bazaar e il kibbutz
- 14 dicembre 2005 - 21:51
- Programmazione

Come sviluppare del (buon) software?
E’ una domanda alla quale l’ingegneria del software cerca di dare risposta da molto tempo, proponendo diversi cicli di vita del software.
Riflettiamo sulle metafore di cattedrale, bazaar e kibbutz.
Eric Raymond nell’oramai famoso saggio “La cattedrale e il bazaar” ha descritto il modello di sviluppo del software open source, nel quale il codice sorgente è disponibile e modificabile da tutti.
Perché bazaar?
Rimasi non poco sorpreso dallo stile di sviluppo proprio di Linus Torvalds diffondere le release presto e spesso, delegare ad altri tutto il possibile, essere aperti fino alla promiscuità. Nessuna cattedrale da costruire in silenzio e reverenza.
Piuttosto, la comunità Linux assomigliava a un grande e confusionario bazaar, pullulante di progetti e approcci tra loro diversi.
Le differenze principali di questo approccio, rispetto a quello “a cattedrale” utilizzato nel software proprietario sviluppato dalle aziende, sono proprio queste. Sebbene le risorse non siano ben definite, il planning venga fatto man mano e i co-sviluppatori non percepiscano uno stipendio, i vantaggi di questo approccio sono numerosi e sul lungo periodo destinato ad avere il sopravvento (in determinati contesti); la cosiddetta FOSS era.
Quali sono i vantaggi?
- Trattare gli utenti come co-sviluppatori è la strada migliore per ottenere rapidi miglioramenti del codice e debugging efficace.
- Distribuisci presto. Distribuisci spesso. E presta ascolto agli utenti.
- Se tratti i tuoi beta-tester come se fossero la tua risorsa più importante, essi risponderanno diventando la tua risorsa più importante; se ci sono abbastanza occhi, che cercano errori, gli errori diventano di poco conto
- La cosa migliore, dopo l’avere buone idee, è riconoscere quelle che arrivano dagli utenti. Qualche volta sono le migliori.
- molte teste funzionano inevitabilmente meglio di una sola.
Il resto lo trovate appunto nel saggio “La cattedrale e il Bazaar“.
Purtroppo però (e per fortuna, per altri motivi e in altri contesti che non approfondirò ora) questo approccio non sempre è adatto.
Il caso di Wikipedia ne è l’esempio.
i contenuti anonimi o pseudo-anonimi messi online sono alle volte un po’ problematici. Prendono posizioni, censurano punti di vista, scrivono cose non veritiere
In questo contesto l’anonimato diventa un problema importante, al quale bisogna far fronte. O con degli accorgimenti o con un cambio alla base, un nuovo approccio, il kibbutz.
Ma in realtà, rispetto anche ad altri modelli di sviluppo collaborativo come nel caso di Linux per quanto attiene alla tecnologia software, pare che invece manchi un modello di sviluppo basato su una autorità carismatica. Nel caso specifico, Linus Torvalds, ma non solo. E’ probabilmente comune a molte comunità non solo la coesione ma anche il riconoscimento di una autorità morale.
Mattia Monga, un ricercatore del dico dell’università statale di Milano, propone appunto la metafora del kibbutz, in relazione allo sviluppo del progetto Debian (pdf, 54kb – eng).
Riferimenti:
La cattedrale e il bazaar
Piccoli grandi problemi per l’enciclopedia libera
Froom Bazaar to Kibbutz (pdf, 54kb – eng)
Wikipedia – La cattedrale e il bazaar
