10 ans

«A vite produire du code, on est aussi devenus plus négligents»

| mise à jour

Chercheur chez Microsoft avant d’être nommé doyen de la faculté d’informatique de l’EPFL, James Larus est un observateur privilégié des changements qu’a connus l’IT durant la dernière décennie. S’il se réjouit du cloud, du smartphone et des réseaux sociaux, il s’étonne que l’on ait mis si longtemps à en voir les dérives. Il revient également sur l’évolution du développement logiciel et de l’intelligence artificielle et critique la mode actuelle du «fail fast».

James (Jim) Larus est doyen de la faculté IC (informatique et communications) de l’EPFL. (Source: ICTjournal)
James (Jim) Larus est doyen de la faculté IC (informatique et communications) de l’EPFL. (Source: ICTjournal)

Avant de rejoindre l’EPFL, vous faisiez de la recherche dans le secteur privé. Vous souvenez-vous des projets sur lesquels vous travailliez il y a 10 ans?

J’étais chez Microsoft Research. Je crois que je démarrais mon dernier grand projet au sein de l’Extreme Computing Group. Ces travaux ont notamment permis le développement des puces FPGA qui équipent aujourd’hui toutes les machines d’Azure pour le réseau ou encore le machine learning. Je travaillais aussi sur Orleans, un environnement de développement pour la programmation distribuée, qui est je crois employé aujourd’hui pour certains services de Xbox, et qui est passé en open source. Il est d’ailleurs disponible sur Github.

Vous évoquez GitHub, vous attendiez-vous à ce que cette plateforme soit rachetée par Microsoft?

Je ne m’y attendais pas, mais j’ai été plus surpris encore par le fait que Microsoft emploie Github et par son ouverture récente à l’égard de Linux et de l’open source. Cela semblait impensable à l’époque, même si nous avions beaucoup de développeurs qui employaient et appréciaient Git.

Quel est pour vous le changement le plus marquant de la dernière décennie dans le domaine informatique?

Probablement l’iPhone. On ne pourrait plus vivre sans smartphone, c’est devenu l’outil à tout faire. L’essor des réseaux sociaux est un autre changement ayant un énorme impact, pour le meilleur ou pour le pire.

Après avoir suscité un grand enthousiasme, les réseaux sociaux sont aujourd’hui l’objet de critiques. Comment interprétez-vous ce renversement?

Effectivement, on se focalise aujourd’hui sur les aspects négatifs des réseaux sociaux. Mais cela n’enlève rien à leur succès. Des millions de personnes passent chaque jour des heures sur ces plateformes et ils le font pour une bonne raison. Je suis en revanche étonné qu’il ait fallu aussi longtemps pour que l’on prenne conscience des dangers qu’ils représentent en matière de confidentialité et de protection de la sphère privée. Je donne par exemple un cours de 1ère année qui aborde les questions de privacy et de tracking et je constate à quel point les étudiants se sentent peu concernés par ces aspects: ils apprécient le fait d’obtenir des services gratuits et acceptent qu’il faille pour cela accepter certaines pratiques publicitaires. Mais les choses changent. L’usage qui a été fait des réseaux sociaux durant la campagne des présidentielles américaines a fait bouger les lignes. La liberté d’expression est une valeur centrale dans les pays anglo-saxons. Elle repose toutefois sur le fait que l’on est exposé à des opinions différentes qui sont débattues dans un espace public commun. Avec les réseaux sociaux, on risque en revanche d’être enfermés dans une bulle avec des gens qui pensent la même chose.

Parlons risque justement. Pensez-vous que les entreprises sont aujourd’hui davantage vulnérables à des cyberattaques?

Le risque a toujours été élevé. Je pense que les développeurs sont attentifs à la sécurité et que les logiciels actuels sont plus sûrs qu’il y a 20 ans. Ce qui a changé c’est que les attaques sont devenues plus virulentes et qu’elles sont perpétrées par des professionnels et des gouvernements pour des raisons financières ou politiques. Le transporteur maritime Maersk a par exemple vu son infrastructure IT entièrement détruite et ses opérations paralysées par le malware NotPetya. Je n’ose pas imaginer les dégâts de telles attaques si elles étaient dirigées contre des infrastructures critiques. C’est une situation inquiétante et qui n’est pas facile à résoudre.

L’adoption des smartphones et des apps a fait exploser le domaine du développement. Que pensez-vous de cette évolution?

C’est vrai, tout le monde veut devenir un développeur, quand ce n’est pas un entrepreneur. On le constate partout, y compris à l’EPFL où nous avons trois fois plus d’étudiants inscrits en 1ère année qu’il y a 10 ans. Aujourd’hui, beaucoup de personnes développent des logiciels. La programmation n’est pas plus facile pour autant, mais elle a énormément changé. Au début de ma carrière, il n’y avait pas autant de librairies et il fallait écrire tout le code par soi-même. Aujourd’hui, une grande part du savoir des développeurs consiste à connaître des quantités de librairies compliquées tout à fait fonctionnelles pour les réutiliser dans leurs logiciels. On a sans doute gagné en productivité et on peut développer des logiciels de qualité, vu que les éléments ont été maintes fois utilisés et testés. L’inconvénient, c’est qu’à produire vite, on est aussi devenus plus négligents. On se dit qu’on pourra toujours patcher si nécessaire. Le contraste est marquant avec le monde des concepteurs microprocesseurs, où une erreur peut coûter des dizaines de millions et des mois de perdus.

L’époque est à l’agilité…

Les nouvelles méthodes comme Agile ont beaucoup d’atouts, mais la facilité avec laquelle on peut aujourd’hui faire des releases et corriger ses erreurs ne conduit pas à des logiciels de grande qualité. Je suis étonné quand Facebook se vante de procéder chaque jour à quantité de releases ou de laisser ses développeurs débutants mettre leur code en production. Il est difficile d’enseigner le développement de qualité à des étudiants auxquels on ne cesse de répéter les vertus de l’échec. Cette mentalité du «fail fast, fail often» est particulièrement présente dans la Silicon Valley. Pour moi, il s’agit souvent d’une excuse pour ne pas faire les choses correctement.

Que pensez-vous de l’essor du cloud computing ces dix dernières années?

C’est une évolution très positive. Quelle entreprise souhaite gérer ses systèmes par elle-même? Les géants du cloud réalisent d’importantes économies d’échelle, et ils disposent d’une expertise et d’une expérience considérable. Amazon a fait figure de pionnier en développant un stack de services impressionnant et qui ne cesse de se sophistiquer. Ces solutions apportent beaucoup de flexibilité. Je me souviens du temps où, avant de créer un site internet, il fallait attendre des mois pour que les machines soient livrées. De peur de manquer de capacité en cas de succès, on achetait des serveurs à l’excès, avec pour résultat quantité de machines inutilisées. C’était un désastre en matière de durabilité. L’élasticité du cloud et le fait de payer uniquement ce que l’on utilise représentent une avancée importante.

A votre avis, quelles technologies vont marquer les dix prochaines années? On parle beaucoup du potentiel de l’intelligence artificielle…

L’intelligence artificielle a fondamentalement changé. Par le passé, on cherchait à écrire des programmes reproduisant l’intelligence humaine. Je me souviens de chercheurs travaillant sur la compréhension du langage avec des résultats peu convaincants, alors qu’on obtient aujourd’hui des solutions performantes. Idem pour la reconnaissance d’images. Ces progrès sont dus au fait que l’intelligence artificielle actuelle repose non plus sur des programmes mais sur des statistiques appliquées et des systèmes apprenant à partir d’exemples étiquetés. Je pense que beaucoup de choses qui sont aujourd’hui programmées, seront à l’avenir entraînées et prises en charge par des algorithmes intelligents. Des tâches nécessitant une grande exactitude, comme la comptabilité, continueront à être effectuées par des programmes. Mais l’intelligence artificielle permettra de développer des solutions pour des choses que l’on est incapable de programmer, comme le fonctionnement d’une voiture autonome. Il faudra néanmoins accepter et expliquer que ces systèmes sont certes efficaces, mais imparfaits et sujets à des erreurs inédites. L’essentiel étant en fin de compte qu’ils soient plus fiables que ne le serait un conducteur humain. Je pense que l’emploi du machine learning va s’étendre à beaucoup de domaines.

Il va donc falloir former de nouveaux types de talents…

Entraîner un système de machine learning est davantage un art qu’une science. Il est difficile de l’enseigner. Il n’existe pas de corpus de connaissances indiquant comment procéder dans tel ou tel cas. Il faut donner des exemples aux étudiants et espérer qu’ils développent ce talent. C’est pourquoi il y a une si grande demande en experts en machine learning: on ne peut pas vraiment les former. Mais il ne faut pas négliger l’effet du buzz actuel qui fait que toutes les entreprises veulent elles aussi faire du machine learning. Alors que, dans bien des cas, elles pourraient tout aussi bien arriver à une solution avec de simples outils statistiques. Sans compter qu’elles n’ont souvent pas les volumes de données nécessaires à l’entraînement des systèmes de machine learning.

Quelle sera à votre avis l’importance de la technologie blockchain?

L’EPFL a inauguré l’an dernier le Center for Digital Trust, qui prouve combien nous jugeons cette technologie utile, au-delà du bitcoin. Nous avons d’ailleurs testé un usage particulièrement intéressant de la blockchain dans le cadre d’une élection interne, avec une solution mise au point par le laboratoire de Bryan Ford. Avec ce système, toute organisation présente sur le campus aurait pu opérer un serveur et vérifier la validité des résultats via un protocole de consensus. A condition de résoudre certains problèmes, notamment en matière d’identité, une solution analogue pourrait un jour servir à des élections publiques et contribuer à restaurer de la confiance dans les processus politiques. C’est quelque chose qu’il serait difficile de réaliser avec une autre technologie; je trouve cela bien plus intéressant que le lancement de telle ou telle nouvelle cryptomonnaie…

Webcode
DPF8_108434