30 / 07 / 2014

Leslie Lamport : « A l'heure où l'informatique est de plus en plus complexe, structurer notre pensée devient essentiel »

  • Linkedin
Leslie Lamport : « A l'heure où l'informatique est de plus en plus complexe, structurer notre pensée devient essentiel »

A l’occasion de l’un de ses passages en France, où il collabore régulièrement avec les chercheurs de l’INRIA, nous avons rencontré Leslie Lamport Prix Turing 2013. Mathématicien de formation, il est devenu l’un des chercheurs les plus prolifiques et importants en informatique. On lui doit notamment la création de nombreux algorithmes utilisés quotidiennement par nos ordinateurs pour s’échanger des informations de façon fiable. Alors que le numérique occupe de plus en plus une place centrale dans notre société, ce scientifique émérite nous a partagé son point de vue sur les progrès de l’informatique et la présence croissante des algorithmes dans nos vies. Rencontre.

RSLN : A vos débuts, vous considériez que l’informatique n’était pas une science et aujourd’hui, vous avez reçu la plus haute distinction pour vos travaux scientifiques en la matière, le Prix Turing. Comment votre carrière a-t-elle pris un tel tournant ?

Leslie Lamport : Quand j’ai commencé ma carrière, je ne voyais pas l’informatique comme une science parce qu’il n’y avait pas beaucoup d’universités qui s’y consacraient et que j’étais trop jeune. Je voyais la programmation comme un travail de charpentier, rien de plus et je préférais les mathématiques. Cela m’a pris plus d’une décennie avant de changer de regard, de comprendre que l’informatique était une discipline scientifique.

Cela s’est produit parce que l’un de mes collègues, que je voyais comme un mentor, me demandait régulièrement de résoudre des problèmes de programmation. Il voulait sans cesse que je simplifie ou que je raccourcisse des lignes de code. C’était un défi à chaque fois. C’est là que je me suis rendu compte que je voulais faire de la recherche pour résoudre ce type de problèmes complexes, sauf qu’à l’époque, la recherche en informatique était surtout industrielle. Aujourd’hui, je travaille en France dans l’une des rares institutions universitaires entièrement dédiée à la recherche en informatique [l’INRIA, ndlr]. Mes collègues et moi pouvons nous y consacrer pleinement.

RSLN : Dans l’un de vos plus célèbres articles scientifiques, Solved Problems and Unsolved Problems And Non Problems in Currency, vous distillez de nombreuses blagues, racontez un problème enfantin entre un certain Bob et une certaine Alice, et finissez par une citation d’Einstein, pour qui une théorie devrait pouvoir s’expliquer à un enfant de 13 ans. Est-ce toujours cet état d’esprit audacieux et un peu « hors normes » dans la communauté scientifique qui guide votre travail ?

L.L. : Une des raisons de mon succès est que j’écris beaucoup ! Et au-delà de mes publications, j’essaie toujours de mettre en ordre mes pensées par écrit, de les décrire précisément. Soit avec un langage de spécifications, comme le TLA + que j’ai développé par exemple et qu’utilise Amazon, ou avec de la prose selon la nature du problème. Ecrire est difficile mais c’est un pli à prendre, un peu comme la course à pied, et c’est une activité essentielle. Aujourd’hui, les programmes informatiques ne fonctionnent pas aussi bien qu’ils le devraient et c’est principalement parce que les programmeurs ne mettent pas toujours leurs pensées par écrit avant de coder. Or le langage le plus précis que l’on ait inventé pour décrire un problème, ce sont les mathématiques. Mon travail s’oriente donc dans cette direction (même si c’est une chose que j’ai fait tout du long de ma carrière) : convaincre les développeurs d’écrire leurs pensées de façon claire mais aussi précise. Car si l’on pense bien, on travaille bien, c’est aussi simple que cela.

RSLN : Justement, vous accomplissez une entreprise de simplification des processus informatiques complexes qui sont à l’œuvre dans le dialogue machines/machines depuis vos débuts, pourquoi vous consacrer à cette tâche en particulier ?

L.L. : A l’heure où les logiciels et les ordinateurs sont devenus très complexes, la simplicité est essentielle. Elle permet de comprendre comment les ordinateurs fonctionnent et quels problèmes ils peuvent poser… C’est presque plus important de comprendre le problème que de trouver la solution. Et l’une des choses que j’ai apprise en tant que mathématicien, c’est de réduire les problèmes à une base simple. Dans le cas des systèmes distribués par exemple, où plusieurs ordinateurs s’envoient et reçoivent des messages dans tous les sens, on est dépendant d’un processus parfois désordonné. Il faut alors faire en sorte que les différents ordinateurs s’entendent sur un même fonctionnement, acceptent qu’il puisse exister des défaillances et soient en mesure de déterminer les ordinateurs qui en sont responsables. En parvenant à comprendre d’où vient ce problème d’entente mutuelle entre les ordinateurs, on peut alors cibler une solution à mettre en œuvre pour un système fonctionnel.

RSLN : Le prix Turing vous a notamment été desservi pour ce travail ainsi que celui sur les algorithmes du cliché distribué, le développement du langage TLA+… Pourriez-vous nous expliquer comment ces mathématiques complexes nous sont utiles au quotidien ?

L.L. : J’ai créé différents algorithmes pour que les machines soient en mesure de s’entendre sur l’état d’un système distribué. C’est-à-dire qu’en cas de panne du système informatique d’une banque par exemple, le système détecte le bug et le signale, au lieu de vous dire qu’il vous reste un montant erroné sur votre compte par exemple. J’ai écrit un premier algorithme qui part du postulat que les machines se comportent comme des machines, sauf que parfois, les ordinateurs se comportent comme de petits menteurs : ils disent une chose à un ordinateur et son contraire à un autre. J’ai dès lors travaillé avec mes collègues sur l’algorithme des généraux byzantins, en référence à un épisode historique célèbre où il fallait composer avec des traîtres. Ce travail a intéressé des laboratoires de recherches (le SRI par exemple) puisque dans l’aéronautique notamment, les systèmes informatiques doivent être capables de gérer tout type de faille au plus vite. Et alors que de plus en plus de réseaux d’ordinateurs sont développés, ce genre de comportements et leurs conséquences problématiques sur la sécurité devaient être résolus. On a ainsi repensé la notion d’horloge logique [qui porte le nom d’Horloge de Lamport, ndlr], et avec l’algorithme de Paxos, on a aussi résolu le problème de mettre en oeuvre n’importe quel automate avec des systèmes répartis. On utilise notamment cet algorithme pour le fonctionnement dans le Cloud, car à la base de ce service, des ordinateurs doivent décider quels ordinateurs fonctionnent ou non et distribuer, en conséquence, un travail à d’autres ordinateurs.

RSLN :  Du coup, sans vous, pas de sites de réservation de vacances en ligne qui ne marche ni de cloud computing fiable pour faire fonctionner les plus grands sites du monde. Quel effet cela vous fait d’avoir ainsi œuvré pour l’amélioration de l’informatique (quand le plus grand nombre ignore pourtant l’importance qu’ont eu vos travaux dans cette entreprise) ?

L.L. : Mon seul mérite en fait est d’avoir inventé une solution avant qu’elle devienne évidente pour tout le monde ! Gagner un grand prix m’a permis de me poser, de regarder le chemin parcouru et il est vrai que je suis assez fier d’avoir contribué à faire du monde des systèmes distribués un endroit plus sûr.

RSLN : Les algorithmes nous préparent-ils vraiment un monde plus sûr selon vous,  à l’heure où beaucoup entrevoient un futur où les machines prendraient des décisions morales à notre place ? 

L.L. : Obtenir un prix ne m’a pas rendu meilleur que d’autres pour prédire l’avenir, mais je sais qu’une des façons de l’appréhender passe par la compréhension des différentes dynamiques à l’œuvre dans le monde, et les mathématiques peuvent nous y aider. Les ordinateurs seront un jour meilleurs que n’importe quel docteur pour effectuer un diagnostic, mais cela soulève de nombreuses questions. Si nous voulons que les ordinateurs prennent un jour des décisions à notre place, nous devons d’abord nous entendre sur ce que signifie « prendre une décision », et notamment une décision morale.

RSLN : Les algorithmes qui nous rendent service tous les jours deviennent de plus en plus performants mais aussi de plus en plus complexes, n’y a-t-il pas un risque à voir la majorité de la population incapable de comprendre comment ils fonctionnent ? Comment modérer ce risque selon vous : en devenant tous codeurs ?

L.L. : L’éducation est indispensable pour comprendre le monde dans lequel nous évoluons, mais se former ne doit pas seulement passer par l’université ou un seul centre d’intérêt. Dans quelques années, un certain nombre d’enseignements seront déjà obsolètes. Ce que nous apprennent les mathématiques, la philosophie ou la littérature en revanche nous enrichit pour toute une vie, et c’est essentiel. Certaines disciplines comme la sociologie, ont pris une place capitale avec l’avènement des réseaux sociaux, et les sociologues sont aujourd’hui très recherchés dans l’industrie. Qui aurait pu le prédire ? Apprenez ce que vous aimez et aimez ce que vous apprenez. C’est mon principal conseil !