- Avec l’arrivée des outils de codage LLM, le postulat fondamental du développement logiciel qui tenait depuis des décennies s’est effondré, et la compétence clé n’est plus l’écriture du code mais la capacité à définir le problème et à concevoir la structure
- Le cœur du développement est en train de se déplacer : ce n’est plus « savoir bien écrire du code », mais la capacité à formuler, c’est-à-dire à imaginer un problème et à l’expliquer clairement
- Une structure de code propre, un README bien organisé et une bonne documentation ne sont plus des signaux fiables de sérieux ou d’expertise ; au contraire, plus c’est trop parfait, plus il y a de chances que ce soit du slop
- À mesure qu’il devient pratiquement impossible de distinguer visuellement le code généré par l’IA de celui écrit par des humains, ce ne sont plus la qualité mais la responsabilité, la provenance et l’humanité qui déterminent la valeur du code
- Les incitations à collaborer et à partager qui soutenaient l’écosystème FOSS s’affaiblissent, et la confiance, la gouvernance et la capacité de curation deviennent des actifs plus importants que le code lui-même
- Ces outils sont de puissants amplificateurs pour les développeurs expérimentés, mais pour les débutants, ils peuvent devenir un génie dangereux susceptible de leur enlever l’occasion de construire une compréhension de base
Introduction : l’adage de Linus Torvalds et son renversement
> "Talk is cheap. Show me the code"
- En 2000, cette phrase de Linus Torvalds symbolisait l’idée que les paroles n’ont pas de valeur tant qu’elles ne sont pas prouvées par du code réel
- À l’époque, même avec un plan de développement très clair, implémenter un programme complexe demandait en soi un effort immense, du temps et une répétition fastidieuse
- Le véritable goulot d’étranglement n’était pas la technologie mais les limites humaines : la bande passante cognitive, le temps et l’énergie individuels, ainsi que le coût biologique de devoir garder en tête l’ensemble d’un grand système tout en écrivant le code ligne par ligne
- En conséquence, la plupart des idées finissaient empilées dans une wishlist de “ce que j’aimerais essayer un jour”, puis disparaissaient sans même être tentées
25 ans plus tard : les LLM renversent tout
- En 2025, Linus Torvalds a fusionné du code généré par IA dans son projet hobby, en déclarant : « Est-ce meilleur que ce que j’aurais écrit moi-même à la main ? Bien sûr. »
- Du point de vue d’un auteur de logiciels depuis des décennies, l’auteur affirme sans détour que le développement logiciel tel que nous le connaissions est déjà terminé
- En tant que génération ayant vécu directement les nombreuses transitions, du dial-up au gigabit, de Basic à Node.js, de SourceForge à GitHub, il reconnaît clairement que ce changement n’est pas une mode passagère mais une rupture qualitative
Effondrement des critères d’évaluation de la qualité du code
- Autrefois, pour évaluer un projet FOSS, l’ancienneté du projet, la fréquence des commits, la cohérence de la structure du code, la qualité du README et de la documentation servaient de critères importants
- Des commentaires concis et une documentation bien organisée étaient perçus comme des signaux de réflexion et d’attention portée aux autres développeurs
- Mais depuis que les LLM peuvent générer d’un coup des pages de documentation abouties, des README excessivement détaillés, des interfaces propres, des patterns ordonnés et des commentaires, ces signaux ne fonctionnent plus
- Il devient donc difficile de distinguer, à l’apparence seule, si un dépôt a été fabriqué en vibe coding par un non-technicien ou s’il s’agit du résultat conçu par un développeur expérimenté
- Paradoxalement, plus quelque chose paraît trop parfait, plus il faut soupçonner qu’il s’agit d’une génération one-shot à faible effort
- Sans examen et analyse de niveau expert, il devient de plus en plus difficile de distinguer le bon grain du slop
- En conséquence, plus encore que le code lui-même, qui l’a produit, pourquoi, avec quel historique, et s’il existe une gouvernance et un plan de maintenance deviennent des éléments de jugement centraux : autrement dit, la provenance
L’évolution de la valeur de l’effort
- Autrefois, un développeur expérimenté devait passer par un long processus de concentration et d’amélioration répétée pour produire 10 000 lignes de code de qualité donnant un résultat significatif
- Le nombre de lignes n’est pas en soi une mesure de qualité, mais 10 000 lignes bien raffinées impliquaient du temps, de la concentration, de la patience, de l’expertise et un certain niveau de gestion de projet
- Les LLM peuvent désormais générer ce type de résultat en quelques secondes à peine, en couvrant l’ensemble du workflow technique, des tests à la configuration système et au déploiement
- Lorsque l’expertise et le jugement humains interviennent avec eux, le résultat peut atteindre une qualité suffisamment élevée pour un usage réel
- L’auteur a lui-même vécu à plusieurs reprises l’expérience de terminer en quelques jours, parfois en quelques heures, un travail qui aurait autrefois pris des semaines ou des mois
- Cela a été possible avec un simple agent CLI basé sur un LLM, sans AGENT.md ni orchestration complexe multi-agents
- Le coût physiologique, cognitif et émotionnel autrefois payé pour obtenir un résultat logiciel a diminué de plusieurs ordres de grandeur
- Le temps et l’espace mental ainsi libérés sont réinvestis dans la réflexion d’ingénierie, la conception d’architecture, la discussion, l’expérimentation et l’expansion de l’imagination
- L’ancienne formule « programmer, c’est 90 % de réflexion et 10 % de frappe » n’est plus une métaphore mais une réalité
Définition du slop et valeur du code
- Quand même quelqu’un n’ayant jamais écrit une ligne de code peut produire du code à l’échelle industrielle en quelques secondes, quelle est encore la valeur du code comme livrable en soi ?
- Dire « je ne veux que du code purement humain, pas du code IA » relève, si l’on considère la réalité, presque de la blague ironique
- Les grands incidents causés par du code écrit par des humains existent déjà en abondance : panne IT de CrowdStrike (2024), immobilisation du Boeing 737 MAX, scandale de la Poste britannique, fuite massive de données en Inde, fuite de données Equifax, etc.
- Une part considérable du code écrit chaque jour par des humains dans le monde est déjà, du point de vue de la qualité, dans une zone limite
- Le développement logiciel reste un domaine qu’il est difficile de considérer comme une discipline professionnelle objectivement arrivée à maturité
- Là où les médecins ou les ingénieurs civils doivent suivre une formation stricte, obtenir une licence et répondre de leurs résultats, il n’existe presque rien d’équivalent en développement logiciel
- La société actuelle fonctionne sur des systèmes logiciels conçus de façon lâche, bricolés à la va-vite et excessivement gonflés
- Si l’on veut forcer le trait, on pourrait même dire que le slop produit par l’IA a au moins souvent une forme propre, une documentation bien rangée et une cohérence syntaxique
- Lire les phrases et messages sans âme générés par des LLM qui remplissent Internet est de plus en plus perçu, au sens littéral, comme un gaspillage de l’activation des neurones de l’amygdale
- Dès que disparaît le processus créatif humain, avec sa perfection comme ses défauts, langage, littérature, art et musique deviennent fondamentalement impossibles à apprécier
- Ce qui peut être généré sans effort, à l’infini et instantanément devient extrêmement difficile à évaluer en termes de valeur pour les humains
Le code n’est pas de l’art
- Le code a toujours été, par essence, un moyen au service d’une fin, jamais une fin en soi
- L’utilisateur final ne lit pas le code, n’a pas besoin de le lire et ne s’y intéresse pas
- Pour l’utilisateur, il est sans importance de savoir dans quel langage, framework ou type d’architecture sont implémentés les centaines de systèmes qui tournent derrière un portail
- Le code est une présence entièrement cachée ; l’utilisateur ne fait l’expérience que des résultats et des effets qu’il produit via l’UX
- Le critère qui permet de décider si un code IA fonctionnellement identique est du slop ou non, c’est la structure de responsabilité (accountability) et le degré d’intervention humaine
- Une PR écrite et soumise directement par une personne dans un dépôt open source reçoit naturellement, indépendamment de la qualité du code, une forme d’empathie et de valeur fondée sur le temps et l’effort humains qu’elle suppose
- À l’inverse, une PR générée par un LLM suscite souvent comme première réaction « slop ! », quelle que soit sa qualité, parce qu’on ne peut pas immédiatement estimer l’effort humain qu’elle contient
- En même temps, la charge de lire et de vérifier ce code devient disproportionnée, et croît de manière exponentielle par rapport à son coût de production
- Au fond, ce n’est qu’une variation parmi une infinité d’autres, générée sans effort, sans provenance ni contexte significatifs
- À ce stade, notre réalité ressemble de plus en plus à la “Bibliothèque de Babel” décrite par Borges
L’avenir du FOSS
- Le FOSS est probablement l’un des plus grands biens publics jamais créés par l’humanité
- Au départ du FOSS, il y avait l’idée d’une époque où le logiciel était extrêmement coûteux et ne pouvait être produit que par une petite minorité d’experts
- À l’échelle mondiale, très peu de personnes pouvaient créer du logiciel, et tous les autres devaient se contenter d’en utiliser les résultats
- Désormais, même pour des besoins très de niche, un expert peut créer rapidement une petite bibliothèque exactement adaptée à son propre besoin
- Mieux encore, toute personne un minimum débrouillarde peut aujourd’hui fabriquer elle-même, en vibe coding, les petits outils dont elle a besoin pour un usage personnel
- Ce qui s’est produit sur StackOverflow est en train de se reproduire, plus lentement mais de façon similaire dans l’ensemble du logiciel
- Cela semble ébranler frontalement les motivations humaines, les conditions sociales et les incitations à participer qui soutenaient la collaboration et le partage dans le FOSS
- Si l’on considère l’explosion cambrienne de projets FOSS qui va déferler à une échelle sans précédent
- Alors, dans les projets FOSS de haute qualité qui survivront et prospéreront, la gouvernance experte, la curation et les structures de confiance pourraient devenir des actifs plus importants que le code lui-même
Les deux extrêmes qui voient l’arbre mais pas la forêt
- Même à l’époque où il n’existait ni coloration syntaxique, ni IDE, ni tous les outils d’aujourd’hui, les humains ont déjà créé des logiciels d’un niveau remarquable
- À l’inverse, même aujourd’hui, alors que les outils et les ressources débordent, on continue à produire des logiciels médiocres
- Un bon développeur expressif et soucieux de la qualité saura utiliser les LLM ou n’importe quel autre outil à sa manière pour produire de bons résultats
- À l’inverse, un développeur incapable d’expliquer le problème et indifférent à la qualité produira de mauvais résultats, qu’il utilise un LLM ou non
- Les croyants extrêmes du vibe coding « agentique » comme ceux qui rejettent totalement les LLM restent finalement fixés sur les arbres sans voir la forêt
- Il existe clairement un point d’équilibre pragmatique, où une personne dotée d’expérience, d’expertise, de capacité de réflexion et d’expression choisit les bons trade-offs pour obtenir le résultat voulu
- Le vibe coding peut aussi être un point d’entrée important pour les non-techniciens, leur permettant pour la première fois de toucher au logiciel, d’expérimenter, de s’amuser et de développer leurs compétences
- Mais ceux qui idéalisent le vibe coding manquent un élément essentiel de ce qui pousse les humains à prendre un livrable au sérieux : la finitude
- Ils finissent ainsi par construire eux-mêmes une immense bibliothèque borgésienne, où il est facile de se perdre dans une mer de slop produite par des agents flatteurs
- Des livrables générés à l’infini sans effort et sans provenance significative sont extrêmement difficiles à valoriser comme à prendre au sérieux
- Les humains sont, par nature, très mauvais pour faire face à une offre infinie, surtout à une infinité de choix
- De leur côté, les sceptiques des LLM ne dépassent souvent pas l’argument d’incrédulité
- Ils rejettent la technologie elle-même parce qu’elle ne leur plaît pas personnellement, parce qu’ils n’obtiennent pas les résultats voulus, parce qu’elle a déçu leurs attentes ou simplement parce qu’ils en sont lassés
- Mais cet argument perd de sa force face au fait qu’il existe un grand nombre de personnes qui utilisent efficacement les mêmes outils et vivent l’expérience exactement inverse
- Les implémentations stupides et nuisibles poussées par le battage médiatique, la frénésie et la cupidité sont évidemment bien réelles et constituent un sujet d’inquiétude majeur
- La bulle business de l’IA pourrait bien être l’une des plus grandes bulles de l’histoire
- Malgré cela, la diffusion des technologies d’IA FOSS reste un signal clairement porteur d’espoir
- Assimiler les mauvais acteurs, le jeu des chiffres ou les implémentations absurdes aux capacités fondamentales et physiques de cette technologie est irrationnel
Le coût humain
- Du point de vue des développeurs et ingénieurs expérimentés, ces technologies d’IA fonctionnent comme des outils d’assistance extrêmement puissants et efficaces
- Mais pour les apprenants en début de parcours et les juniors qui entrent tout juste dans le secteur, le problème est tout autre
- Si les bases manquent et qu’il ne s’est pas encore formé une compréhension intrinsèque et subtile des systèmes et du processus de développement logiciel, cette technologie ressemble davantage à un génie peu fiable et dangereux
- Demander du code et en recevoir, puis demander une modification et l’obtenir immédiatement, cela semble pratique en apparence
- Mais l’utilisateur se retrouve vite enfermé dans une base de code dont il ne comprend pas le fonctionnement, dépendant sans cesse du génie pour résoudre les problèmes
- Si cette dépendance se répète, l’environnement même dans lequel des compétences fondamentales peuvent se former naturellement disparaît, avec un risque réel de régression cognitive
- On peut alors voir apparaître toute une génération de juniors qui n’auront jamais l’occasion de devenir des seniors réellement solides
- La véritable inquiétude est que la génération des apprenants perde l’occasion d’acquérir l’expertise nécessaire pour distinguer objectivement ce qui est du slop et ce qui ne l’est pas
- Plus grave encore : même les praticiens expérimentés qui savent très bien exploiter ces outils pourraient perdre la motivation de mentorat et de formation de base des juniors
- Le risque dépasse le seul développement logiciel : il ouvre la voie à un monde où les humains délèguent entièrement leur agentivité et leur prise de décision à des boîtes noires
Conclusion : désormais, la parole vaut plus que le code
- Même pour les développeurs qui ont toujours développé à la main, la capacité à lire le code et à l’évaluer de façon critique devient plus importante que celle qui consiste à maîtriser la syntaxe et taper ligne par ligne
- Bien sûr, cette dernière reste une compétence importante, et savoir lire le code efficacement repose en fin de compte sur ce socle
- Malgré cela, le workflow quotidien du développement logiciel a déjà été totalement renversé
- Le développeur expérimenté qui sait bien parler, c’est-à-dire imaginer, expliquer, définir un problème, concevoir une architecture et faire de l’ingénierie, bénéficie désormais d’un avantage disproportionné comme jamais auparavant sur celui qui ne le peut pas
- La connaissance d’un langage, d’une syntaxe ou d’un framework particulier n’est plus le principal goulot d’étranglement
- Les contraintes physiologiques et physiques qui retenaient autrefois les développeurs ne constituent plus des obstacles décisifs
- Les machines capables de produire immédiatement de grandes quantités de code sont désormais des outils commoditisés, accessibles à tous au niveau d’un
pip install - Il n’est plus vraiment nécessaire de suivre une formation spécialisée ni d’apprendre un nouveau langage ou framework
- Ce qu’il faut, c’est seulement l’ancienne pensée critique, des capacités humaines fondamentales et un minimum de compétence opérationnelle pour piloter cette machine
- En conséquence, les méthodologies historiques du développement logiciel et la répartition des rôles — Waterfall et Agile, développeur et testeur, senior et junior — subissent des transformations fondamentales
- Les frontières traditionnelles sont en train de se fondre dans des boucles itératives “agentiques” incroyablement rapides, compressées et floues
- Par ricochet, les dynamiques entre les personnes, les organisations et les communautés publiques autour du développement logiciel, ainsi que les incitations humaines qui soutenaient le partage et la collaboration, évoluent elles aussi rapidement
- La fin du bug bounty de curl, l’introduction par Zulip de directives sur l’usage de l’IA, ou encore la politique explicite de Ghostty sur l’IA en sont des exemples
- Pour la première fois dans l’histoire, une bonne parole (talk) devient un facteur d’une valeur exponentiellement supérieure à un bon code
- Les répercussions de ce changement seront majeures, et en même temps profondément destructrices
Aucun commentaire pour le moment.