Resoconto AgileDay 2011

Sabato scorso ho partecipato al mio primo AgileDay ed in questo post volevo descrivere cosa ho provato e cosa ho imparato.


Premessa: mi sto avvicinando al movimento agile dopo aver letto questo libro sullo scrum e su kanban di Kniberg:

    http://www.infoq.com/minibooks/scrum-xp-from-the-trenches .

L'approccio agile è quello che più si avvicina alle reali esigenze di programmatori e software house nel risolvere le problematiche tipiche di questo settore (rilasci, gestione dei progetti e dei team e soprattutto della qualità del prodotto relazionata alla soddisfazione del cliente e altro).

Questa edizione si è svolta nella collaudata sede della facoltà di ingegnera dell''università Roma3, dove viene organizzato anche il CodeMotion.

Il keynote di apertura di Paolo Polce è stato interessante, ed ha proposto un concetto che ho ritrovato anche in altri talk della giornata: sviluppo agile significa prima di tutto, cioè prima di gestione del processo di sviluppo, implementazione di questo o quel framework agile, progettare e sviluppare utilizzando al meglio skills e tecnologie a disposizione: in particolare approfondire le nostre conoscenze per rendere il codice migliore, di conseguenza più agile. Quindi utilizzare la programmazione OO in modo corretto, STUDIARE (non fermarsi al tutorial!!) le librerie utilizzate per ampliare/ottimizzare le possibilità di utilizzo nel nostro progetto.
Forse come keynote di apertura dell'agileday avrei scelto un altro argomento: a quanto ho capito quest'anno c'è stato un sold out che negli altri anni non c'era mai stato, quindi suppongo ci fossero molte newentry come me alla ricerca di spunti da esperienze altrui per iniziare un percorso agile nelle proprie aziende.

C'erano tanti talk interessanti che si sovrapponevano ed ho scelto i seguenti:

Codice legacy: usciamo dal pantano (Leli e Cascioli): quì ho fatto finalmente la mia prima esperienza di refactoring in pair programming: dato un progetto java con l'aiuto di eclipse in 30 minuti abbiamo rimosso un paio di if implementando interfacce e implementazioni ed esternalizzato alcune dipendenze tra classi per renderli testabili. Interessante perchè la qualità del codice prodotto è la somma delle conoscenze dei due sviluppatori. da provare anche in qualche caso reale, anche perchè non conoscendo a fondo la struttura del progetto, alcuni refactoring vengono naturali e saltano subito all'occhio (mancando anche il lato "affettivo" del codice prodotto da noi stessi ;)) . Poi Leli e Cascioli ci hanno illustrato soluzioni di refactoring più avanzato, ma che implicava ovviamente più tempo ed una maggior conoscenza del codice.

Startup senza falldown (Andrea Maietta): avendo in corso un'idea di startup ero incuriosito dal titolo ed è stato molto utile. Il concetto presentato di rendere agile il Business Model Canvas l'avevo intuito visto le esigenze caratteristiche delle startup che per natura devono essere agili. Molto ben presentato da Andrea, una lamentela nell'utilizzo eccessivo di termini economici dandone per scontata la conoscenza. Mi ha incuriosito un libro che ha citato The back of the napkin . da leggere

Volevo solo scrivere codice (Alberto Brandolini): onestamente questo è stato l'unico talk un po' confuso, nel senso non ho ben capito che senso avesse nel contesto dell'agileday. Ha iniziato con un po' di slide nostalgiche (ammetto di essermi commosso alla visione del lettore di cassette del c64) per poi fare un ragionamento sulla differenza tra anzianità (passiva) ed esperienza. Mi è piaciuto molto come talk perchè rispecchia il mio modo di vivere la programmazione ed ha posto l'accento su alcuni aspetti di cui anch'io con l'avanzare dell'età sto notando. Diciamo un talk da crisi di programmatore di mezz'età ;)

La professione dello sviluppatore (Gabriele Lana): anche questo talk mi ha sorpreso ed è quello che ha generato più domande alla fine. Gabriele ha accennato al punto del manifesto agile in cui le persone vengono prima dei processi adottati, quindi alcuni processi agili NON possono essere tali se il team NON è composto da persone valide. Da questo concetto ha illustrato il meccanismo per cui gli sviluppatori vengono considerati la classe operaia del nostro tempo, ma ha anche distrutto ogni singolo punto di questo meccanismo con una soluzione semplice: etica del programmatore! Questa prevede pochi e semplici punti (non l'ho segnati, perchè per me erano scontati, ma appena pubblica le slide metto il riferimento) da seguire per interrompere il meccanismo. Alla fine ovviamente ne è scaturita una discussione su questa idea "socialista" tra gli scettici/razionali e gli etici/idealisti, con anche una proposta di associazione dei programmatori (quanto ne abbiamo bisogno!!!!). Non so se Gabriele aveva consigliato questo video oppure un altro talk, comunque lo trovo adatto al contesto Dan Pink sulla motivazione nel 21o secolo .
Nonostante ovviamente le discussioni tra estremi, quello che Gabriele voleva lasciare con il suo talk è la sensazione che questa rivoluzione dal basso può iniziare piano piano con piccoli accorgimenti. Aggiungo che può sembrare difficile nel contesto lavorativo applicare quello che dice Gabriele, ma per esperienza vi dico che dovete resistere alla tentazione di abbassarvi al "livello" dei vostri colleghi, che vedendo il vostro esempio presto o tardi alzeranno anche il loro e così via generando un circolo vizioso che non farà altro che migliorare l'ambiente lavorativo e di conseguenza la qualità del prodotto.

Kanban = Pillola Viola (Gaetano Mazzanti): alla fine ero indeciso se seguire anche quest'ultimo talk, ed invece si è rilevato quello che ha risposto alla mia domanda: "da dove iniziare?". Gaetano ha illustrato sia un po' di teoria sia qualche esempio pratico delle Kanban Board ed ha concluso proprio con le parole che volevo sentire: "Kanban può essere utilizzato come cavallo di troia per introdurre in seguito altre metodologie agili (Scrum) in azienda". Grazie.

Conclusioni: essendo mi pare l'8a edizione forse davano per scontato le basi, quando invece mi sarebbe piaciuto almeno un talk sulle basi di Scrum, XP, Lean, ma ovviamente il problema è mio che non riesco ad organizzarmi per approfondirli ;). Quello che invece assolutamente è mancato, come ha scritto anche Iderius86 su twitter: "Non capisco come mai ad eventi come agileday non trovo nessuno che parla di casi Agile in piccole-medie imprese con team di 3 risorse massimo", putroppo penso sia un problema di cultura delle piccole imprese: sono poche quelle agili, quindi i coach/programmatori agili lavorano solo con quelle medio/grandi e quest'ultimi sono anche i talkers dell'agileday ;)




Commenti