Lors de GitHub Universe 2019, GitHub a présenté ses programmes GitHub Archive et GitHub Arctic Code Vault. La mission de GitHub est de préserver les logiciels open source pour les générations futures en archivant le code dans un lieu de stockage construit pour durer mille ans.
Le 2 février 2020, Les équipes en charge du projet ont pris une photographie de tous les dépôts publics actifs sur GitHub avec pour objectif de les archiver dans une chambre forte. Au cours des derniers mois, Piql, le partenaire d’archives de GitHub, a gravé 21 TéraOctets de données sur 186 bobines de microfilm durci. Ces données provenaient de dépôts GitHub. Selon le plan initial, l’équipe GitHub en charge du projet devait s’envoler pour la Norvège et escorter personnellement le code open source mondial jusqu’à l’Arctique. Cependant, face à l’épidémie mondiale qui continue de sévir, GitHub a dû ajuster ses plans. Un contact étroit a été maintenu avec les partenaires, en attendant le moment où ces derniers pourraient se rendre dans le Svalbard en toute sécurité. GitHub est heureux d’annoncer que le code a été déposé avec succès dans la chambre forte du code de l’Arctique le 8 juillet 2020.
Le voyage du code open source vers le cercle arctique
Le voyage de du code commence dans les installations de Piql à Drammen, en Norvège. C’est à partir de là que les boîtes contenant 186 bobines de film ont été expédiées vers l’aéroport d’Oslo, puis chargées dans l’avion à destination de la région du Svalbard. Cet archipel situé à environ 1000 km au nord du continent européen, vient d’être récemment rendu accessible aux visiteurs des pays de l’espace Schengen et de l’Espace économique européen.
Le code a atterri à Longyearbyen, une ville de quelques milliers d’habitants, située dans le Svalbard. Accueillies par une société de logistique locale, les boîtes ont été transportées pour la nuit dans un entrepôt intermédiaire sécurisé. Le lendemain matin, elles ont été déposées dans la mine de charbon désaffectée, située sous une montagne. C’est là, dans une chambre forte située à une centaines de mètres, dans le permafrost, que le code est maintenant stocké. Il remplit ainsi sa mission de préservation du code open source pour les 1000 années à venir et plus
Le Badge Artic Code Vault
Des millions de développeurs dans le monde entier ont contribué au code open source qui est désormais stocké dans l’Arctic Code Vault. Pour reconnaître et célébrer ces contributions, GitHub a conçu le badge Arctic Code Vault. Celui-ci figure sur le profil de chaque développeur sur GitHub. Il suffit de passer la souris sur cette section pour découvrir les dépôts auxquels ce dernier a contribué.
Internet Archives
Internet Archive est une bibliothèque numérique à but non lucratif bien connue et très appréciée. Elle offre un accès public et gratuit à des collections de documents numérisés. En partenariat avec le programme GitHub Archive, Internet Archive (IA) a commencé à archiver les dépôts publics GitHub le 13 avril 2020. À l’heure actuelle, IA utilise une approche en deux volets. Tout d’abord, leur célèbre Wayback Machine accède aux données brutes de GitHub. Elle archive alors sous forme de fichiers WARC, ou Web ARChive. A l’heure actuelle, ils ont archivé quelque 55 TéraOctets de données. Par la suite, ils souhaitent rendre disponible l’intégralité des dépôts GitHub via un « clone git », tout en gardant les commentaires, les problèmes et autres métadonnées facilement accessibles sur le web. Cette deuxième initiative est bien avancée et l’archivage initial devrait commencer ce mois-ci.
La Fondation Software Heritage
Software Heritage est une initiative à but non lucratif et multipartite lancée par l’Inria en collaboration avec l’UNESCO. Elle a pour but de collecter, préserver et partager le code source des logiciels communs à ces organisations et à GitHub. La fondation a déjà archivé plus de 130 millions de projets, avec leur historique complet de développement, dont 100 millions proviennent de GitHub. Grâce à la collaboration annoncée à GitHub Universe 2019, le moteur d’archivage est en cours d’amélioration dans le but de le maintenir au niveau de la croissance de GitHub. Pour les utilisateurs intéressés, il est facile de déclencher un archivage immédiat en quelques clics sur https://save.softwareheritage.org.
Project Silica
Project Silica développe la première technologie de stockage conçue et construite pour permettre un stockage à l’échelle du cloud pour des données dont la durée de vie est longue. En tirant parti des récentes découvertes en optique laser ultrarapide, les données sont stockées dans du verre de quartz par un processus qui modifie en permanence la structure physique du matériau en verre. Le verre de quartz est un support de stockage durable qui offre aux données une durée de vie inégalée. Celle-ci peut atteindre plusieurs dizaines de milliers d’années. Ce verre de quartz résiste aux interférences électromagnétiques, à l’eau et à la chaleur, ce qui en fait le support de stockage idéal. Il permet ainsi de garantir que les logiciels open source du monde entier sont préservés à jamais pour les générations futures. En tant que partenaire du programme GitHub Archive, Project Silica s’est engagé à stimuler l’innovation en matière de stockage et à développer une technologie de stockage qui répond aux exigences de durabilité et de fiabilité pour les données de longue durée de vie provenant du monde entier. Convaincu par cette technologie, GitHub a archivé 6 000 dépôts, choisis parmi les plus populaires du monde
Quelle est la prochaine étape ?
Le code, la culture, l’histoire et la technologie : L’Arbre Technologique
Chaque bobine des archives comprend un exemplaire du « Guide pour découvrir le GitHub Code Vault » en cinq langues. Rédigé avec la contribution de la communauté GitHub, il est disponible dans le dépôt GitHub du programme GitHub Archives. Ces archives comprendront en outre une bobine distincte, lisible par l’homme. Celle-ci documente l’histoire technique et le contexte culturel du contenu des archives. C’est ce que GitHub appelle l’Arbre Technologique.
Inspiré du Manuel de Civilisation de Long Now, l’Arbre Technologique sera principalement constitué d’ouvrages existants. Ces derniers ont été sélectionnés pour fournir une compréhension détaillée de l’informatique moderne, du logiciel libre et de ses applications, du développement de logiciels actuel, des langages de programmation populaires, etc. Il comprendra également des ouvrages expliquant les nombreuses couches de fondements techniques qui rendent le logiciel possible : les microprocesseurs, la mise en réseau, l’électronique, les semi-conducteurs et même les technologies préindustrielles. Cela permettra aux héritiers des archives de mieux comprendre le monde actuel et ses technologies, et pourrait même les aider à recréer des ordinateurs pour utiliser les logiciels archivés.
GitHub publiera bientôt dans le dépôt GitHub du programme d’archivage une première liste provisoire des œuvres sélectionnées pour l’arbre technologique, ainsi qu’une demande de contribution de la communauté. GitHub est impatients d’intégrer les idées et les suggestions de sa communauté avant que l’arbre technologique ne soit ajouté à l’Arctic Code Vault.