Il web development secondo Freego: intervista ad Alessandro Mencarini

facciaDa tempo volevo iniziare anche io a fare interviste. Vorrei iniziare con una persona che ogni volta che apre bocca mi costringe a fare una ricerca su Google. Si chiama Alessandro Mencarini, è nato il 25 giugno del 1982 (un giorno dopo di me) e ho avuto modo di lavorare con lui per un certo periodo della mia vita. Il nostro lavoro ci vedeva coinvolti su un particolare CMS scritto comunque in PHP. Oggi Alessandro ha voltato decisamente pagina e fa parte di Freego.

L’intervista

Alessando, cos’è Freegoweb? Una web agency o una software house?

freego è un collettivo di sviluppatori che hanno deciso di mettere in pratica il detto “l’unione fa la forza”. Lavorare insieme ci permette di avere lavori più importanti che da soli non riusciremmo a portare a termine, e di diversificare le nostre capacità senza per questo dover rinunciare a scelte tecniche coraggiose.

Puoi fare un esempio di una di queste scelte coraggiose?

Quella principale è il passaggio ormai full-time a Ruby on Rails. Abbiamo praticamente abbandondato php per passare a Rails, che ci permette di essere super-produttivi e soddisfatti del nostro lavoro. Più recentemente, abbiamo iniziato a muoverci nel mondo NoSQL; stiamo per lanciare il nuovo sito, costruito su un CMS che gira su MongoDB, e abbiamo iniziato a usare Redis per la gestione dei processi in background dei nostri siti.

Se ritenete di essere “super-produttivi e soddisfatti” del vostro lavoro, come mai parli di scelta coraggiosa? Vedevi dei rischi?

In Italia le novità non sono mai ben viste. Ruby per lo sviluppo web è ormai accettato e riconosciuto in tutti i paesi più sviluppati (e gli sviluppatori sono pagati profumatamente), mentre da noi qualsiasi scelta che differisca da php o dai prodotti Microsoft risulta in qualche modo esotica, come se non desse certezze. Il fatto che Twitter sia nato e cresciuto a dismisura su Rails da noi sembra non bastare a farlo accettare come la piattaforma stabile e valida che è.

Invece sembra che i vostri clienti abbiano accolto l’innovazione, o sbaglio?

Quando puoi proporre un prodotto alla metà del costo perché ci metti la metà del tempo a svilupparlo, difficilmente trovi troppe resistenze 🙂

Raccontami di GoodSeries allora, una delle vostre ultime creazioni. Come si è distribuito il tempo tra idea, implementazione e rilascio della beta?

GoodSeries è un sito per appassionati di serie TV. Aiuta a seguire e condividere le proprie serie preferite. È effettivamente nato quando ho visto che il dominio era libero! L’idea era da un po’ che mi frullava in testa ma non ho avuto lo spunto a crearla finché non l’ho registrato.

Il 19 dicembre ho acquistato il dominio, e il 15 gennaio l’abbiamo “annunciata” sui social network.

Ci sono stati parecchi giorni “rossi” nel periodo che indichi. Rails è così bello da farti lavorare nei giorni di festa o Rails è così potente che ti permette di stappare lo spumante insieme agli altri comuni mortali quando è ora?

Rails è, cito dal sito ufficiale, “ottimizzato per la felicità del programmatore e una produttività sostenibile”. Lavorare con Rails e le tecnologie a esso legate (come la suite di test Cucumber) è davvero un piacere. In più la rapidità di esecuzione è tale che i giorni festivi li ho passati in panciolle.

Ruby On Rails, MongoDB, Cucumber… c’è altro?

Come altre cose particolari abbiamo in produzione siti che fanno uso di CoffeeScript e Backbone.js per la parte client-side, e Redis server-side. Stiamo sperimentando Node.js per applicazioni che sfruttano i websocket per applicazioni real-time e stiamo ragionando un passaggio a Postgre per i siti che necessitano di database relazionali. In più monitoriamo la situazione di Scala e JRuby per avere un’interfaccia a noi più consona per programmare in Java.

Quali sensazioni evoca in te l’acronimo LAMP?

Al momento, cari ricordi, visto che è come ho iniziato ad approcciare la programmazione, e niente più. Spero continui ad essere così.

Secondo te, data la possibilità di studiare a tempo pieno le tecnologie da te elencate, quanto tempo è necessario per poter essere operativi a chi proviene da LAMP?

Dipende dal tipo di risultati che si vogliono ottenere. Rails mi ha conquistato con il suo tutorial più famoso, cioè la creazione, da zero, di un prototipo di blog in 15 minuti. In una conferenza un ex-javista passato a Ruby spiegò molto bene la sensazione di apprendimento di Rails, e cioè un apprendimento “a cipolla”: già dal primo strato puoi essere pienamente operativo, e quando te la senti puoi approfondire maggiormente framework e linguaggio, andando di strato in strato.

Quello speaker raccontò di un progetto in Java che stava andando per le lunghe, e decisero di cambiare tecnologia. Scelsero Rails, e il suo team fu completamente operativo in meno di 3 settimane. Tra parentesi consegnarono il progetto in anticipo pur avendo cambiato tecnologia a metà strada e non avendo alcuna conoscenza di Ruby né di Rails.

Penso che in un mesetto qualsiasi buon programmatore web può acquisire tutti gli strumenti che gli servono per portare a termine i suoi primi progetti.

Quello che mi dici è pazzesco. Personalmente ricordo anche io di aver visto quel tutorial ma rimasi scoraggiato perché non volevo avventurarmi da solo in un terreno sconosciuto e all’epoca nessuno cercava programmatori Rails. Hai detto che Freego è un collettivo di collaboratori: che importanza ha avuto per te la possibilità di portare avanti questa esperienza condividendo il tutto con altri esseri umani?

È stato fondamentale. Ognuno di noi ha giorni sì e giorni no, ed è importante riuscire a “tappare” i giorni no con qualcuno che ad esempio riesce a risolvere un problema del quale non trovi la chiave di lettura.

Come siete organizzati a livello di tecniche di sviluppo software?

Usiamo nei limiti del possibile un approccio agile. Sviluppiamo storie d’uso e lavoriamo in Test Driven Development. Per le parti più importanti di un’applicazione lavoriamo in pair-programming, mentre per quelle più accessorie sviluppiamo da soli per poi fare sanity check del codice prodotto.

Si può dire che Freego punta a portare la pace e la serenità tra sviluppatori e sviluppatori e tra sviluppatori e clienti? 🙂

Tra sviluppatori e clienti no, non ci siamo prefissi ancora obiettivi utopici 🙂 Tentiamo però di coinvolgere più possibile il cliente sin dall’inizio: se ci viene chiesto un “prodotto finito da mostrare” siamo titubanti ad accettare il lavoro, in quanto sappiamo che un’applicazione è sempre un costante work in progress e preferiamo che ci venga detto che una cosa non va bene il prima possibile, non a giochi fatti.

Tra sviluppatori, effettivamente, riusciamo a stare bene insieme 🙂

Alessandro, grazie per il tempo che hai dedicato a questa intervista. Hai un ultimo messaggio da allegare ai tuoi saluti?

Ringrazio te per la pazienza e chiudo dicendo che quello di sviluppatore è un lavoro estremamente dinamico e stimolante e mi ritengo molto fortunato di essermi imbattuto in questa professione. Mi auguro che il 2013 porti maggiore coesione, particolarmente in Italia, tra tutti gli sviluppatori che troppo spesso si perdono in futili dispute territoriali, e che facendo sistema diventerebbero una forza inarrestabile.




2 thoughts on “Il web development secondo Freego: intervista ad Alessandro Mencarini”

Lascia un commento

Il tuo indirizzo email non sarà pubblicato. I campi obbligatori sono contrassegnati *

Utilizzando il sito, accetti l'utilizzo dei cookie da parte nostra. maggiori informazioni

Questo sito utilizza i cookie per fonire la migliore esperienza di navigazione possibile. Continuando a utilizzare questo sito senza modificare le impostazioni dei cookie o clicchi su "Accetta" permetti al loro utilizzo.

Chiudi