Vai al contenuto

HackTheBurgh

Pubblicato:

Beh, che dire,

Third time’s the charm.

someone who likes the number three, probably

Perche non provare a mettere questa teoria alla prova partecipando alla mia terza Hackathon? Certo, ammetto che la varietà nella scelta della location non sia la migliore, ma questo passa il convento. Mi ritrovo nuovamente a Edimburgo, subito dopo l’AdaHack per partecipare all’edizione di quest’anno di HackTheBurgh.
In questo caso il tutto era più organizzato, dandomi un vibe molto più ufficiale di quello casalingo dell’AdaHack.
Imparando dai miei errori della scorsa volta, ho provato a coinvolgere un gruppetto di persone che ho conosciuto in queste settimane. Purtroppo, chi per un motivo chi per un altro, alla fine mi ritrovo nuovamente alla ricerca di un team che spero di trovare all’evento stesso.

Viaggio

Essendo il mio secondo viaggio verso Edimburgo, stavolta ho avuto l’esperienza dalla mia parte; questo mi ha permesso di evitare di entrare in cantieri dove non dovrei mettere piede. Stavolta la mia destinazione era decisamente più distante dalla stazione, quindi ho considerato la possibilità di utilizzare dei mezzi per spostarmi. Alla fine però ho deciso di fare una passeggiata di quasi un’ora, percorrendo lo stesso tragitto dell’ultima volta, arrivando fino al Nucleus.

HackTheBurgh

Essendo arrivato alle 11:00, ho fatto appena in tempo a registrarmi e prendere il cartellino prima di correre nell’aula dove si stava svolgendo la presentazione dell’evento.

Presentazioni

Le presentazioni sono state la solita sfilata di sponsor intenti a presentare le loro aziende e la sfida che avrebbero proposto. In questo caso la maggior parte delle challenge erano piuttosto generiche, permettendo una certa libertà nella scelta dei progetti.

Team

Proprio durante questa fase mi sono reso conto di non avere ancora un team a meno di mezz’ora dall’inizio dell’hackathon. Quindi, con un po’ di panico, mi sono messo subito a cercare qualcuno con cui formare un gruppo partendo dagli annunci sul canale Discord.
Per mia fortuna ho ricevuto una risposta tempestiva da un gruppo di ragazzi a cui mancava proprio una persona per completare il team. Per pura coincidenza avevo scambiato un paio di parole con loro all’AdaHack, il che ha contribuito a rompere il ghiaccio immediatamente.

Il team. Da sinistra a destra: Aman Sharma, Hanson Siu, Dovydas Latkauskas, Hardik Choraria ed Ernesto Casablanca
Il team. Da sinistra a destra: Aman Sharma, Hanson Siu, Dovydas Latkauskas, Hardik Choraria ed Ernesto Casablanca

Il progetto

Per una volta mi sono trovato a non essere la mente dietro il progetto ma piuttosto a farmi guidare dagli altri membri del team, in quanto erano partiti con delle idee molto chiare. Forse fin troppo chiare, dato che mi pare di capire abbiano ricalato alcuni componenti da hackathon precedenti. Il piano era creare un sito web che permettesse agli agricoltori di segnalare i danni causati da malattie contratte dalle proprie coltivazioni tramite il semplice upload di una foto. Un algoritmo di machine learning avrebbe poi analizzato l’immagine e fornito una diagnosi, seguito da consigli su come affrontare il problema. Con i dati raccolti, si sarebbe potuto creare una mappa interattiva che mostrasse le zone più colpite da una certa malattia. Il mio compito si sarebbe ridotto a realizzare un ulteriore front-end che supportasse l’upload di una foto di vegetali con lo scopo di ricevere una ricetta che li utilizzasse.

Il progetto è stato realizzato in maniera piuttosto lineare. Sfruttando le conoscenze acquisite durante il mio tirocinio a CTMobi ormai un paio di anni fa, ho utilizzato la libreria react-admin per creare una rapida ma funzionale dashboard per l’utilizzo dei dati raccolti.
Oltre a poter visualizzare le ricette, l’utente avrebbe potuto usare un sistema di autenticazione per accedere alle proprie ricette, modificarle e cancellarle.

Le difficoltà

Alcune delle difficoltà che abbiamo incontrato sono state legate più alla realizzazione del backend e alla gestione dell’architettura che avrebbe dovuto supportare il progetto. Il framework scelto per la realizzazione del backend è stato ASP.NET Core.
Non avendo praticamente alcuna esperienza in merito, assistere con i numerosi problemini che si sono presentati è stato un po’ frustrante. In particolare, riuscire a supportare HTTPS è stata un impresa che ha impiegato molto più tempo di quanto avrebbe dovuto, anche utilizzando Let’s Encrypt per ottenere il certificato.
La parte triste è che, avendo deciso in ultimo di hostare tutto sul Tardis, la piattaforma cloud messa a disposizione dall’apposito team del dipartimento di informatica dell’Università di Edimburgo, non abbiamo avuto bisogno di HTTPS, in quanto il loro reverse proxy si occupava di tutto.

I successi

In compenso, sono davvero soddisfatto del risultato finale. L’architettura finale, con tanto di architettura e CI/CD pipelines per frontend e backend, era molto articolata e perfettamente funzionante.
Anche tutte le funzionalità che avevamo pianificato di implementare sono state completate, e il risultato finale era piuttosto pulito.

Conclusioni

Proprio per la complessità del progetto che siamo comunque riusciti a portare a termine, per una volta mi sono sentito davvero vicino a quello che sarebbe potuto essere un runner-up per qualche premio. Anche i giudici a cui abbiamo presentato il progetto sembravano piuttosto colpiti, e ci hanno fatto molte domande e complimenti. Alla fine, però, non abbiamo vinto in nessuna categoria, anche se abbiamo ricevuto una menzione esplicita.
Non posso certo definirmi deluso. Questo è stato decisamente il risultato migliore di sempre, anche se forse un po’ più serio e meno spensierato rispetto alle altre volte, dato che il team era davvero deciso a dare il massimo. Immagino ci voglia un po’ di entrambe le cose per trovare il giusto equilibrio.

Gadget

Anche questa volta Marshall Wace ha umiliato tutti gli altri sponsor con i loro gadget. Dopo il giobottino che ho già utilizzato tantissimo, ho ricevuto da loro anche una felpa niente male, un altra tazza termina, un mazzo di carte e l’immancabile busta di stoffa. Dagli altri sponsor ho recimolato un paio di sticker, due calze (per qualche motivo) un copri-zaino e un adattatore USB, oltre ad un paio di stickers.

I gadget ricevuti durante l'evento
I gadget ricevuti durante l'evento

Hicking a Arthur’s Seat

Dopo la premiazione, ho seguito Dovydas e, mio malgrado, mi sono trovato a fare una passeggiata che è culminata con un po’ di hicking fino ad Arthur’s Seat. La vista era davvero mozzafiato, ma la stanchezza, unita al percorso scivoloso e alle mie scarpe, per nulla adatte, mi hanno obbligato a desistere prima di raggiungere l’ambita cima.

Al cospetto dell'altura
Al cospetto dell'altura

Diario di viaggio