Développeurs et IA : les générateurs de code sont-ils fiables ?

Une récente étude questionne la fiabilité et la pérennité des lignes de code produites à l’aide d’assistants alimentés par l’intelligence artificielle, comme GitHub Copilot.

gitclear-etude-developpement
De nombreuses suggestions, sans doute fournies par les assistants de codage, sont dupliquées par copier-coller. © GitClear

Face à l’émergence des générateurs de code assistés par l’intelligence artificielle, à l’instar de GitHub Copilot, dévoilé en 2021 et adopté par plus d’un million de développeurs dans sa version payante selon sa société éditrice, faut-il s’inquiéter de la fiabilité de ces solutions ? C’est l’interrogation soulevée par une récente étude publiée par la société d’analyse GitClear, qui vise à mettre en perspective l’assertion de GitHub selon laquelle les développeurs qui utilisent sa solution rédigent du code « 55 % plus rapidement ».

La qualité et la maintenabilité du code (…) sont-elles plus proches d’une contribution soignée d’un développeur sénior, ou plutôt comparable au travail désordonné d’un contractant à court terme, interroge la société d’analyse.

Pour réaliser ce rapport et, surtout, évaluer « les différences de qualité du code » entre l’IA et les professionnels du développement web, GitClear a analysé environ 153 millions de lignes de codes modifiées entre janvier 2020 et décembre 2023. Et ses conclusions sont préoccupantes.

Une prolifération de lignes de codes erronées

C’est sans doute l’un des principaux enseignements de l’étude : depuis 2020, GitClear constate une hausse du taux de churn, ou taux de renouvellement en français, c’est-à-dire du « code poussé vers le dépôt puis ultérieurement révoqué, supprimé ou mis à jour dans les deux semaines ». En 2022, soit l’année de déploiement de GitHub Copilot puis de ChatGPT rappelle l’étude, le taux de churn a augmenté de 9 % sur l’échantillon analysé, démontrant la prolifération croissante de « code erroné ». Selon GitClear, le taux de churn tournait autour de 3 ou 4 % avant l’émergence de ces outils. Il est oscille désormais autour de 7 %.

gitclear-code-copier-coller-modifie-reutilise
Les lignes de code sont moins réutilisées et adaptées qu’auparavant, selon l’étude. © GitClear

Parallèlement, GitClear observe une augmentation du pourcentage de lignes de code qui ont été dupliquées par copier-coller, passant de 8,3 % en 2020 à 11,6 % en 2024. « Il n’existe sans doute pas de pire fléau pour la maintenabilité à long terme que le code copier-coller », alerte la société d’analyse. L’émergence des assistants de codage propulsés par l’intelligence artificielle inciterait davantage les développeurs à ajouter de nouvelles lignes de code, plutôt que de réutiliser du code stable, manipulé par d’autres et « davantage susceptible de contenir de la documentation », d’après l’étude. GitClear craint qu’en 2024, le copier-coller puisse représenter entre 20 et 25 % de l’ensemble des opérations de codage.

Des lignes de code générées puis rapidement remplacées

GitClear a également évalué la qualité du code généré sur l’échantillon analysé, en « examinant la durée écoulée entre le moment où le code est écrit et le moment où il est mis à jour ou supprimé », peut-on lire dans l’étude. Là encore, les résultats sont préoccupants : le pourcentage de lignes de code remplacées en moins de deux semaines a connu une hausse de presque 10 %, d’après GitClear. À l’inverse, les lignes rédigées il y a plus d’un an sont moins susceptibles d’être modifiées en 2024 qu’en 2020, comme le montre le tableau ci-dessous.

gitclear-code-modification-duree
Une ligne de code est davantage susceptible d’être remplacée si elle a été récemment rédigée. © GitClear

Cette tendance suggère qu’avant l’émergence des assistants IA, les développeurs étaient davantage enclins à récupérer du code existant dans le but de l’améliorer ou le réutiliser, suggère GitClear.

Ainsi, si l’emploi d’un assistant de codage peut effectivement stimuler la productivité, rien ne garantit que ses suggestions soient fiables et pérennes, s’inquiète GitClear. La démocratisation de l’usage de ces solutions pourrait donc devenir problématique, en particulier pour les développeurs inexpérimentés qui seront inévitablement tentés de les employer sans évaluer la pertinence des suggestions fournies. « Lorsque les développeurs sont submergés de suggestions qui fonctionnent à court terme, il devient tentant d’ajouter davantage de lignes de code sans véritablement vérifier si un système existant pourrait être réutilisé », confirme GitClear.

Explorer les métiers du développement informatique

Les métiers du développement informatique sont essentiels : ce sont les experts techniques des projets. Certains sont en charge des interfaces (front-end), d'autres conçoivent la part immergée des applications (back-end). Les développeurs peuvent aussi intervenir sur l'ensemble des produits (full stack), ou opter pour une spécialisation (mobile, jeux vidéo), puis évoluer vers des fonctions d'architecte ou de CTO. Voir tous les métiers du développement informatique
Sujets liés :
Publier un commentaire
Ajouter un commentaire

Votre adresse email ne sera pas publiée.

Les meilleurs outils pour les professionnels du web