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à.