- Un développeur qui programme depuis 42 ans, depuis 1983, partage ses sentiments complexes face au tournant de l’ère de l’IA, en constatant que la nature même du développement logiciel est en train de changer
- Des ordinateurs 8 bits au 486, il a traversé d’innombrables transitions technologiques, en partant d’une époque où l’on comprenait et contrôlait directement chaque octet de la machine, mais les compétences fondamentales se transmettaient toujours
- Contrairement aux précédents changements de plateforme, de langage ou de paradigme, l’IA constitue une transition qui change jusqu’au sens même de « être bon »
- En passant de l’écriture directe du code à un rôle de relecture et d’instruction, la boucle de rétroaction intime du puzzle à résoudre est en train de disparaître
- Fort de 42 années d’expérience, il crée aujourd’hui des produits plus vite que jamais, mais il traverse aussi une période où l’émerveillement et l’identité qu’il trouvait dans le développement sont en train de changer
L’époque qui m’a façonné
- En 1983, à 7 ans, j’ai écrit mon premier code en tapant du BASIC sur une machine moins puissante qu’une puce de lave-linge
- Je pouvais suivre l’usage de chaque octet de RAM, placer moi-même chaque pixel à l’écran, et le chemin entre l’intention et le résultat était direct et visible
- Ma période préférée va des machines 8 bits au 486DX2-66, chaque machine ayant sa propre personnalité
- L’attribute clash du Sinclair Spectrum, la puce SID du Commodore 64 utilisée bien au-delà de son intention de départ, ou encore les astuces de scintillement dues à la limite de 8 sprites par scanline sur la NES
- Le PC a évolué d’une boîte beige faite pour les tableurs vers une bête de jeu capable de faire tourner Doom, en passant par les 286, 386 et 486
- Ce n’étaient pas de simples produits, mais des aventures d’ingénierie aux compromis visibles ; gérer les conflits IRQ, les canaux DMA, optimiser
CONFIG.SYS et AUTOEXEC.BAT, manipuler les gestionnaires de mémoire — tout cela relevait déjà du rôle d’ingénieur système
- De petites équipes comme id Software prenaient des décisions techniques audacieuses alors que personne n’avait encore fixé les règles
- Le raycasting de Carmack pour Wolfenstein, les astuces de Doom en VGA Mode X : des exemples de gens qui poussaient de vraies contraintes jusqu’à créer quelque chose de réellement nouveau
- Puis le Plug and Play est arrivé, ainsi que les abstractions de Windows : la frontière sauvage a pris fin, et l’ordinateur est passé d’une machine fascinante qui exigeait respect et compréhension à un simple appareil domestique
La promesse dévoyée
- Au début, il existait un véritable optimisme quant à ce que l’informatique pouvait devenir — un enfant avec un Spectrum pouvait créer ce qu’il voulait, et le Web naissant ressemblait au plus grand outil d’égalisation de l’histoire humaine
- Cet espoir s’est dégradé dans une direction inquiétante : les machines que nous aimions sont devenues des outils de surveillance et d’extraction
- Les plateformes qui promettaient la connexion ont en réalité été construites pour monétiser leurs utilisateurs
- L’esprit du bidouilleur n’est pas mort naturellement : il a été récupéré pour optimiser les clics publicitaires
- Ce n’est pas la même forme de perte qu’un simple changement d’outils : c’est voir ce qu’on aimait se transformer puis être mobilisé pour quelque chose dont on ne peut pas être fier
Les transitions déjà traversées
- En 40 ans, j’ai connu d’innombrables transitions technologiques — nouveaux langages, nouvelles plateformes, nouveaux paradigmes, du CLI au GUI, du desktop au Web, du Web au mobile, du monolithe aux microservices, des bandes et disquettes aux disques durs puis aux SSD, sans parler des frameworks JavaScript éphémères qui apparaissent et disparaissent sans cesse
- À chaque vague, il fallait apprendre du nouveau, mais les compétences essentielles restaient transférables — on apprenait la nouvelle plateforme, on y appliquait sa compréhension des systèmes, et on continuait à construire
- Même l’expérience d’avoir publié des logiciels sur des plateformes aujourd’hui disparues s’est capitalisée avec effet composé à chaque fois que l’industrie a changé de cap
- Il existait un accord tacite entre développeurs expérimentés et le secteur : « les choses changent, mais la compréhension demeure »
Cette fois, c’est différent
- Les précédentes transitions technologiques suivaient le schéma « apprendre quelque chose de nouveau et y appliquer ses compétences existantes », mais l’IA n’est ni une nouvelle plateforme, ni un nouveau langage, ni un nouveau paradigme : c’est une transition qui change le sens même de ce que signifie être bon
- J’en ai pris conscience progressivement — je fais encore le même travail quand je construis des fonctionnalités ou que je conçois une architecture, mais j’ai l’impression que la partie intéressante a été vidée
- La recherche d’une solution élégante, la lutte avec les contraintes, la satisfaction quand tout s’emboîte : de plus en plus, cette partie est traitée par un modèle qui ne se soucie pas de l’élégance et n’éprouve aucune satisfaction
- C’est moins cher, plus rapide, mais creux
- Mon rôle a changé : je ne tape plus directement le code, je relis, j’oriente, je corrige — je sais que mon jugement, forgé par 42 ans de pratique, sur ce qui fonctionne ou non a de la valeur, mais c’est un autre type de travail, et cela ne procure pas la même sensation
- La boucle de rétroaction a changé, et l’intimité a disparu — ces puzzles qui me tenaient éveillé la nuit, cette traque, ce moment où l’on comprend enfin pourquoi quelque chose ne marche pas, tout cela se retrouve comprimé en prompts et réponses
- Je vois des personnes avec une fraction infime de cette expérience produire des résultats superficiellement similaires — la différence d’artisanat existe toujours, mais elle est plus difficile à percevoir de l’extérieur, à valoriser, et même à ressentir intérieurement
La tour des abstractions
- Sur LinkedIn, j’ai vu un développeur au début de la vingtaine, avec quelques années d’expérience, se lamenter qu’avec l’IA il « ne savait plus ce qu’il se passait »
- Il ne réalisait pas qu’il se trouvait déjà, depuis le départ, tout en haut d’une chaîne d’abstractions, sur une tour de Jenga vacillante
- TypeScript → compilation en JavaScript → moteur V8 écrit en C++ → appels système du noyau de l’OS → planification des threads sur des cœurs auxquels on ne pense jamais → contrôleur mémoire avec couches de cache → 400 paquets npm dont il n’a jamais lu une ligne
- Le navire des abstractions avait déjà quitté le port depuis des décennies ; simplement, chaque couche était arrivée progressivement, ce qui nous permettait encore de faire semblant de comprendre toute la pile
- L’IA est la couche qui rend ce simulacre impossible à maintenir
- Se souvenir de ce que cela faisait de comprendre toute la machine, et ressentir une forme de tristesse à l’idée de perdre cela, est quelque chose que ceux qui ne l’ont jamais connu ne peuvent pas pleinement éprouver
Ce qui reste
- Il est vrai que l’expérience n’a jamais eu autant de valeur, que la pensée système et le jugement architectural sont des choses que l’IA ne remplace pas, et que l’artisanat continue d’exister sous d’autres formes
- Dans les tâches complexes — gestion des dépendances au niveau système, maintien de modèles mentaux sur plusieurs spécifications en interaction, milliers de petites décisions qui donnent à quelque chose une impression de cohérence — j’apporte encore ce que l’IA n’a pas : du goût, du jugement, des décennies de reconnaissance de motifs
- Quand générer du code devient bon marché, le goulot d’étranglement se déplace vers ceux qui savent quoi demander, qui peuvent détecter qu’une sortie est subtilement erronée et garder la vue d’ensemble — ce n’est jamais la frappe qui a été la partie difficile
- Mais prétendre que cela procure la même sensation serait mentir — l’accès à l’émerveillement devient plus difficile, et le sentiment de découverte né du simple entêtement et de l’ingéniosité se trouve compressé. On gagne quelque chose dans cette compression, mais on y perd aussi quelque chose
La jachère
- J’ai eu 50 ans récemment, et après quatre années d’une phase intense de production et de construction identitaire, je suis entré dans ce que j’ai commencé à appeler une « période de jachère »
- Ce n’est pas un burn-out — c’est le processus consistant à chercher de nouvelles fondations pendant que le sol bouge sous un édifice qu’on croyait permanent
- Il n’y a pas de conclusion propre — les conseils du type « monte dans la stack », « adopte les outils », « concentre-toi sur ce que l’IA ne peut pas faire » sont probablement justes, mais ils ne résolvent pas ce ressenti
- Le sentiment que ce à quoi j’ai consacré 42 ans s’est transformé en quelque chose que je pourrais ne plus reconnaître — pas forcément pire, mais différent, et qui remet en cause l’identité construite autour de lui, sans offrir la même satisfaction qu’avant
- Je suppose que beaucoup de développeurs de plus de 40 ans ressentent quelque chose de similaire sans le dire, parce que le secteur vénère la jeunesse et l’adaptabilité, et qu’admettre que « cela ne ressemble plus à avant » sonne comme un aveu de décrochage
- Pourtant, ce n’est pas un décrochage — j’utilise les nouveaux outils pour construire plus vite que jamais et créer des produits dont je n’aurais pu que rêver il y a quelques années, tout en essayant de comprendre ce que signifie désormais “construire”
- J’ai commencé à programmer à 7 ans parce que la machine exécutait exactement ce qu’on lui disait, parce qu’on pouvait l’explorer et, au bout du compte, avoir l’impression de la connaître ; cela ressemblait à de la magie, et aujourd’hui, à 50 ans, la magie est différente, et j’apprends à vivre avec elle
Aucun commentaire pour le moment.