Retrospective
Il progetto Papyrus ha rappresentato per il team un’occasione stimolante e ben strutturata per affrontare in modo approfondito la progettazione e lo sviluppo di una libreria basata su un DSL. L’adozione della metodologia SCRUM fin dalle prime fasi si è rivelata una scelta efficace, che ha consentito di pianificare e gestire il carico di lavoro attraverso sprint settimanali ben distribuiti e realistici.
Durante le prime settimane, il team ha dovuto affrontare le sfide tipiche della fase di analisi e ideazione, in particolare per ciò che riguarda la modellazione funzionale e immutabile in Scala. Una volta consolidato il disegno dell’architettura e la struttura del DSL, lo sviluppo ha seguito un ritmo costante ed efficace, grazie anche a una collaborazione flessibile che ha alternato momenti in presenza (presso l’università) a sessioni da remoto e contributi autonomi ben coordinati tramite Teams e WhatsApp. Ogni macrotask è stato gestito su un branch dedicato per favorire l’organizzazione del lavoro.
Non sono emersi colli di bottiglia rilevanti né criticità nella divisione dei compiti. Il progetto è progredito regolarmente e ha raggiunto tutti gli obiettivi previsti.
Luca Cantagallo
Dal punto di vista personale, l’intero percorso con Papyrus è stato bello e gratificante. All’inizio forse avevamo sottovalutato la mole di decisioni e aspetti tecnici da affrontare, ma già dopo il primo sprint abbiamo capito che il progetto richiedeva attenzione su moltissimi fronti, anche più di quanto immaginassimo.
La metodologia SCRUM mi è piaciuta molto, soprattutto per la possibilità di estendere il progetto in modo incrementale senza mai perdere di vista l’obiettivo. Abbiamo definito sprint settimanali da cinque giorni pieni, lasciando il weekend come margine eventuale, che però non si è mai reso necessario. I task sono stati pianificati con cura e sempre portati a termine nei tempi previsti. Questo ci ha permesso di arrivare esattamente dove volevamo, forse anche qualcosa in più.
Come Scrum Master, all’inizio ho sentito un po’ di pressione: avevo amici in altri gruppi che, a causa di una cattiva organizzazione, hanno faticato a consegnare il progetto in tempo. Temevo di trovarmi nella stessa situazione, ma sono riuscito a prendere il ritmo piuttosto velocemente. Già avevo una certa passione per l’aspetto organizzativo, e questo mi ha aiutato a strutturare bene il lavoro.
I task venivano assegnati all’inizio di ogni sprint e raramente subivano variazioni. Ogni giorno aprivamo Microsoft Teams per monitorare i compiti e portare avanti il lavoro con costanza. Se uno dei due si trovava in ritardo, lo comunicava senza esitazioni, permettendo all’altro di intervenire per riequilibrare il carico. Anche grazie a questo approccio trasparente e collaborativo siamo riusciti a non accumulare ritardi, mantenendo il ritmo previsto in ogni sprint.
La collaborazione con Daniel è stata naturale, già avevamo lavorato insieme e anche stavolta è stato un piacere: puntuale, affidabile e con piena sintonia nei momenti decisivi.
Mi porto dietro un’esperienza solida, sia tecnica sia organizzativa, che sicuramente userò di nuovo in progetti futuri.
Daniel Capannini
Nel corso del progetto Papyrus ho ricoperto il ruolo di developer, contribuendo in particolare allo sviluppo di alcune parti del DSL e alla realizzazione della struttura per la generazione degli elementi del documento. Tra le attività che ho trovato più stimolanti c’è sicuramente la costruzione delle tabelle, che ha richiesto attenzione sia dal punto di vista della formattazione che della flessibilità del modello. Parte di questa logica è stata anche realizzata in Prolog, un esperimento interessante che ha arricchito ulteriormente il progetto.
Mi ha appassionato molto anche l’utilizzo dei meccanismi avanzati di Scala, come given, using e le conversioni implicite, che abbiamo sfruttato per rendere il DSL elegante, estendibile e idiomatico. Lavorare su questi aspetti mi ha dato l’opportunità di consolidare le mie competenze nel paradigma funzionale e di affrontare sfide tecniche concrete.
La collaborazione con Luca è stata ottima: ben organizzata, produttiva e basata su una sinergia naturale. La divisione dei compiti è stata chiara fin da subito, e grazie all’uso della metodologia SCRUM, siamo riusciti a procedere in modo ordinato, senza doverci sentire continuamente. Ogni sprint è stato pianificato con attenzione, e la possibilità di lavorare in autonomia senza perdere il coordinamento è stata per me uno dei punti di forza principali di questo progetto.
Papyrus è stata un’esperienza significativa, che mi ha permesso di crescere dal punto di vista tecnico e di vivere una gestione del lavoro davvero efficace. Sicuramente porterò con me molte delle soluzioni e dei metodi che abbiamo adottato, anche in progetti futuri.