Software Heritage

Il progetto SH nasce nel 2016 all'INRIA di Parigi dal lavoro di Roberto di Cosmo e Stefano Zacchiroli.

Il punto di partenza di Software Heritage è il riconoscimento del codice sorgente come una parte importante del nostro patrimonio culturale; è importante quanto la letteratura o le testimonianze della cultura materiale.

Per poterlo studiare occorre prima di tutto raccoglierlo, catalogarlo e conservarlo, in maniera replicata e distribuita.

Dal sito del progetto:

Cultural heritage is the legacy of physical artifacts and intangible attributes of a group or society that are inherited from past generations, maintained in the present and bestowed for the benefit of future generations. Software in source code form is produced by humans and is understandable by them; as such it is an important part of our heritage that we should not lose.
Naturalmente una questione fondamentale è quella della licenza: solo i codici sorgenti con una licenza aperta possono essere raccolti e pubblicati. Non è sufficiente che un codice sia semplicemente reso disponibile per uso privato, ma occorre che tutti gli utenti abbiano il diritto di studiarlo, commentarlo e ridistribuirlo.

Questo assunto è anche al centro della Dichiarazione di Parigi dal titolo "Il codice sorgente come patrimonio per lo sviluppo sostenibile", una dichiarazione congiunta tra INRIA e UNESCO del 2019 a cui hanno aderito tanti esponenti del mondo della cultura digitale.

Paris Declaration
Source: https://unesdoc.unesco.org

Tra le richieste della dichiarazione a tutti gli Stati membri dell'UNESCO ci sono queste due fondamentali:

13. Recognise software source code as a precious asset of humankind, intersecting with human creativity, development, society and culture; 14. Recognise software source code as a fundamental enabler in all aspects of human endeavor
Mentre la prima riconosce il codice sorgente come oggetto culturale, la seconda lo pone ad un livello di piattaforma abilitante per tutti gli aspetti della vita dell'umanità. Sono parole molto forti che dovrebbero essere ricordate più spesso.

La missione di SH è non solo quella di raccogliere e preservare il codice sorgente a licenza aperta, ma anche di indicizzarlo e renderlo raggiungibile da ovunque con una URI unica. Ad esempio, questa URI https://archive.softwareheritage.org/browse/revision/0064fbd0ad69de205ea6ec6999f3d3895e9442c2/?snapshot=2ad4e6cab37cbb98f3063cd1928c837156c95438 punta ad una precisa versione di codice sorgente di un programma in OCAML.

Una volta individuato, il codice può essere letto online, oppure scaricato.

Oltre ad effettuare una ricerca tramite il motore accessibile via web, SH permette di accedere ai suoi archivi tramite delle API (disponibile alla URL https://archive.softwareheritage.org/api/1/) che richiedono un'autenticazione per essere consumate.

Come viene riempito l'archivio di SH? Fondamentalmente in tre modi.

Prima di tutto, vengono scandagliati i repository di codice sorgente pubblici, come Github o BitBucket:

SH Sources
Source: https://www.softwareheritage.org

Poi si permette agli utenti di proporre il proprio codice, o meglio di segnalare l'indirizzo del proprio repository Git, Subversion o Mercurial.

Ma oltre alla ricerca tramite repository una fonte importante è costituita dal codice "legacy", cioè dal vecchio codice che è presente nelle aziende, nelle banche, negli istituti di ricerca, nelle università, magari su supporti magnetici o ottici di difficile lettura o addirittura su carta. La storia del codice dell'Apollo Guidance Computer mostra quanto sforzo sia necessario per rendere disponibile a tutti un sorgente vecchio di cinquant'anni.

Proprio per guidare questa attività di raccolta e cura del codice è nata in seno a SH una nuova iniziativa: SWHAP (SoftWare Heritage Aquisition Process) in collaborazione con UNESCO e l'Università di Pisa. SWAP prevede 4 passi:

  • Collect: raccogliere i sorgenti dalle varie sorgenti e nei vari formati
  • Curate: pulire, standardizzare e metadatare
  • Archive: archiviare in forma sicura e distribuita
  • Present: rendere accessibile in forma chiara e completa
ognuno dei quali convolge figure professionali diverse, strumenti diversi e ambienti di archiviazione diversi.

SWHAP
Source: https://www.softwareheritage.org

Prossimo pannello:  Museumofcode



Versione: 02/02/2022 - 09:00:02

Parole: 359

Pannelli

Musei                       
CHM                         
MuPIn                       
Software Heritage           
Museumofcode                
🔎