Pourquoi une bibliothèque universelle des logiciels - Software Heritage - Roberto Di Cosmo : Différence entre versions

De April MediaWiki
(Transcription)
(7’ 08)
Ligne 55 : Ligne 55 :
 
==7’ 08==
 
==7’ 08==
  
<b>Diverses voix off : </b>Le premier programmeur au monde
+
<b>Diverses voix off : </b>Le premier programmeur au monde est une programmeuse. Et ça, c’est l’histoire d’Anna Lovelace ; elle s’est passionnée pour la machine analytique. Dans une de ses notes, elle décrit l’enchaînement d’instructions qu’il faut donner à la machine pour réaliser une suite mathématique, mais pas seulement l’algorithme qui permet de réaliser cette suite, elle décrit jusqu’à la position des rouages. Et ça, traduire un algorithme dans une séquence d’instructions qu’il faut donner à un ordinateur pour qu’il le réalise, c’est de la programmation informatique.
 +
 
 +
C’est incroyable ça !
 +
 
 +
Là c’est un ordinateur qui ne peut rien faire comme ça. Ce qu’on fait c’est qu’on prend une cassette et, à partir de là, cette cassette contient des programmes pour l’ordinateur et, vous avez vu, j’ai appuyé sur un bouton, j’appuie sur autre bouton et on va charger le programme.
 +
 
 +
Ah vous êtes le nouveau prof d’informatique, c’est ça ?
 +
 
 +
J’ai décidé de porter la liberté aux utilisateurs de l’informatique. Le but est d’éliminer le logiciel pas libre et de le remplacer par du logiciel libre. Le logiciel privateur ne doit pas exister.
 +
 
 +
Tant mieux, parce que moi j’adore ça la liberté !
 +
 
 +
Il n’y a pas un catalogue central de tous les logiciels nous utilisons tous des plateformes diverses et variées, pour développer, pour distribuer.
 +
 
 +
C’est là Alexandrie, qui met en place un projet qu’il a imaginé pour la Grèce c’est-à-dire réunir tous les savoirs du monde au même endroit. L’idée est magnifique, il faut juste la réaliser !
 +
 
 +
Ouais, il n’y a plus qu’à réunir les gars maintenant.
 +
 
 +
<b>Caroline Lachowsky : </b>Il n’y a plus qu’à, Roberto Di Cosmo, c’est vite dit sauf que c’est un travail de titan, monumental. Est-ce qu’on pourrait avoir une idée, après ce résumé de l’informatique au cours de notre siècle – on a même entendu Richard Stallman, celui qui nous met en avant les logiciels libres –, est-ce qu’on peut avoir une idée du volume de données monstrueux que vous avez à traiter pour cette bibliothèque universelle des logiciels ?
 +
 
 +
<b>Roberto Di Cosmo : </b>En réalité, effectivement, c’est une très bonne question : il y a combien de codes sources logiciels informatiques ??? Je peux vous dire déjà ce que nous avons trouvé. Au bout de quatre ans de travail, parce qu’on a quand même commencé à travailler il y a un petit moment pour construire l’infrastructure.
 +
 
 +
<b>Caroline Lachowsky : </b>L’infrastructure de cette bibliothèque universelle des logiciels et commencé à les collecter ; c’est ça ?
 +
 
 +
<b>Roberto Di Cosmo : </b>Eh oui, exactement, commencé à les collecter. Parce que si vous voulez, d’une certaine façon on a besoin de construire une infrastructure, un énorme aspirateur qui se connecte aux différents endroits sur la planète dans lesquels on développe les logiciels, en particulier, en premier lieu, les logiciels libres et qui les récupèrent avec toute leur histoire de développement. Donc on sait en détail quelle ligne de code a été rajoutée par qui, à quel moment, pourquoi ; ça c’est vraiment passionnant et fascinant. Là, aujourd’hui, on a déjà identifié plus de 80 millions d’origines à partir desquelles on récupère ces logiciels et après, en regardant ce qu’il y a là-dedans, on a trouvé plus de 4 milliards et demi de fichiers sources tous différents, parce qu’un même fichier source peut-être réutilisé à plusieurs endroits mais nous on ne le garde qu’une seule fois ; donc il y a plus de 4 milliards et demi de fichiers sources tous différents qui ont été développés. Dans notre bibliothèque, si vous regardez, le logiciel le plus ancien date des années 70, voire un peu avant, et le logiciel le plus moderne date peut-être d’hier, parce qu’on ne collecte pas seulement le passé, mais aussi tout ce qui se développe aujourd’hui.
 +
 
 +
<b>Caroline Lachowsky : </b>Vous m’avez montré sur votre ordinateur tout à l’heure le code source d’Apollo. Incroyable, avec des commentaires en plus, Roberto Di Cosmo.
 +
 
 +
<b>Roberto Di Cosmo : </b>Absolument. Si vous regardez, dans cette énorme bibliothèque on trouve de vrais trésors. Un de ces trésors que j’adore particulièrement c’est le code source du système de commande de l’Apollo 11 qui a plusieurs particularités. Tout d’abord parce qu’effectivement, là on a mentionné Ada Lovelace, mais la personne qui a piloté l’équipe qui a développé ce logiciel s’appelle Margaret Hamilton ; c’est une dame incroyable.
 +
 
 +
<b>Caroline Lachowsky : </b>Une femme informaticienne.
 +
 
 +
<b>Roberto Di Cosmo : </b>Une femme informaticienne qui a 82 ans aujourd’hui. J’ai eu la chance de la rencontrer il y a quelques mois lors d’une conférence internationale ; elle est toujours aussi brillante, aussi géniale que ce qu’elle était à l’époque où elle développait ces codes-là.<br />
 +
Donc on trouve de vrais trésors, parce que vous voyez, à l’époque, l’ordinateur de l’Apollo 11 c’était un ordinateur qui était très avancé pour l’époque mais qu’on programmait avec des langages informatiques qui étaient de très bas niveau, très proches de la machine donc on souffrait beaucoup pour programmer tout ça et donc on mettait énormément de commentaires. Les commentaires sont faits pour des êtres humains, pour leur dire « regarde les instructions suivante va faire telle ou telle autre chose ». Et ce qu’on a regardé ensemble tout à l’heure, justement il y avait un fragment du programme d’allumage des réacteurs de l’Apollo 11 qui est développé d’une façon un peu particulière ; du coup les commentaires des développeurs sont géniaux parce qu’il y a un des développeurs qui écrit, qui reprend l’ancienne devise <em>honni soit qui mal y pense</em>, c’est-à-dire « ne pensez pas mal ; si on a codé comme ça on n’avait pas le moyen de faire mieux » et plus tard un ??? qui écrit <em>no ???</em>, « ne pas toucher si vous ne savez pas ce que vous faites ». Ça c’est une partie qui est super délicate dans les commandes de l’Apollo 11.
 +
 
 +
<b>Caroline Lachowsky : </b>Que ce soit pour l’Apollo ou pour les commandes d’un avion, il ne vaut pas toucher le code source.
 +
 
 +
<b>Roberto Di Cosmo : </b>Il vaut mieux ne pas toucher si on ne sait pas ce qu’on fait. D’accord ! Il faut un peu regarder. Donc on peut encore relire tout ça et en révisant ces codes on voit vraiment une histoire passionnante et, vous voyez, les instructions pour l’ordinateur vont finir dans l’ordinateur, mais les commentaires ne disent rien à l’ordinateur ; ils nous parlent à nous, ils nous racontent une histoire humaine. L’histoire de l’informatique est une histoire d’êtres humains, d’hommes et de femmes qui ont travaillé ensemble, qui ont passé des nuits et des jours de passion pour construire cette ??? logique qui change le monde d’aujourd’hui.
 +
 
 +
<b>Caroline Lachowsky : </b>Qui change le monde d’aujourd’hui.
 +
 
 +
<b>Roberto Di Cosmo : </b>Et c’est cette histoire qu’on veut construire.
 +
 
 +
<b>Caroline Lachowsky : </b>Voilà. Vous voulez construire cette histoire et vous nous montrez aussi que ces logiciels, ces codes sources, sont quoi ? Des sortes d’objets vivants, enfin sur lesquels on peut travailler aussi aujourd’hui encore.
 +
 
 +
<b>Roberto Di Cosmo : </b>Absolument. C’est tout à fait ça. C’est important de comprendre que les codes sources des logiciels sont des objets nobles. Ce sont des créations de l’esprit humain ; ils sont développés par des êtres humains et maintenant, comme la complexité technologique grandit énormément, très souvent ce sont des gros logiciels. Prenez les navigateurs internet comme Firefox, prenez des systèmes de base de données comme PostgreSQL ou d’autres, du traitement d’images comme Gimp, ce sont des logiciels qui font des centaines, des milliers, voire des millions de lignes de code, et une seule personne ne peut pas se permettre d’écrire tout ça toute seule, donc on écrit de façon collaborative et on travaille ensemble sur cet objet, sur des plateformes qu’on appelle souvent des forges logicielles pour travailler ensemble. Et c’est fascinant. Par exemple, si on veut comparer avec la littérature. Le code source on l’écrit, on l’écrit comme on écrirait un texte, et là aussi c’est important de savoir pourquoi tel texte a été écrit de telle façon. Dans notre approche traditionnelle à la littérature, d’abord on sélectionne les livres qui sont importants et une fois qu’on a trouvé un livre qui est important, je ne sais pas, de Zola, de Hugo, eh bien on passe des nuits et des semaines et des années avec des étudiants dans les bibliothèques à chercher les lettres, les notes, les brouillons de ces écrits.
 +
 
 +
<b>Caroline Lachowsky : </b>Comment ont été écrits ces chefs-d’œuvres.
 +
 
 +
<b>Roberto Di Cosmo : </b>Pourquoi ils ont décidé d’écrire comme ça, etc. Alors dans le monde de l’informatique, pour les besoins de l’informatique, on garde la trace de tous ces développements au moment où on développe. Du coup, il y a peut-être des logiciels qui ne sont pas très intéressants, ce n’est pas grave, mais quand on a un logiciel intéressant, on a toute cette trace. Donc nous gardons non pas seulement des codes sources mais aussi toute la trace de développement.
 +
 
 +
<b>Caroline Lachowsky : </b>La trace humaine derrière ! On reconnaît bien l’humaniste et informaticien que vous êtes, Roberto Di Cosmo, et vous avez choisi évidemment d’écouter Birdy sur RFI <em>People Help The People</em>.
 +
 
 +
[Pause musicale]
 +
 
 +
==16’ 55==
 +
 
 +
<b>Caroline Lachowsky : </b>Birdy sur RFI, <em>People Help The People</em>.

Version du 13 septembre 2018 à 16:45


Titre : « Pourquoi une bibliothèque universelle des logiciels ? »

Intervenants : Roberto Di Cosmo - Caroline Lachowsky

Lieu : Émission Autour de la question - RFI

Date : septembre 2018

Durée : 48 min 30

Écouter ou télécharger le podcast

Licence de la transcription : Verbatim

NB : transcription réalisée par nos soins. Les positions exprimées sont celles des personnes qui interviennent et ne rejoignent pas forcément celles de l'April.

Statut : Transcrit MO

Description

Notre invité du jour, le chercheur en informatique Roberto Di Cosmo, s'interrogera autour de la question suivante : « Pourquoi une bibliothèque universelle des logiciels ? » Pourquoi une bibliothèque universelle (une bibliothèque d’Alexandrie) des logiciels ? Comment collecter, préserver et rendre accessible à tous, ce nouveau patrimoine commun de l’humanité ? Comment partager nos logiciels en toute liberté ? Avec Roberto Di Cosmo, chercheur en informatique détaché auprès d'Inria, directeur de l'initiative Software Heritage, professeur d'Informatique de l'Université Paris Diderot, et membre de l'IRIF.

Transcription

Voix off : Autour de la question. D’où ça vient ? Qu’est-ce que ça va changer ? C’est pour qui ? À quoi ça sert ? Caroline Lachowsky.

Caroline Lachowsky : Bonjour. Ravie de vous retrouver chers amis auditeurs pour une nouvelle saison avec ??? à la réalisation cette année, autour de toutes les questions qui nous animent. J’en profite pour vous remercier de votre interactivité et de votre curiosité. Nous ferons d’ailleurs encore plus appel à vous pour nourrir nos échanges. Je vous en reparle très vite, car nous sommes concernés et tous contributeurs aujourd’hui et c’est précisément cette réflexion qui a amené notre invité. Le chercheur en informatique Roberto Di Cosmo, ardent défenseur de la diffusion des savoirs, a initié une bibliothèque universelle des logiciels. Une véritable bibliothèque d’Alexandrie pour collecter, préserver et rendre accessibles à tous les codes sources de tous les logiciels disponibles dans le monde. Soutenue par l’Unesco, cette initiative essentielle, Software Heritage, arrive à point nommé pour préserver et mettre en commun ce nouveau patrimoine de l’humanité. Autour de la question pourquoi et comment partager nos logiciels en toute liberté ? Bienvenue.
Bonjour Roberto Di Cosmo.

Roberto Di Cosmo : Bonjour Caroline.

Caroline Lachowsky : Merci d’être en direct avec nous. Vous êtes chercheur informaticien, professeur à l’université de Paris Diderot, détaché auprès d’Inria, l’Institut national de recherche en informatique, ardent défenseur des logiciels libres et de la diffusion de tous les savoirs, vous êtes donc à l’initiative de ce fantastique projet de grande bibliothèque du code source, Software Heritage, inauguré à l’Unesco en juin dernier ; la bibliothèque d’Alexandrie des logiciels a pour mission de collecter, d’organiser, de préserver et de partager tous les logiciels disponibles. C’est une initiative formidable, assez monumentale ; comment vous est venu cette idée Roberto Di Cosmo ?

Roberto Di Cosmo : Tout d’abord je vous remercie beaucoup Caroline de m’accueillir pour parler de ce projet ; c’est quelque chose que je trouve passionnant. Pour comprendre effectivement comment cette idée est née, il faut que je vous dise : je suis un chercheur en informatique, je travaille avec les gens qui travaillent avec moi comme Stefano Zacchiroli et d’autres personnes de mon équipe, sur l’analyse et l’évolution des codes logiciels, et il y a quatre ans à peu près, on avait commencé un certain travail d’analyse sur des logiciels, qui avait l’air de fonctionner plutôt bien, et c’était tout naturel de se poser la question et de dire comment on peut faire ce travail-là sur tous les logiciels qui existent ? Donc on a juste commencé à chercher en se disant il doit bien y avoir un endroit dans lequel il y a bien tous les codes sources de tous les logiciels ; il y a sûrement quelqu’un qui y a pensé. Et là on a bien cherché, on a bien cherché à droite, à gauche, on n’a rien trouvé et, du coup, on a pris conscience d’un problème qui est quand mème incroyable, c’est-à-dire l’informatique est une discipline qui a changé, transformé, révolutionné notre monde, il y a des logiciels partout, ils sont nécessaires pour communiquer, pour transférer, pour acheter, pour s’entretenir, pour tout faire – et ils sont assez récents ça fait une cinquantaine d’années que les logiciels ont commencé vraiment à transformer notre monde – et pourtant personne jusque-là ne s’est soucié de préserver ce nouveau patrimoine des connaissances technologiques.

Caroline Lachowsky : Un nouveau patrimoine de connaissances technologiques. Rappelons, on va y revenir, que les logiciels, les tout premiers sont toujours valables aujourd’hui et qu’en plus, j’ai envie de vous poser la question pourquoi maintenant ? Mais parce que maintenant peut-être qu’on est à une période charnière justement entre les débuts de l’informatique et puis cette croissance exponentielle des logiciels ?

Roberto Di Cosmo : Absolument. Donc là, quand on a commencé à regarder – le sujet est immédiatement devenu passionnant quand on s’en est aperçus – on s’est rendu compte qu’on est à un moment vraiment charnière, un moment particulier dans l’histoire de l’informatique, parce que les premiers informaticiens un peu modernes, ceux qui commencé à travailler avec des vrais ordinateurs datent d’il y a un petit demi-siècle. Un petit demi siècle c’est beaucoup pour la vitesse d’évolution de l’informatique mais c’est très peu par rapport à l’histoire d’une discipline.
Donc on a une opportunité unique de pouvoir encore parler à la plupart des gens qui ont écrit les premiers logiciels, qui savent comment les logiciels qui ont fabriqué Internet, qui ont fabriqué le Web, qui ont fabriqué tout ça, ont été développés, pourquoi ils ont été faits de telle sorte ; ces personnes sont encore vivantes.

Caroline Lachowsky : Donc on peut aller les voir et on peut leur demander comment elles ont fait leur code et récupérer tous ces codes sources. C’est ça ?

Roberto Di Cosmo : On peut aller les voir. Exactement et ça c’est une opportunité unique parce que dans d’autres disciplines, je parle des mathématiques moi j’aimerais bien parler avec Archimède et lui demander pourquoi il a fait les chose comme ça, mais c’est un peu trop tard, il y a 2000 ans qui sont passées. J’aimerais bien passer avec Leibnitz, avec Newton, avec Pascal mais c’est un peu trop tard, ils sont déjà tous partis, alors que dans l’informatique l’essentiel des gens est encore là. Donc il y a cette possibilité de tout récupérer et, en plus, si vous regardez – et on a des chiffres on peut regarder comment ça fonctionne – on voit que le développement des logiciels explose. Il n’y a jamais eu autant de logiciels qui sont développés, donc non seulement on peut récupérer le passé, mais on se trouve aussi dans une phase où il est vraiment nécessaire de construire l’infrastructure de préservation pour s’assurer que demain on ne devra pas faire pas faire un effort inhumain pour récupérer des choses qu’on perd. Chaque année qui passe la quantité de logiciels à préserver grandit et il faut s’y mettre tout de suite pour que la tâche ne soit pas infaisable.

Caroline Lachowsky : Pour collecter ce qui est fait et ensuite pour pouvoir les relire, si j’ose dire, sur tous les supports parce que cette question est là aussi évidement.

Roberto Di Cosmo : Évidemment, et c’est très bien qu’on ait parlé de ça parce que vous voyez, on peut se poser la question et savoir, mais d’accord, mais les logiciels, moi je suis pas informaticien pourquoi ça devrait m’intéresser ? D’un côté, il faut savoir que les logiciels arrivent en deux fois : il y a les logiciels exécutables qu’on peut trouver sur son téléphone ou sur son ordinateur, qu’on utilise pour faire une tâche particulière, ça c’est bien, mais ces logiciels exécutables-là ne sortent pas d’un chapeau ils ont été écrits, et regardez, on utilise vraiment le terme écrire un logiciel, les logiciels sont écrits par des développeurs, par des êtres humains, qui peuvent être des développeurs, des ingénieurs, des chercheurs, des hobbyistes, des personnes qui ont appris informatique toutes seules et qui écrivent ces logiciels dans ce qu’on appelle des langages informatiques, mais ces langages informatiques et ces codes sources des logiciels sont une forme de connaissance spéciale parce qu’ils sont faits pour qu’un autre développeur puisse les lire, parce qu’on a besoin de les modifier peut-être dans une semaine, peut-être dans un mois, et peut-être que la personne qui va les modifier ça va être moi-même donc j’ai intérêt à ce que ça soit relisible. Et en même ils sont suffisamment techniquement détaillés pour produire les exécutables qu’on utilise partout.
Donc nous on se focalise sur les codes sources et pourquoi les codes sources ? Parce que justement, comme ils sont faits pour être lus par des êtres humains, ils ont la propriété qu’on pourra toujours les relire et comprendre ce qu’ils font, même quand les machines sur lesquelles ils pouvaient s’exécuter n’existeront plus.

Caroline Lachowsky : Autour de la question, pourquoi et comment l’heure est venue de collecter et de partager tous ces codes sources de nos logiciels en toute liberté, petit rappel historique et chronologique de cette informatisation de notre monde. C’est le mix forcément codé et programmé par ???

7’ 08

Diverses voix off : Le premier programmeur au monde est une programmeuse. Et ça, c’est l’histoire d’Anna Lovelace ; elle s’est passionnée pour la machine analytique. Dans une de ses notes, elle décrit l’enchaînement d’instructions qu’il faut donner à la machine pour réaliser une suite mathématique, mais pas seulement l’algorithme qui permet de réaliser cette suite, elle décrit jusqu’à la position des rouages. Et ça, traduire un algorithme dans une séquence d’instructions qu’il faut donner à un ordinateur pour qu’il le réalise, c’est de la programmation informatique.

C’est incroyable ça !

Là c’est un ordinateur qui ne peut rien faire comme ça. Ce qu’on fait c’est qu’on prend une cassette et, à partir de là, cette cassette contient des programmes pour l’ordinateur et, vous avez vu, j’ai appuyé sur un bouton, j’appuie sur autre bouton et on va charger le programme.

Ah vous êtes le nouveau prof d’informatique, c’est ça ?

J’ai décidé de porter la liberté aux utilisateurs de l’informatique. Le but est d’éliminer le logiciel pas libre et de le remplacer par du logiciel libre. Le logiciel privateur ne doit pas exister.

Tant mieux, parce que moi j’adore ça la liberté !

Il n’y a pas un catalogue central de tous les logiciels nous utilisons tous des plateformes diverses et variées, pour développer, pour distribuer.

C’est là Alexandrie, qui met en place un projet qu’il a imaginé pour la Grèce c’est-à-dire réunir tous les savoirs du monde au même endroit. L’idée est magnifique, il faut juste la réaliser !

Ouais, il n’y a plus qu’à réunir les gars maintenant.

Caroline Lachowsky : Il n’y a plus qu’à, Roberto Di Cosmo, c’est vite dit sauf que c’est un travail de titan, monumental. Est-ce qu’on pourrait avoir une idée, après ce résumé de l’informatique au cours de notre siècle – on a même entendu Richard Stallman, celui qui nous met en avant les logiciels libres –, est-ce qu’on peut avoir une idée du volume de données monstrueux que vous avez à traiter pour cette bibliothèque universelle des logiciels ?

Roberto Di Cosmo : En réalité, effectivement, c’est une très bonne question : il y a combien de codes sources logiciels informatiques ??? Je peux vous dire déjà ce que nous avons trouvé. Au bout de quatre ans de travail, parce qu’on a quand même commencé à travailler il y a un petit moment pour construire l’infrastructure.

Caroline Lachowsky : L’infrastructure de cette bibliothèque universelle des logiciels et commencé à les collecter ; c’est ça ?

Roberto Di Cosmo : Eh oui, exactement, commencé à les collecter. Parce que si vous voulez, d’une certaine façon on a besoin de construire une infrastructure, un énorme aspirateur qui se connecte aux différents endroits sur la planète dans lesquels on développe les logiciels, en particulier, en premier lieu, les logiciels libres et qui les récupèrent avec toute leur histoire de développement. Donc on sait en détail quelle ligne de code a été rajoutée par qui, à quel moment, pourquoi ; ça c’est vraiment passionnant et fascinant. Là, aujourd’hui, on a déjà identifié plus de 80 millions d’origines à partir desquelles on récupère ces logiciels et après, en regardant ce qu’il y a là-dedans, on a trouvé plus de 4 milliards et demi de fichiers sources tous différents, parce qu’un même fichier source peut-être réutilisé à plusieurs endroits mais nous on ne le garde qu’une seule fois ; donc il y a plus de 4 milliards et demi de fichiers sources tous différents qui ont été développés. Dans notre bibliothèque, si vous regardez, le logiciel le plus ancien date des années 70, voire un peu avant, et le logiciel le plus moderne date peut-être d’hier, parce qu’on ne collecte pas seulement le passé, mais aussi tout ce qui se développe aujourd’hui.

Caroline Lachowsky : Vous m’avez montré sur votre ordinateur tout à l’heure le code source d’Apollo. Incroyable, avec des commentaires en plus, Roberto Di Cosmo.

Roberto Di Cosmo : Absolument. Si vous regardez, dans cette énorme bibliothèque on trouve de vrais trésors. Un de ces trésors que j’adore particulièrement c’est le code source du système de commande de l’Apollo 11 qui a plusieurs particularités. Tout d’abord parce qu’effectivement, là on a mentionné Ada Lovelace, mais la personne qui a piloté l’équipe qui a développé ce logiciel s’appelle Margaret Hamilton ; c’est une dame incroyable.

Caroline Lachowsky : Une femme informaticienne.

Roberto Di Cosmo : Une femme informaticienne qui a 82 ans aujourd’hui. J’ai eu la chance de la rencontrer il y a quelques mois lors d’une conférence internationale ; elle est toujours aussi brillante, aussi géniale que ce qu’elle était à l’époque où elle développait ces codes-là.
Donc on trouve de vrais trésors, parce que vous voyez, à l’époque, l’ordinateur de l’Apollo 11 c’était un ordinateur qui était très avancé pour l’époque mais qu’on programmait avec des langages informatiques qui étaient de très bas niveau, très proches de la machine donc on souffrait beaucoup pour programmer tout ça et donc on mettait énormément de commentaires. Les commentaires sont faits pour des êtres humains, pour leur dire « regarde les instructions suivante va faire telle ou telle autre chose ». Et ce qu’on a regardé ensemble tout à l’heure, justement il y avait un fragment du programme d’allumage des réacteurs de l’Apollo 11 qui est développé d’une façon un peu particulière ; du coup les commentaires des développeurs sont géniaux parce qu’il y a un des développeurs qui écrit, qui reprend l’ancienne devise honni soit qui mal y pense, c’est-à-dire « ne pensez pas mal ; si on a codé comme ça on n’avait pas le moyen de faire mieux » et plus tard un ??? qui écrit no ???, « ne pas toucher si vous ne savez pas ce que vous faites ». Ça c’est une partie qui est super délicate dans les commandes de l’Apollo 11.

Caroline Lachowsky : Que ce soit pour l’Apollo ou pour les commandes d’un avion, il ne vaut pas toucher le code source.

Roberto Di Cosmo : Il vaut mieux ne pas toucher si on ne sait pas ce qu’on fait. D’accord ! Il faut un peu regarder. Donc on peut encore relire tout ça et en révisant ces codes on voit vraiment une histoire passionnante et, vous voyez, les instructions pour l’ordinateur vont finir dans l’ordinateur, mais les commentaires ne disent rien à l’ordinateur ; ils nous parlent à nous, ils nous racontent une histoire humaine. L’histoire de l’informatique est une histoire d’êtres humains, d’hommes et de femmes qui ont travaillé ensemble, qui ont passé des nuits et des jours de passion pour construire cette ??? logique qui change le monde d’aujourd’hui.

Caroline Lachowsky : Qui change le monde d’aujourd’hui.

Roberto Di Cosmo : Et c’est cette histoire qu’on veut construire.

Caroline Lachowsky : Voilà. Vous voulez construire cette histoire et vous nous montrez aussi que ces logiciels, ces codes sources, sont quoi ? Des sortes d’objets vivants, enfin sur lesquels on peut travailler aussi aujourd’hui encore.

Roberto Di Cosmo : Absolument. C’est tout à fait ça. C’est important de comprendre que les codes sources des logiciels sont des objets nobles. Ce sont des créations de l’esprit humain ; ils sont développés par des êtres humains et maintenant, comme la complexité technologique grandit énormément, très souvent ce sont des gros logiciels. Prenez les navigateurs internet comme Firefox, prenez des systèmes de base de données comme PostgreSQL ou d’autres, du traitement d’images comme Gimp, ce sont des logiciels qui font des centaines, des milliers, voire des millions de lignes de code, et une seule personne ne peut pas se permettre d’écrire tout ça toute seule, donc on écrit de façon collaborative et on travaille ensemble sur cet objet, sur des plateformes qu’on appelle souvent des forges logicielles pour travailler ensemble. Et c’est fascinant. Par exemple, si on veut comparer avec la littérature. Le code source on l’écrit, on l’écrit comme on écrirait un texte, et là aussi c’est important de savoir pourquoi tel texte a été écrit de telle façon. Dans notre approche traditionnelle à la littérature, d’abord on sélectionne les livres qui sont importants et une fois qu’on a trouvé un livre qui est important, je ne sais pas, de Zola, de Hugo, eh bien on passe des nuits et des semaines et des années avec des étudiants dans les bibliothèques à chercher les lettres, les notes, les brouillons de ces écrits.

Caroline Lachowsky : Comment ont été écrits ces chefs-d’œuvres.

Roberto Di Cosmo : Pourquoi ils ont décidé d’écrire comme ça, etc. Alors dans le monde de l’informatique, pour les besoins de l’informatique, on garde la trace de tous ces développements au moment où on développe. Du coup, il y a peut-être des logiciels qui ne sont pas très intéressants, ce n’est pas grave, mais quand on a un logiciel intéressant, on a toute cette trace. Donc nous gardons non pas seulement des codes sources mais aussi toute la trace de développement.

Caroline Lachowsky : La trace humaine derrière ! On reconnaît bien l’humaniste et informaticien que vous êtes, Roberto Di Cosmo, et vous avez choisi évidemment d’écouter Birdy sur RFI People Help The People.

[Pause musicale]

16’ 55

Caroline Lachowsky : Birdy sur RFI, People Help The People.