Un biblioteca universale e accessibile di tutto il codice mai prodotto per entrare in una nuova era del digitale

Big Code Lab è il progetto di ricerca finanziato da IFAB che punta a evolvere il mondo del software

La rivoluzione digitale è intorno a noi, in continua trasformazione: l’utilizzo della tecnologia e delle infrastrutture del web è un fenomeno quotidiano per gran parte delle persone che abitano il pianeta. Ogni dispositivo digitale – dal minimo al massimo grado di complessità, dallo smartphone che abbiamo in tasca ai super-computer – funziona a partire da un linguaggio comune: il codice. È il codice che istruisce le macchine, che le fa funzionare, che rende possibile il fatto che le macchine producano effetti su di noi, per noi e nella società in cui viviamo. È il codice che sta dietro alle relazioni sociali che si scatenano da un “Like” sui social network, sta dietro all’algoritmo di Spotify che ci suggerisce canzoni che probabilmente ci piaceranno, fa funzionare i programmi dei nostri computer, è il codice che permette al nostro robot-aspirapolvere di orientarsi in casa, permette una diagnosi accurata di una malattia, rende possibile che una auto si guidi da sola, o che le persone vadano nello spazio. Sebbene sia a prima vista immateriale, il codice ha un impatto sulle nostre vite continuo, concreto e tangibile.

In questo contesto, per sua natura in perenne mutazione, nasce il progetto “Big Code Lab”, finanziato da IFAB e scaturito dalla collaborazione tra il Centro Ricerche ENEA di Bologna e l’INRIA (Institut National de Recherche en Informatique et en Automatique) di Le Chesnay-Rocquencourt in Francia. Il progetto intende creare una replica – in gergo, un “mirror” – dell’archivio mondiale dei codici, denominato “Software Heritage” costruito da INRIA. Questa operazione permetterà all’Italia, alla Regione Emilia-Romagna e agli studiosi e professionisti del settore di avere a disposizione una copia, sempre in evoluzione, di tutte le librerie di codici fino ad ora depositate nell’archivio: un’estesissima mole di dati e informazioni che, in termini prettamente numerici, si conta in più di 11 miliardi di file riferiti a circa 168 milioni di progetti.

Il progetto ha due grandi obiettivi. Il primo è quello di contribuire alla creazione di un archivio mondiale dei codici utilizzati fino ad ora, attraverso la catalogazione e conservazione di questo vastissimo sapere umano, che continuerà ad aumentare esponenzialmente giorno dopo giorno (è significativa la partecipazione dell’Unesco alla realizzazione del progetto).

Il secondo obiettivo è quello di rendere condiviso e utile questo archivio, fornendo librerie di codici all’industria dei software e a chiunque sia interessato, nell’ottica di un processo di miglioramento, di evoluzione e di innovazione dell’intero settore digitale, con tutte le sue applicazioni sulla società. L’esistenza stessa del Software Heritage e la possibilità di condivisione apre infinite opportunità per tutto il settore del software engineering: a partire dalle librerie di codice esistenti nell’archivio è infatti possibile velocizzare la creazione di altro codice, in particolare si può fare la differenza in quella branca del Big Code che studia i linguaggi attraverso il prezioso lavoro delle reti neurali.

In altre parole, il progetto “Big Code Lab” punta a rendere la condivisione di un archivio mondiale di codici – che già di per sé ha un valore enorme dal punto di vista della conservazione del sapere umano – uno switch fondamentale per l’evoluzione e l’innovazione di tutto ciò che conosciamo come “digitale”: vuole, da ultimo, cogliere l’opportunità enorme rappresentata dalla creazione del Software Heritage per migliorare ed efficientare le innumerevoli applicazioni pratiche dei software sulla vita delle persone e all’interno della società.

Obiettivi del progetto

  • Ampliare e consolidare le conoscenze su “Big Code” attraverso un’infrastruttura aperta e accessibile a comunità di ricerca, industria, e cittadini;
  • Coinvolgere realtà locali (RER, imprese, musei, scuole) e cittadini;
  • Incrementare il livello di digital awareness.

Possibili applicazioni

Il “mirror” di Bologna col suo data set unico di codici sorgente darà l’opportunità  di avviare ricerche ed esplorare ambiti quali:

  1. L’estrazione conoscenza da ampie basi dati di codici sorgente utilizzando AI e ML per migliorare la produzione di software (sviluppo di programmi automatici, correctness, sicurezza…);
  2. Sviluppo di un’adeguata infrastruttura per disegnare, implementare e gestire enormi repositories. Multi-cloud systems utilizzando un insieme di architetture localmente disponibili;
  3. Attività di formazione collegate allo sviluppo di software e al pensiero computazionale, incluse tematiche interdisciplinari per ampliare e consolidare le conoscenze su “Big Code” e sulle tecniche avanzate per l’implementazione di archivi Big Data;
  4. Coinvolgere giovani ricercatori in un campo d’indagine relativamente nuovo (Big Code) con grandi opportunità di sviluppo e con un forte valore strategico per il sistema economico regionale e per l’inserimento lavorativo qualificato. Dare loro la possibilità di accedere a infrastrutture informatiche e archivi di dati di livello europeo;
  5. Affrontare il problema del “patrimonio digitale” sperimentando nuovi metodi per organizzare, archiviare, indicizzare il materiale digitale e renderlo “resiliente”;
  6. Sviluppo dell’Open Science (Open Source-Data-Access-Methodology-Peer Review-Educational resources);
  7. Valorizzare il mirror Software Heritage all’interno del Tecnopolo di Bologna, creando attorno a esso un ambiente di ricerca di qualità, che promuova collaborazioni prestigiose (SH, INRIA, UNESCO), e un ambiente di raccordo con il tessuto industriale, che coinvolga tutte le organizzazioni di trasferimento tecnologico e le aziende.

Research partners

  • IFAB
  • Università di Bologna, Dipartimento di Informatica – Scienza e Ingegneria (DISI)
  • ENEA – Agenzia nazionale per le nuove tecnologie, l’energia e lo sviluppo economico sostenibile

Per informazioni rivolgersi a [email protected]

Menu
Stay updated on the latest IFAB events and projects.Subscribe to our monthly newsletter