Scrivere il codice sorgente è divertente.
Scrivere documentazione e commentare il codice è meno divertente.
Quando uno sviluppatore lavora in una società che applica buoni commenti e documentazione, non c'è scelta: o questo sviluppatore scrive quelli o è a rischio di licenziamento.
Quando uno sviluppatore contribuisce a un progetto open source, lo fa gratuitamente e soprattutto per divertimento. Non c'è nessuno che costringa questo sviluppatore a fare cose che non è disposto a fare, come scrivere documentazione e commenti.
Ecco perché molti progetti open source mancano di un'ampia documentazione e commenti.
In che modo le persone possono ancora contribuire a progetti open source senza documentazione o commenti?
-
Se il codice sorgente è di alta qualità, i commenti non sono necessari troppo. I commenti delle interfacce pubbliche e della documentazione sono particolarmente utili per i consumatori del progetto, cioè gli sviluppatori che semplicemente usano le librerie, non contribuiscono a loro.
-
Non sono coinvolti fattori di produttività. Sto lavorando in un'azienda in cui il codice effettivo non ha test unitari, documentazione e commenti. Trascorro molto tempo a capire cosa stia facendo un metodo 600-LOC oa codificare cose già fatte, ma non rilevabili a causa della mancanza di documentazione, quindi la maggior parte delle volte, sto semplicemente sprecando i soldi della compagnia invece di fare qualcosa prezioso.
D'altra parte, per un progetto open source, non importa se uno dei contributori ha perso una settimana a causa della mancanza di documentazione o di commenti appropriati. La cosa peggiore che può succedere è che questo contributore lascerà il progetto.
Scoprire il codice senza commenti o documentazione può anche essere impegnativo, cioè attirare alcuni contributori, invece di scoraggiarli.
-
Nei progetti aziendali, non è insolito che uno sviluppatore sia costretto a lavorare su ogni aspetto di un prodotto e, pochi anni dopo, debba conoscere quasi l'intero sistema. In un progetto open source, nessuno ti obbliga a conoscere l'intera faccenda. Puoi semplicemente contribuire a una piccola parte di esso e avere un'ottima conoscenza di questa parte, senza bisogno di documentazione.