L'archivage et la citation de logiciels avec Software Heritage
Abstract
Software Heritage collecte le code source publiquement disponible de nombreux projets de logiciels et suit leur développement. Baptiste Mélès est ambassadeur Software Heritage. Cette présentation a été donnée lors de la dépôt party organisée par le consortium Huma-Num Distam et l’Humathèque. https://distam.hypotheses.org/21019
Full text
Pourquoi archiver le code Démonstration Comment archiver le code Conclusion L’archivage et la citation de logiciels avec Software Heritage Baptiste Mélès CNRS, Archives Henri-Poincaré, Université de Lorraine, Ambassadeur Software Heritage Dépôt party du consortium Huma-Num DISTAM, Humathèque du Campus Condorcet, 10 décembre 2025. 1/34 Baptiste Mélès L’archivage et la citation de logiciels avec Software Heritage
Pourquoi archiver le code Démonstration Comment archiver le code Conclusion Outline 1Pourquoi archiver le code Besoins archivistiques et bibliographiques Fonctionnement de Software Heritage 2Démonstration Citation de projets et de code Exploration de l’archive 3Comment archiver le code Préparer et publier le code Récupération par Software Heritage 4Conclusion 2/34 Baptiste Mélès L’archivage et la citation de logiciels avec Software Heritage
Pourquoi archiver le code Démonstration Comment archiver le code Conclusion Présentation personnelle Baptiste Mélès : Chargé de recherche au CNRS (Archives Henri-Poincaré - PReST UMR 7117) : philosophie des sciences formelles (logique, mathématiques, informatique), avec une approche linguistique ; méthode : étudier les codes sources comme des textes. Coorganisateur du Séminaire Codes Sources (depuis 2015). Ambassadeur de Software Heritage, la bibliothèque universelle du logiciel. 3/34 Baptiste Mélès L’archivage et la citation de logiciels avec Software Heritage
Pourquoi archiver le code Démonstration Comment archiver le code Conclusion Besoins archivistiques et bibliographiques Fonctionnement de Software Heritage Plan de la section 1Pourquoi archiver le code Besoins archivistiques et bibliographiques Fonctionnement de Software Heritage 2Démonstration Citation de projets et de code Exploration de l’archive 3Comment archiver le code Préparer et publier le code Récupération par Software Heritage 4Conclusion 4/34 Baptiste Mélès L’archivage et la citation de logiciels avec Software Heritage
Pourquoi archiver le code Démonstration Comment archiver le code Conclusion Besoins archivistiques et bibliographiques Fonctionnement de Software Heritage Plan de la section 1Pourquoi archiver le code Besoins archivistiques et bibliographiques Fonctionnement de Software Heritage 2Démonstration Citation de projets et de code Exploration de l’archive 3Comment archiver le code Préparer et publier le code Récupération par Software Heritage 4Conclusion 5/34 Baptiste Mélès L’archivage et la citation de logiciels avec Software Heritage
Pourquoi archiver le code Démonstration Comment archiver le code Conclusion Besoins archivistiques et bibliographiques Fonctionnement de Software Heritage Solidité des pratiques bibliographiques Pourquoi les pratiques bibliographiques ont-elles fait leurs preuves ? Citation On attend d’un article scientifique qu’il cite chaque référence de manière précise : auteur, titre, maison d’édition, année, page. Cela permet d’identifier clairement un passage précis d’un texte précis. Archivage Les textes sont archivés dans des bibliothèques. Des documentalistes veillent à préserver ces documents de génération en génération. Référencement Des outils de catalogage permettent de trouver le texte recherché. 6/34 Baptiste Mélès L’archivage et la citation de logiciels avec Software Heritage
Pourquoi archiver le code Démonstration Comment archiver le code Conclusion Besoins archivistiques et bibliographiques Fonctionnement de Software Heritage Fragilité du logiciel Il s’en faut de beaucoup que les pratiques associées au logiciel fonctionnent aussi bien : Citation Mutabilité des fichiers, multiplicité des versions. Archivage Dégradation physique du support (disquette, CD, disque dur), disparition des forges (fermeture de Gitorious et Google Code, attaque de Code Spaces), péremption des liens web (4 ans de demi-vie). Référencement Dispersion du logiciel sur de nombreux sites web. Software Heritage, la bibliothèque universelle du logiciel, entend apporter une solution technique à ces problèmes et promouvoir les bonnes pratiques. 7/34 Baptiste Mélès L’archivage et la citation de logiciels avec Software Heritage
Pourquoi archiver le code Démonstration Comment archiver le code Conclusion Besoins archivistiques et bibliographiques Fonctionnement de Software Heritage Plan de la section 1Pourquoi archiver le code Besoins archivistiques et bibliographiques Fonctionnement de Software Heritage 2Démonstration Citation de projets et de code Exploration de l’archive 3Comment archiver le code Préparer et publier le code Récupération par Software Heritage 4Conclusion 8/34 Baptiste Mélès L’archivage et la citation de logiciels avec Software Heritage
Pourquoi archiver le code Démonstration Comment archiver le code Conclusion Besoins archivistiques et bibliographiques Fonctionnement de Software Heritage Écosystème de Software Heritage Articles : ArXiv, HAL, etc. ; Données : Zenodo, Nakala, Recherche Data Gouv, etc. ; Logiciels : Software Heritage. 9/34 Baptiste Mélès L’archivage et la citation de logiciels avec Software Heritage
Pourquoi archiver le code Démonstration Comment archiver le code Conclusion Citation de projets et de code Exploration de l’archive Bonnes pratiques de citation Principales informations à citer (si possible) : 1auteur(s) / créateur(s) qui ont développé le logiciel ; 2titre : le nom du logiciel ; 3lieu de publication / localisation : entrepôt dans lequel le logiciel est accessible ; 4date de publication : date associée à une version du logiciel ; 5identifiant(s) : de préférence un PID ,par exemple HAL-ID et SWHID ; 6URL vers l’emplacement du logiciel ; 7version : identifiant de la version du logiciel référencé. 16/34 Baptiste Mélès L’archivage et la citation de logiciels avec Software Heritage
Pourquoi archiver le code Démonstration Comment archiver le code Conclusion Citation de projets et de code Exploration de l’archive Référence par un SWHID Le SWHID est un identifiant pérenne et intrinsèque. Il peut identifier : un état du code ; une version ; un commit ; un fichier ; un répertoire ; un fragment de code. Obtenir le SWHID en dépliant l’onglet rouge : 17/34 Baptiste Mélès L’archivage et la citation de logiciels avec Software Heritage
Pourquoi archiver le code Démonstration Comment archiver le code Conclusion Citation de projets et de code Exploration de l’archive Plan de la section 1Pourquoi archiver le code Besoins archivistiques et bibliographiques Fonctionnement de Software Heritage 2Démonstration Citation de projets et de code Exploration de l’archive 3Comment archiver le code Préparer et publier le code Récupération par Software Heritage 4Conclusion 18/34 Baptiste Mélès L’archivage et la citation de logiciels avec Software Heritage
Pourquoi archiver le code Démonstration Comment archiver le code Conclusion Citation de projets et de code Exploration de l’archive Exploration d’un projet MesoCalc, une calculatrice mésopotamienne : 1la page web : http://baptiste.meles.free.fr/site/mesocalc.html ; 2le dépôt git : https://github.com/BapMel/mesocalc ; 3la notice HAL : https://shs.hal.science/halshs-04543161 ; 4l’archive sur Software Heritage : https://archive.softwareheritage.org/browse/ origin/directory/?origin_url=https: //github.com/BapMel/mesocalc. 19/34 Baptiste Mélès L’archivage et la citation de logiciels avec Software Heritage
Pourquoi archiver le code Démonstration Comment archiver le code Conclusion Citation de projets et de code Exploration de l’archive L’archive sur Software Heritage 〈https://archive.softwareheritage.org/browse/ origin/directory/?origin_url=https: //github.com/BapMel/mesocalc〉 20/34 Baptiste Mélès L’archivage et la citation de logiciels avec Software Heritage
Pourquoi archiver le code Démonstration Comment archiver le code Conclusion Citation de projets et de code Exploration de l’archive Ciblage d’un fragment 〈swh:1:cnt:93a62a2e0a1145c9b69fe703a91bff7b25e395aa;lines=1223012241〉 21/34 Baptiste Mélès L’archivage et la citation de logiciels avec Software Heritage
Pourquoi archiver le code Démonstration Comment archiver le code Conclusion Citation de projets et de code Exploration de l’archive Référencement d’un fragment 〈swh:1:cnt:93a62a2e0a1145c9b69fe703a91bff7b25e395aa;lines=1223012241〉 22/34 Baptiste Mélès L’archivage et la citation de logiciels avec Software Heritage
Pourquoi archiver le code Démonstration Comment archiver le code Conclusion Préparer et publier le code Récupération par Software Heritage Plan de la section 1Pourquoi archiver le code Besoins archivistiques et bibliographiques Fonctionnement de Software Heritage 2Démonstration Citation de projets et de code Exploration de l’archive 3Comment archiver le code Préparer et publier le code Récupération par Software Heritage 4Conclusion 23/34 Baptiste Mélès L’archivage et la citation de logiciels avec Software Heritage
Pourquoi archiver le code Démonstration Comment archiver le code Conclusion Préparer et publier le code Récupération par Software Heritage Plan de la section 1Pourquoi archiver le code Besoins archivistiques et bibliographiques Fonctionnement de Software Heritage 2Démonstration Citation de projets et de code Exploration de l’archive 3Comment archiver le code Préparer et publier le code Récupération par Software Heritage 4Conclusion 24/34 Baptiste Mélès L’archivage et la citation de logiciels avec Software Heritage
Pourquoi archiver le code Démonstration Comment archiver le code Conclusion Préparer et publier le code Récupération par Software Heritage Préparer le code Ajouter dans le projet les fichiers : README.md ; AUTHORS.md ; LICENSE.md ; idéalement, codemeta.json (très facile avec Codemeta Generator) 25/34 Baptiste Mélès L’archivage et la citation de logiciels avec Software Heritage
Pourquoi archiver le code Démonstration Comment archiver le code Conclusion Plan de la section 1Pourquoi archiver le code Besoins archivistiques et bibliographiques Fonctionnement de Software Heritage 2Démonstration Citation de projets et de code Exploration de l’archive 3Comment archiver le code Préparer et publier le code Récupération par Software Heritage 4Conclusion 32/34 Baptiste Mélès L’archivage et la citation de logiciels avec Software Heritage
Pourquoi archiver le code Démonstration Comment archiver le code Conclusion Conclusion Software Heritage, la bibliothèque universelle du logiciel, offre : un archivage pérenne des codes sources ; des outils de citation et de référencement précis. Vous êtes invitées et invités à : archiver vos codes sources ; adopter les bonnes pratiques de citation et de référencement ; faire connaître Software Heritage autour de vous ! 33/34 Baptiste Mélès L’archivage et la citation de logiciels avec Software Heritage
Pourquoi archiver le code Démonstration Comment archiver le code Conclusion Des réticences ? « Mon code n’intéresse personne. » Si : toutes les personnes qui s’intéressent à votre recherche. « Mon code n’est pas beau / pas encore présentable. » Archivez-le d’abord, et vous l’embellirez plus tard. « C’est trop compliqué. » Demandez de l’aide à des gens qui savent faire. 34/34 Baptiste Mélès L’archivage et la citation de logiciels avec Software Heritage