AntonioGanci

Il blog di Antonio Ganci
posts - 201, comments - 420, trackbacks - 31

Monday, November 21, 2011

La fabbrica delle giustificazioni

Recentemente ho letto un libro sulla dieta alimentare in cui c'è scritto che la mente umana è molto efficiente nel creare delle giustificazioni per non fare le cose che ci fanno bene.

Il meccanismo è descritto bene in questo post che spiega il problema del procrastinare.

Guardando il video Is Software Evolution really Effective? di Francesco Cirillo all'ultimo agile day, ci si rende conto che evoluzione e design emergente non hanno molto significato se non si conosce in quale direzione deve avvenire l'evoluzione o cosa deve emergere.

In particolare nello sviluppo software l'evoluzione deve portare ad un costo descrescente col passare del tempo nell'aggiungere feature al sistema. Se questo non avviene probabilmente nella nostra codebase stanno crescendo dei code monster (qui un esempio).

Che cosa porta alla creazione di un code monster?

Secondo me le cause possono essere solo due:

  • Mancanza di volontà
  • Mancanza di competenze

Nel primo caso rientrano: la pigrizia, la stanchezza, poca disciplina. Mentre nella seconda semplicemente non si è studiato abbastanza.

Un'obiezione che spesso sento è: non abbiamo abbastanza tempo. Ormai è appurato che il modo più produttivo per aggiungere una feature al nostro sistema è quello di non farsi sconti sulla qualità; quindi la mancanza di tempo è un motivo in più per non allevare code monster.

Sulla competenza suggerisco un semplice esercizio. Scrivete a memoria tutti gli smell che conoscete, poi prendete il libro del refactoring di Fowler e verificate se li avete elencati tutti correttamente, in caso contrario studiateli finché non li conoscete a memoria.

Un altro esercizio è: scrivete, sempre a memoria, quali caratteristiche ha un bad design e confrontateli con questo paper di zio bob.

Concludendo: entrambe le variabili per scrivere del buon codice sono completamente sotto il nostro controllo. Smettiamo di trovare scuse ed iniziamo a farlo ora senza procrastinare. I colleghi e i clienti ringrazieranno della vostra scelta.

posted @ Monday, November 21, 2011 9:13 PM | Feedback (8) |

Powered by:
Powered By Subtext Powered By ASP.NET