Le code coule de Les doigts de Feross Aboukhadijeh.
En tant que passionné du mouvement des logiciels open source, il a écrit des applications Web immensément populaires, des échanges de fichiers peer-to-peer et plus de 100 autres morceaux de code qu’il a donnés, le tout au cours des 10 années qui ont suivi l’obtention de son diplôme universitaire. . Dernièrement, cependant, Aboukhadijeh est entré dans un nouveau type d’état de flux, aidé par un outil appelé Copilot. C’est un logiciel artificiellement intelligent qui fait une partie de la dactylographie et de la réflexion à sa place.
Construit par OpenAI, le laboratoire de recherche privé, et GitHub, le site Web appartenant à Microsoft où les programmeurs partagent du code, l’outil est essentiellement à saisie semi-automatique pour le développement de logiciels. Tout comme Gmail essaie de terminer une phrase au fur et à mesure que vous l’écrivez, Copilot propose de terminer une partie de votre programme. L’outil a été lancé l’été dernier pour un groupe restreint de codeurs.
Aboukhadijeh a rapidement découvert que Copilot était bon, presque troublant. Il commençait à taper une ligne de code et, en quelques secondes, l’IA comprenait où il se dirigeait – puis, boum, les quatre ou cinq lignes complètes suivantes s’affichaient sous forme de texte gris clair, qu’il pouvait accepter en appuyant sur Tab . Quand il l’a vu produire un code propre qui faisait exactement ce qu’il avait l’intention, il l’a trouvé un peu étrange. « Comment obtient-il ces prédictions? » se souvient-il s’être demandé. « Certains d’entre eux sont vraiment étranges. »
Pendant des semaines, Aboukhadijeh a gardé Copilot allumé pendant qu’il travaillait. Il a découvert qu’il avait d’autres trucs impressionnants; il pouvait même comprendre les commandes qu’il écrivait en anglais de base. S’il tapait simplement dans son éditeur de code « Écrire une fonction qui met en majuscule chaque mot d’un document », Copilot assemblerait ce code tout seul. Il vérifiait qu’il n’y avait pas d’erreurs; parfois c’était le cas.
De plus, l’outil était améliorer son code. A un moment, par exemple, Aboukhadijeh avait besoin de son logiciel pour reconnaître plusieurs formats différents de documents texte, alors il a lourdement listé tous les formats, un par un, dans son code. Copilot a plutôt recommandé une seule commande lapidaire qui les a élégamment balayés tous ensemble.
« J’étais comme, comment est-ce que ça a même… ? » dit-il, s’interrompant avec stupéfaction. Il ne pense pas qu’il éteindra jamais Copilot.
Et il n’est pas le seul : neuf mois après le lancement de Copilot, des dizaines de milliers de programmeurs ont essayé le logiciel. J’ai parlé à 15 codeurs qui l’ont utilisé, et la plupart, comme Aboukhadijeh, ont constaté que cela accélère considérablement leur rythme, même s’ils étaient parfois paniqués par sa qualité. (« Juste époustouflant », comme l’a dit Mike Krieger, qui a codé l’Instagram original.) Certes, ils ont également remarqué qu’il faisait des erreurs, allant de stupides à d’une subtilité affligeante. GitHub et OpenAI ont suivi les performances de Copilot grâce à des données anonymisées sur le nombre de lignes suggérées que les codeurs acceptent et combien ils stockent ensuite sur GitHub. Ils ont découvert que l’IA écrit 35 % du code nouvellement publié par ses utilisateurs.
Depuis que les ordinateurs sont apparus, les gens ont cherché des moyens de les rendre plus faciles à programmer. Les toutes premières programmeuses américaines, les femmes qui ont créé des instructions pour la machine ENIAC en 1945, avaient un travail presque ridiculement difficile : elles devaient construire la logique avec des fils. Dans les années 50, les cassettes et les cartes perforées facilitaient un peu le travail. Puis sont venus les langages de programmation avec une syntaxe proche de l’anglais, dont certains, comme Basic ou Cobol, ont été explicitement conçus pour encourager les néophytes. Dans les années 90, des langages tels que Python ont automatisé certaines des parties les plus difficiles et les plus frustrantes du codage, comme la gestion de la mémoire. Dans les années 2000, le mouvement open source a créé une génération de programmeurs qui écrivent rarement à partir de zéro.
Inutile de dire que l’image hollywoodienne d’un codeur tapant frénétiquement des tonnes de code par lui-même n’est plus vraie depuis des années. En assemblant des morceaux écrits par d’autres, les individus peuvent créer des applications beaucoup plus sophistiquées qu’il n’aurait été possible il y a 20 ans. Copilot promet d’être la prochaine étape importante dans cette trajectoire de plusieurs décennies.