Recentemente ho partecipato a una conferenza tenuta da Greg Wilson (Chief Scientist of Software Carpentry). Dall'astratto:
The idea that claims about software development practices should be based on evidence is still foreign to software developers, but this is finally starting to change: any academic who claims that a particular tool or practice makes software development faster, cheaper, or more reliable is now expected to back up that claim with some sort of empirical study.
Nel complesso, la conferenza è stata molto istruttiva e mi ha lasciato pensare profondamente al mio approccio allo sviluppo. In particolare, ora mi trovo in cerca di citazioni per eseguire il backup di molte affermazioni. Precedentemente, mi ero abituato a ripetere semplicemente le verità offerte, forse con una nota mentale per controllarlo più tardi.
Senza mezzi termini, ero credulone .
Ecco un esempio tratto dalla lezione:
"If more than 25% of the code needs refactoring, it's quicker to rewrite it".
Sembra plausibile, ma è vero? Dov'è lo studio a sostegno di questo? È vero per tutte le lingue? E così via.
OK, è del tutto possibile portarlo all'estremo e non credere a nessuno da nessuno, a meno che tu non lo abbia tratto da te primi principi. In questo modo giace la follia (o forse la matematica ;-)). Ma, se qualcuno si avvicina a te con una dichiarazione lungo il linee di "Ehi, facendo questo in [scegli il linguaggio del momento] saremo in grado di aumentare la produttività di [scegli multipli del 10]%" sei propenso ad accettarlo o chiederai prove provate?
Se è il secondo (e spero lo sia) allora
- dove andresti a trovare questa prova?
- quanto sei severo?
In breve, se qualcuno ti offre una dichiarazione non verificata, risponderai con "citazione necessaria"?