DHH a réécrit Campfire de Ruby on Rails vers Rust, Elixir et Go en utilisant des agents d'IA, révélant des idées clés sur le codage assisté par IA. Les réécritures montrent que les invites vagues conduisent à des décisions incohérentes, car les LLM font des choix implicites concernant la rétrocompatibilité, la latence par rapport au débit et l'utilisation de la mémoire. La version Rust a supprimé les jetons CSRF et Redis, optant pour des files d'attente en processus, tandis qu'Elixir est resté plus proche de Rails. Ces différences sont indépendantes du langage, pas dictées par le langage cible. Des problèmes de qualité de code apparaissent : la version d'Elixir traite les requêtes SQL de manière séquentielle, tandis que Rust mélange des opérations de base de données asynchrones et bloquantes, pouvant potentiellement nuire aux performances. L'article démontre que le codage ne peut pas être 'résolu' par l'IA seule—une compréhension approfondie reste essentielle. Les références sont également trompeuses, se concentrant uniquement sur le débit tout en ignorant les taux de livraison. Zach Daniels a trouvé un taux de livraison de notifications de 1 % sous charge, mettant en évidence l'écart entre les références synthétiques et les performances réelles.
Entités clés : Entreprises : Ruby on Rails, Redis | Personnes : DHH, Piotr Sarnackoson, Zach Daniels
FAQ : Les agents d'IA peuvent-ils entièrement remplacer les développeurs humains dans les réécritures de code ?
Non. L'expérience de DHH montre que les agents d'IA prennent des décisions techniques implicites qui varient énormément sans une orientation précise. Des problèmes tels que la rétrocompatibilité, les optimisations de performance et les choix architecturaux nécessitent une supervision humaine. Les réécritures en Rust et en Elixir ont démontré des incohérences indépendantes du langage, prouvant que le codage nécessite une compréhension profonde que l'IA ne peut pas reproduire seule.
Source: Hacker News · Résumé par HeadlinesBriefing