Enigma, la machine à crypter réputée inviolable, utilisée par les Nazis pendant la Seconde guerre mondiale. Le célèbre mathématicien Alan Turing en a déchiffré les messages pour les Services secrets britanniques en mettant au point ce qui devait se révéler un ancêtre de l’ordinateur.

Dans les musées de technologie, c’est le gros matériel qui plaît, qui suggère l’histoire des inventions. En ce qui concerne l’informatique aussi. Mais ce sont les millions de pages de documents archivés, invisibles pour les visiteurs – les manuels, les schémas logiques, les photographies, les business plans, les documents marketing, les archives d’entreprise et les dossiers clients – qui constituent le contenu intellectuel de la collection nécessaire à toute étude scientifique. De même pour les logiciels, les boîtes et les supports ne révèlent que la surface des choses : préserver la boîte sans préserver les bits à l’intérieur est comme conserver la jaquette du livre et jeter le livre. La programmation informatique est plus que le développement de produits commerciaux. Elle transforme un matériel inerte en un amplificateur du cerveau humain. Nous devons préserver l’histoire des travaux intellectuels qui ont permis la création des bits qui animent la machine.

Le logiciel est une forme de littérature écrite par des humains pour être lue à la fois par des humains et par des machines. Donald Knuth, un des pionniers de l’algorithme, qualifie d’art ce processus de création : « Le but principal de mon travail, en tant qu’enseignant et auteur, est d’aider les gens à apprendre comment écrire de beaux programmes ». Que ces programmes soient traduits en forme binaire pour être exécutés par un ordinateur ne diminue pas les valeurs que l’ordinateur ne voit jamais : la structure littéraire et logique, le commentaire, l’histoire de son évolution contenue dans le système de gestion de versions, la découverte des erreurs et leurs corrections, le travail collaboratif, l’ingéniosité, les difficultés, la fierté de l’artisan, son angoisse devant la création et son humour. « Être un bon programmeur aujourd’hui est un privilège au même titre que d’avoir été un homme de lettres aux XVIe siècle », disait Andreï Erchov, créateur de l’école sibérienne d’informatique.

La valeur la plus importante est dans le code source. Nous connaissons tous le monument mégalithique de Stonehenge, mais ignorons pourquoi et comment il a été créé : il nous manque son code source ! Seul le code source permet d’atteindre la pensée du concepteur et révèle l’utilisation prévue, quels cas exceptionnels étaient traités, où l’efficacité était jugée importante, quelles erreurs de conception et de mise en œuvre ont été commises et quelles abstractions créées et utilisées. Les annotations des développeurs ne sont pas utiles à la machine mais ce sont des messages envoyés aux futurs développeurs pour les aider à mieux comprendre le programme, et comment le modifier ou pas. Un bel exemple est le code source du système de guidage d’Appolo 11, écrit dans un langage de programmation très proche de la machine et qui avait donc besoin d’un grand nombre de commentaires pour pouvoir être compris.

C’est pour conserver et transmettre ce patrimoine qu’a été lancé Software Heritage, avec le soutien de l’INRIA (Institut national de recherche en informatique et en automatique). Ses missions : récolter, organiser, préserver et rendre accessible l’ensemble du code source disponible publiquement sur la planète, indépendamment d’où et comment il a été développé et distribué.

Roberto di Cosmo, Inria, Université de Paris

 Len Shustek, Directeur du Computer History Museum (Mountain View, États-Unis), (« What we Should Collect to Preserve the History of Software”, Annals of the History of Computing, oct-déc 2006)  – Revue du Cilac – Décembre 2018

Print Friendly, PDF & Email