1 points par GN⁺ 2024-01-29 | 1 commentaires | Partager sur WhatsApp

Les résultats d’une étude sur GitHub Copilot révèlent une « pression à la baisse » sur la qualité du code

  • Une nouvelle étude sur l’impact de GitHub Copilot, basé sur l’IA, sur le développement logiciel montre des résultats négatifs.
  • Le livre blanc "Coding on Copilot" de GitClear examine la qualité et la maintenabilité du code assisté par IA en les comparant à celles du code écrit par des humains.
  • L’étude a mis en évidence des tendances préoccupantes pour la maintenance du code, et prévoit que le volume de modifications de code en 2024 doublera par rapport à 2021, avant l’adoption de l’IA.

Contraste avec l’étude de GitHub

  • D’autres études, en particulier celle de GitHub en 2022, ont montré que les développeurs utilisant GitHub Copilot terminaient leur travail beaucoup plus rapidement.
  • L’étude de GitHub a mesuré des effets positifs tels que l’amélioration de la productivité, l’augmentation de la satisfaction des développeurs et l’économie d’énergie mentale.
  • L’étude de GitClear analyse les changements dans la structure du code lors de l’utilisation de l’IA et met en lumière les points auxquels les responsables techniques devront prêter attention en 2024.

L’avis de GN⁺

  • Cette étude est importante pour comprendre l’impact de l’IA sur le développement logiciel. Elle souligne en particulier les problèmes potentiels que l’usage de l’IA peut entraîner en matière de qualité et de maintenabilité du code.
  • Même si des outils comme GitHub Copilot peuvent améliorer la productivité des développeurs, elle suggère qu’il faut aussi prendre en compte leur impact sur la qualité du code à long terme.
  • Les responsables techniques peuvent s’appuyer sur ces résultats pour prévenir les problèmes susceptibles de survenir lors de l’utilisation d’outils d’assistance par IA et élaborer des stratégies afin de maintenir la qualité du code.

1 commentaires

 
GN⁺ 2024-01-29
Avis sur Hacker News
  • Un utilisateur mentionne avoir annulé son abonnement, car il devait consacrer trop d’efforts mentaux à corriger des erreurs de code. Selon lui, c’était particulièrement inutile pour résoudre des problèmes complexes liés à SQL. Il trouvait plus simple d’écrire directement ce qu’il voulait et s’inquiète de voir des développeurs juniors submergés par ce type d’outils inefficaces.
  • Un autre utilisateur affirme que GPT-4 a fortement amélioré son efficacité pour développer une application CRUD en PHP. Le code généré à partir d’instructions simples était facile à comprendre et fonctionnait dans la plupart des cas immédiatement. Il dit que cela l’a aidé à écouter les besoins de l’utilisateur et à résoudre les problèmes. GPT-4 lui a apporté une aide précieuse à faible coût, tout en soulignant que l’outil n’est pas vraiment efficace sans maîtriser les bases.
  • Un participant remet en question la méthodologie consistant à comparer l’activité de commit de 2023 à celle des années précédentes. Il critique une régression fondée sur seulement quatre points de données, qu’il juge peu convaincante, sans prise en compte de l’impact de Copilot.
  • Un autre utilisateur souligne que la technologie est utilisée pour faire croître le marché et l’État, mais que cela revient souvent à résoudre des problèmes en les recouvrant d’abstractions incomplètes. Il estime qu’un changement qualitatif est nécessaire et craint que les LLMs (Large Language Models) n’encouragent la tendance humaine à vouloir atteindre des objectifs sans véritable effort.
  • Un développeur décrit son workflow en expliquant que, si Copilot fournit du code fonctionnel au stade du prototype, cela peut lui faire sauter une grande partie du processus nécessaire pour bien comprendre le problème et le structurer correctement. Il ajoute que Copilot peut être très utile dans les phases finales du développement, mais qu’il ne faut pas en attendre plus que ce qu’on lui donne en entrée.
  • Un développeur junior dit que des assistants comme Codeium lui semblent souvent distrayants et craint de ne pas apprendre à écrire du code par lui-même. Des outils comme Phind l’aident à comprendre les problèmes, mais Codeium fonctionne souvent mal, ce qui le gêne.
  • L’auteur de l’étude se dit enthousiasmé par l’attention portée sur le long terme à la qualité du code. Il explique que l’augmentation de la duplication de code et la baisse des déplacements de code en 2023 ont été des résultats inattendus. Il espère que les équipes de développement et les créateurs d’assistants IA adopteront des mesures et des incitations valorisant davantage le code réutilisable que le code nouvellement ajouté.
  • Un utilisateur raconte avoir créé avec ChatGPT un clone de Yourls basé sur Django/Python, mais sans avoir correctement pris en compte la fonctionnalité de suivi du trafic. Il compare les outils d’IA à des développeurs débutants qui font des erreurs beaucoup plus vite.
  • Il est également souligné qu’un rejet du principe DRY (Don't Repeat Yourself) était déjà en cours, et que certains jeunes développeurs ont une attitude très différente vis-à-vis du code. Ils adopteraient une posture méprisante envers les design patterns ainsi que les principes DRY et SOLID.
  • Enfin, un utilisateur estime que Copilot essaie trop souvent d’être trop malin et produit régulièrement des résultats erronés. Il voudrait que Copilot soit une IntelliSense intelligente, mais considère qu’en pratique il se comporte plutôt comme un pair programmer plus stupide. Il pense que beaucoup de gens l’utilisent pour la logique métier et que le produit évolue dans cette direction.