Introduction
Dans le monde en constante évolution de la technologie, la montée en puissance des systèmes vibecoded et des modèles de langage tels que les LLMs (Large Language Models) a suscité des débats intenses. Ces systèmes, souvent critiqués pour créer des tours de code incompréhensibles, posent la question : jusqu'où pouvons-nous aller dans l'automatisation du développement logiciel ?
La tour qui penche
L'article "The Tower Keeps Rising" d'Armin sur lobste.rs met en lumière une tendance préoccupante. Les systèmes vibecoded continuent d'empiler du code sur du code. Les abstractions s'accumulent, et bien que ces systèmes puissent continuer à fonctionner, aucun humain ne peut comprendre complètement la base de code. Pourtant, grâce aux LLMs, une partie de ce code peut être expliquée, permettant ainsi la poursuite du développement.
Les implications
- Acceptation du statu quo : Les défenseurs de ces systèmes semblent accepter cet état comme la voie à suivre, même si cela signifie que les développeurs perdent progressivement la compréhension directe du code.
- Pivot vers une nouvelle norme : Des experts comme Simon Willison différencient clairement le "vibe coding" de l'ingénierie agentique, insistant sur le fait que l'on doit être capable d'expliquer le code généré par une IA avant de l'intégrer en production.
La maladie du vibe
La "maladie du vibe" désigne le phénomène où les développeurs s'appuient trop sur les LLMs, perdant de vue les fondamentaux du développement logiciel. Cela crée une dépendance dangereuse, où l'expertise humaine est remplacée par des explications générées par des machines.
Conséquences
- Réduction de la qualité du code : Sans une révision humaine minutieuse, la qualité du code risque de diminuer, entraînant des bugs et des inefficacités.
- Perte de compétence : Les développeurs peuvent perdre leur capacité à résoudre des problèmes complexes par eux-mêmes, s'appuyant trop sur des outils automatisés.
La luge du vibe
La "luge du vibe" est une métaphore pour décrire la rapidité avec laquelle ces changements se produisent. En moins d'un an, le passage de l'ingénierie traditionnelle à l'ingénierie guidée par les LLMs a été fulgurant.
Exemple concret
Prenons l'exemple de Claude Code, un agent LLM en développement logiciel. On lui demande de construire une API JSON. Sans une revue minutieuse, le code produit pourrait être performant mais incompréhensible pour les futurs développeurs.
L'avenir du développement logiciel
La question cruciale est de savoir comment équilibrer l'utilisation des LLMs tout en maintenant une compréhension humaine approfondie. Cela nécessite un changement de mentalité et potentiellement des politiques plus strictes en matière de revues de code.
Vers une collaboration homme-machine
L'avenir pourrait résider dans une collaboration étroite, où les LLMs sont utilisés pour augmenter l'intelligence humaine, et non pour la remplacer.
Conclusion
Les systèmes vibecoded et les LLMs apportent des avantages indéniables, mais ils posent aussi des défis significatifs. En tant que décideur ou développeur, il est crucial de naviguer avec soin dans ce paysage en évolution rapide.
Discutons de ton projet en 15 minutes.