Contexte et analogie
Dans un tweet, John Carmack évoque la traduction du Book of Five Rings de Musashi et trace un parallèle entre la transformation des arts martiaux et celle des compétences de programmation. Il rappelle que, après la Seconde Guerre mondiale, les arts martiaux ont été interdits, puis reclassés : le judo comme équivalent du wrestling occidental et le kendo comme celui de l’escrime. Cette recontextualisation sert de cadre à l’observation selon laquelle les pratiques de bas niveau, comme l’assemblage manuel d’opcodes en hexadécimal, sont aujourd’hui reléguées à un statut de curiosité ou de hobby.
Évolution des compétences de programmation
Le texte cite explicitement les « hand assembling opcodes to hex » comme une compétence jadis indispensable. Cette activité implique la connaissance des opcodes d’une architecture donnée, la conversion en représentation hexadécimale, puis l’insertion manuelle dans le flux binaire. Carmack mentionne également le groupe restreint qui continue à programmer en assembly aujourd’hui, en citant @FFmpeg comme exemple d’une communauté qui maintient ces pratiques. L’auteur souligne que, même pour ces spécialistes, le travail quotidien ne se limite plus à la rédaction manuelle d’instructions machine, mais s’appuie sur des outils de compilation, de débogage et de simulation qui automatisent la plupart des tâches répétitives.
Impact de l’IA sur le développement bas niveau
Le tweet affirme que « AI is making many other programming skills much less critical ». Cette affirmation repose sur l’observation que les modèles d’IA générative, tels que les assistants de code, peuvent produire du code fonctionnel à partir de descriptions en langage naturel. Ainsi, la nécessité de connaître chaque magic number ou chaque séquence d’opcodes diminue. Carmack précise que le passage du « -jitsu » (maîtrise technique) au « -do » (exécution automatisée) reflète une transition où le développeur devient davantage un orchestrateur que le fabricant de chaque composant. Il ne prétend pas que l’IA a déjà remplacé toutes les tâches, mais indique que la tendance est déjà observable.
Perspectives et limites
Enfin, l’auteur met en garde contre le risque de devenir un « Kung Fu master » déconnecté, c’est‑à‑dire un expert ancré dans des pratiques obsolètes face à des adversaires modernes – ici, les développeurs utilisant l’IA comme un « amateur MMA fighter ». Il suggère que, même si l’IA ne rend pas immédiatement obsolète la connaissance du matériel, ignorer les évolutions conduit à une perte de pertinence. L’absence de données chiffrées dans le tweet limite la quantification de l’impact de l’IA, mais le raisonnement repose sur des faits concrets (assemblage d’opcodes, utilisation d’FFmpeg, émergence d’assistants IA). En conclusion, la métaphore de Carmack incite les ingénieurs à réévaluer leurs compétences, à intégrer les outils d’IA et à éviter l’écueil d’une expertise trop spécialisée dans un environnement technologique en mutation.