Attualità

Bologna Big Code Lab, dove ricerca e scuola scrivono il futuro del software

Nato in seno a un ecosistema da anni attento a dati e informatica, il Bologna Big Code Lab mira a rivoluzionare l’ingegneria del software applicando le logiche dei big data ai codici sorgente. Ne ha a disposizione miliardi, grazie alla copia del Software Heritage Unesco che ENEA ha ottenuto di ospitare nel Tecnopolo cittadino. Una grande biblioteca con miliardi di file open source a disposizione della ricerca, ma anche delle scuole. Sono gli studenti, infatti, i primi a cui spiegare l’importanza dei codici come bene dell’umanità, da proteggere e, prima ancora, da conoscere.

Pubblicato il 19 Mag 2022

Bologna Big Code Club

Non hanno perso tempo ENEA e Università di Bologna: appena ottenuti miliardi di codici sorgente hanno creato il Bologna Big Code Lab. L’obiettivo principale è svilupparne di nuovi, ottimizzando quanto già fatto attraverso metodi innovativi, automatici e sicuri. Altrettanto importante è però l’altra sfida lanciata dai promotori: valorizzare codici e software mostrandone l’importanza strategica per il futuro economico del Paese e professionale dei suoi giovani talenti.

Rivolta soprattutto a ricercatori e studenti, questa nuova iniziativa potrà ampliarsi ulteriormente negli anni, a seconda dell’interesse e degli investimenti che riuscirà a conquistare. A seconda di quanto e quando si comprenderanno le opportunità internazionali che offre in un Paese finora dimostratosi timido nel puntare su tecnologie, innovazione e materie STEM.

Da un backup Unesco si scrive il futuro dei software

In questo scenario ci sono fortunatamente isole felici come il Tecnopolo di Bologna, in grado di fare sistema per cogliere un’opportunità unica. Il laboratorio nasce infatti dall’accordo tra ENEA e la francese INRIA (Istituto nazionale per la ricerca nell’informatica e nell’automazione) per mettere a punto il primo ‘mirror’ istituzionale europeo del Software Heritage.

Questo archivio universale, realizzato sotto l’egida UNESCO, dal 2016 raccoglie, conserva e rende accessibile il codice sorgente di tutti i software pubblicamente disponibili al mondo. L’arrivo del “suo” mirror ha acceso l’interesse dell’Università di Bologna ed è nato il laboratorio con il sostegno di iFAB (International Foundation Big Data and Artificial Intelligence for Human Development).

Prima ancora che le sue attività entrino a regime, il Bologna Big Code Lab ha ottenuto già ottimi risultati. Ha potenziato un ecosistema territoriale già virtuoso e ha mostrato come, facendo rete, sia possibile attirare eccellenza e nuove opportunità. “Sia il mirror che il laboratorio sono frutto di un lavoro iniziato quando il Tecnopolo è diventato sede del Data Center del Centro Europeo per le Previsioni Meteorologiche a Medio Termine (ECMWF). A breve ospiterà anche Leonardo, uno dei più potenti supercomputer al mondo gestito da Cineca che attirerà startup e laboratori di ricerca, creando un ambiente di raccordo ideale tra ricerca e aziende” ha spiegato Simonetta Pagnutti, Dirigente di ricerca della Divisione ICT all’ENEA di Bologna.

Per ottenere il mirror, è stato necessario dimostrare di avere non solo le competenze, ma anche le tecnologie necessarie per gestirlo e sfruttarlo al meglio. Infrastrutture hardware adeguate, una capacità di storage di circa 800 Terabyte e un server così potente da ospitare il consistente Software Heritage e la sua architettura, compreso l’albero di Merkle su cui si basa.

Pagnutti spiega che “questa copia nasce per garantire sicurezza ai codici sorgente raccolti, in un luogo geograficamente distante dalla sede principale dove sono conservati. È frutto di un lavoro congiunto di ricercatori italiani e francesi per realizzare un backup non banale, in modo smart ed efficiente. Questo lo rende anche un trigger per la ricerca e per nuove collaborazioni, soprattutto internazionali”.

Ricerca e formazione sul codice sorgente, bene dell’umanità da proteggere

Ispirato alle logiche dei big data e in perfetta linea con l’approccio open source, il big code a cui il laboratorio è dedicato mira a rivoluzionare i metodi di creazione di codici per software. Partendo da un archivio, permette di aggregare programmi sorgente già catalogati e memorizzati ottimizzando tempo e sforzi. Lo stesso patrimonio informatico diventa anche un eccellente set con cui allenare algoritmi di intelligenza artificiale e machine learning, oltre che realizzare programmi per migliorare e velocizzare la creazione di codici.

Con la nascita del Bologna Big Code Lab la palla passa quindi al mondo della ricerca, che ha già realizzato un tool per la rilevazione automatica di bug. “Basato sul machine learning, questo strumento allena le reti neurali artificiali con i codici a disposizione per poter riconoscere da solo nuovi casi. Questo è solo l’inizio, con il big code si può fare molto altro, è un settore di grande interesse per l’ingegneria software. L’archivio è open source e in futuro permetterà di scrivere codici in modo rapido ed economico. Arriveranno strumenti in grado di realizzare automaticamente software, di tradurli o correggerli. Non sostituiranno mai gli sviluppatori, ma ne aumenteranno la produttività e la precisione” ha spiegato Pagnutti.

Al fianco a quelle di ricerca, il Bologna Big Code Lab promuove anche attività di formazione e alfabetizzazione digitale per far riflettere, soprattutto i giovani, sullo sviluppo delle tecnologie informatiche. “Poter accedere a questo archivio significa offrire l’analogo di una grande biblioteca, con 170 milioni di progetti scritti in 8000 linguaggi diversi. È un patrimonio grandioso da valorizzare, riconoscendo al software la dignità di prodotto dell’ingegno umano, di bene culturale dell’umanità da conservare” aggiunge Pagnutti.

Nel primo incontro, tenutosi il 16 marzo scorso, gli oltre 300 studenti di 4 scuole superiori coinvolti sono stati chiamati anche a votare il loro codice preferito tra quelli conservati nel mirror. Un “gioco” per ricordare come dietro a ogni tecnologia in cui sono immersi c’è un codice sorgente e che ha visto trionfare quello per inviare mail. Tra i finalisti, anche il software per creare e manipolare brani musicali e i codici alla base del salvataggio dell’Apollo 11, di Wikipedia, dei like di Facebook, del riconoscimento automatico di immagini, della prima chatbot (Eliza) e del Clustering Neural Networks che in Amazon, Google e Spotify ci suggerisce cosa ci piace.

Continuare a fare sistema per restare in prima linea nel Big Code

Formazione per le scuole e approccio open source per la ricerca saranno le due costanti per il Bologna Big Code Lab, anzi: variabili in crescita continua, ma solo per i prossimi due anni. Poi occorre sperare nella conferma del supporto di iFAB e nell’arrivo di nuovi sostenitori. “Intanto a breve metteremo in produzione il mirror. Dalla Francia è in arrivo l’unità di storage, seguiranno una fase di test e la messa a punto dell’infrastruttura per rendere questa copia accessibile come l’originale” spiega Pagnutti prevedendo massimo qualche mese di lavori.

Ai 4 ricercatori oggi operativi – due matematici, un fisico e un informatico – se ne aggiungeranno sperabilmente altri, per avviare nuovi progetti in parallelo. Questo e altri orizzonti “big” restano vincolati all’impegno che verrà messo in campo per sostenere il progetto, non tanto dal Tecnopolo ma dalle istituzioni e dalle aziende, in primis quelle che “vivono di software”. Si tratta di aderire strategicamente all’unico laboratorio italiano dedicato al big code, la nuova frontiera per chi sviluppa programmi ma anche per chi, senza toccare codici, vi ha costruito attorno un business.

Valuta la qualità di questo articolo

La tua opinione è importante per noi!

Articoli correlati