Pair programming: scelgo te!
Era da diverso tempo che non lavoravo con Ema su un progetto in pair, forse dai primi anni di CodicePlastico. Con il passare del tempo e con la crescita del team ci siamo “fisiologicamente” divisi i progetti in modo da poter coordinare al meglio tutte le attività. Negli ultimi anni però, la strategia organizzativa di CodicePlastico è cambiata e l’obiettivo è stato (ed è) quello di creare un team fluido, che non dipenda da qualcuno in particolare. Questo ha permesso a me ed Ema di poter lavorare nuovamente insieme su un progetto.
E cosi, tra una sessione di pair (rigorosamente remota, visti i tempi) e l’altra, ci siamo accorti, per l’ennesima volta, del valore del “lavorare in coppia”.
Credo che sia l’unico caso in cui “incrociare i flussi” (cit.) sia una cosa positiva. E il grande valore, non era solo nel codice prodotto, ma in tutto ciò che ci stava attorno, ovvero le discussioni che portavano alla scrittura di un test, all’implementazione di una feature o alla decisione sulla necessità di un particolare refactoring.
Da grande potevo fare l’influencer, invece ho scelto di fare il programmatore
Allora è nata un’idea: in questo periodo di reclusione forzata, in cui spopolano video di “gente che fa cose” perchè non fare un live in cui, risolvendo un semplice kata, cerchiamo di mostrare questo “flow”?
E cosi, dopo una prova con zoom, una con meet, croppa di qua, condividi lo schermo di là, grazie al supporto di Paolo (grazie mille! ottimo regista) e Mariachiara…ecco il nostro primo live
È andata come volevamo: non avevamo preparato nulla, volevamo fosse il piu’ naturale possibile, senza una roadmap implementativa o una possibile soluzione preconfezionata. Avevamo solo deciso quale kata, il social network kata, e con quale linguaggio lo avremmo risolto. E in questo caso eravamo concordi sul farlo in Elixir, un linguaggio che piace molto ad entrambi e su cui stiamo investendo e con cui stiamo lavorando molto in CodicePlastico.
No Panic! No Panic!
E cosi ci sono stati attimi di “terrore” in cui, a seguito di un refactoring, i test sono diventati tutti rossi. E successivamente la soddisfazione di vedere i test tornare verdi. Scelte di design riviste al passo successivo. Insomma tutti gli ingredienti di uno sviluppo iterativo, fatto in coppia.
A parte i primi 30 secondi per rompere il ghiaccio, poi è stata una sessione di pair, come al solito. Con l’unica differenza che c’erano 80 occhi a guardarci.
Una bella esperienza, un modo diverso di metterci alla prova, mostrando serenamente come il lavoro del programmatore è fatto anche di errori, workaround e test rossi, ma con l’ausilio di “due teste” è molto più facile (e divertente) produrre codice di qualità.
Che dire… il kata non è ancora finito. Ci vediamo alla prossima puntata!