34 points par GN⁺ 2026-01-27 | Aucun commentaire pour le moment. | Partager sur WhatsApp
  • En utilisant des outils de codage par IA pour leur confier des tâches de plus en plus importantes, l’auteur a d’abord été impressionné, avant de constater un manque de cohérence et de solidité structurelle dans les résultats
  • Même avec des spécifications détaillées, les agents IA ne parviennent pas à maintenir le contexte sur le long terme ni à faire évoluer la conception, si bien que l’ensemble du codebase finit par devenir un assemblage de fragments hétérogènes
  • Les morceaux de code peuvent sembler complets pris isolément, mais à l’échelle globale apparaissent un désordre structurel (sloppy) et un effondrement du contexte
  • Au terme de cette expérience, l’auteur a estimé que du code produit par l’IA ne permettait pas de garantir la confiance des utilisateurs ni la protection des données, et est revenu à une approche où il écrit lui-même le code
  • Le codage avec l’IA reste utile, mais son usage demande de la prudence car il peut entraîner de la dette technique et une perte de contrôle du développeur

Enthousiasme initial pour le codage par IA et prise de conscience de ses limites

  • La plupart des utilisateurs commencent le codage avec l’IA sur des tâches simples, puis lui confient progressivement des problèmes plus complexes, en s’émerveillant de ses performances
    • Mais passé un certain seuil, les erreurs et les incohérences de l’IA apparaissent, créant un décalage entre attentes et réalité
  • Quand le résultat n’est pas satisfaisant, les utilisateurs ont tendance à en attribuer la cause à leurs prompts et essaient de rédiger des spécifications plus précises
    • Ils utilisent des outils comme Obsidian pour écrire des documents de spécification détaillés, mais l’IA n’arrive pas à les faire évoluer sur la durée

L’échec de l’approche fondée sur les spécifications

  • Dans le développement réel, les documents de conception sont des documents vivants, qui évoluent en permanence au fil de la découverte et de l’implémentation
    • Or, les agents IA restent figés sur la spécification initiale et ne peuvent ni l’adapter avec souplesse ni la réinterpréter
  • Lorsqu’ils manipulent des structures complexes, les agents ont tendance à perdre le contexte global du problème ou à forcer la progression coûte que coûte
    • En conséquence, même si le code semble complet en apparence, il manque de cohérence interne et d’intégrité structurelle

Dégradation de la qualité du code et limites du « vibecoding »

  • Le code écrit par l’IA peut paraître excellent par endroits, tout en formant au final un assemblage dénué de sens
    • Après avoir passé en revue l’ensemble du codebase, l’auteur y a découvert une forme de « pure pagaille (slop) »
  • L’IA reste fidèle au prompt et à sa propre cohérence locale, mais ne prend pas en compte l’harmonie du système dans son ensemble ni la cohérence des patterns voisins
    • C’est un phénomène comparable à une forme de « vibewriting » où certains paragraphes d’un roman sont excellents, mais où le chapitre dans son ensemble est raté

Retour à un développement centré sur l’humain

  • L’auteur a jugé qu’il ne pouvait pas déployer en production du code généré par l’IA ni l’utiliser pour protéger les données des utilisateurs
    • Avec la décision de « ne pas mentir aux utilisateurs avec ce code », il est revenu à l’écriture directe du code
  • En codant lui-même, il a constaté une amélioration de la vitesse, de la précision, de la créativité et de la productivité
    • Évalué non pas sur la simple vitesse de génération de code, mais sur l’efficacité globale du développement, l’avantage humain se confirme

Usage continu de l’IA pour coder, mais avec vigilance

  • L’auteur continue malgré tout à utiliser les LLM de façon limitée (environ 40 %) pour certaines tâches
    • Ils sont utiles pour les tâches répétitives ou la génération de code simple, mais la dette technique et la baisse de compréhension du code s’accumulent
  • À long terme, il existe un risque que le développeur perde son modèle mental du codebase et devienne incapable de résoudre des problèmes sans l’IA
    • En déplacement (train, avion, etc.), cette dépendance à l’IA peut même mener à une productivité tombant à 0 %
  • D’autres développeurs soulignent aussi que l’idée selon laquelle « il suffirait de bien écrire les spécifications » reproduit le modèle waterfall, alors que le développement réel repose nécessairement sur l’exploration improvisée et l’interaction

Conclusion

  • Le codage par IA reste un outil puissant, mais il manque encore de capacité à préserver le contexte global du système et sa cohérence structurelle
  • L’intuition du développeur humain et sa capacité d’ajustement improvisé restent essentielles,
    et l’IA doit être utilisée comme un moyen d’assistance, dans un cadre soigneusement maîtrisé

Aucun commentaire pour le moment.

Aucun commentaire pour le moment.