venerdì 22 gennaio 2010

Code Kata

Dopo averne sentito parlare in diverse occasioni, ho deciso che volevo saperne un po' di più su CodeKata.
CodeKata è un termine coniato da Dave Thomas, co-autore di The Pragmatic Programmer, prendendo spunto dal concetto giapponese di kata nelle arti marziali. Per farla breve, quello che Dave Thomas propone è l'introduzione di sessioni ripetute di pratica di programmazione volte a migliorare il proprio stile e la propria "esecuzione", così come farebbe un'atleta, un praticante di arti marziali (tramite la continua ripetizione dei kata) o un musicista.
In pratica, si dovrebbe individuare un particolare problema (di programmazione, ma anche di analisi o design) e cominciare a rifletterci sopra tentando più soluzioni e più approcci senza il timore di sbagliare. E' proprio la possibilità di sbagliare che dovrebbe portare alla riflessione sulle proprie competenze e sulle proprie capacità e aiutare a trovare nuove e migliori strade per la risoluzione dei problemi. Ed è anche il motivo per cui queste sessioni di pratica devono essere tenute in una sorta di "sandbox" isolato da qualsiasi ambiente di produzione (a nessun responsabile di progetto piace che si facciano esperimenti sulle cose per cui lui rischia la faccia... per non citare altre parti anatomiche ;-) ).
CodeKata mi è sembrato molto interessante, soprattutto dal momento che normalmente, lavorando come programmatore o studiando informatica, si è portati a pensare di aver assimilato tutta una serie di competenze e capacità derivanti dalla normale attività lavorativa o dallo studio, salvo poi fare la figura del pivello davanti a problemi un po' diversi dal solito o sui quali non abbiamo mai avuto voglia di soffermarci.
Sul suo sito, Dave Thomas propone una serie di kata di vario tipo da svolgere. In questi giorni ho intenzione di cimentarmi e di riportare su questo blog i risultati dei mie sforzi :-)

Nessun commento:

Posta un commento