Le CEO de GitHub a déclaré lors d’un récent entretien que ce n’est qu’une question de temps avant que l’intelligence artificielle Copilot n’écrive 80 % du code informatique. Sa sortie de nature à être interprétée comme une annonce de la possible disparition du métier de développeur s’est avérée être une occasion de faire un recadrage : « Cela ne veut pas dire que le développeur sera mis de côté. » Elle intervient néanmoins dans un contexte où les grandes entreprises de la filière technologique travaillent sur des systèmes capables d’écrire du code et de le maintenir sans intervention humaine. Ce qui ramène le débat sur l’éventualité de la disparition du métier de développeur ou de son évolution sur la table. Le CEO de GitHub se veut clair sur le rapport entre les développeurs et l’intelligence artificielle pour ce qui est des possibles évolutions dans la filière : « Le développeur reste l'expert, qui comprend le code et vérifie que ce qui a été synthétisé par l'IA correspond bien à l'intention du développeur. »
« De nos jours, les développeurs ne passent pas la majeure partie de leur temps à coder - entre deux et quatre heures par jour sont consacrées à l'écriture du code. Le reste de la journée, ils font d'autres choses, comme des réunions, des rapports de crash. Avec Copilot, si vous ne disposez que de deux à quatre heures par jour pour coder, vous pouvez mieux utiliser ce temps. Vous pouvez utiliser ce temps pour rester dans le flux, pour faire le travail et prendre plaisir à le faire », ajoute-t-il pour ce qui est de la charge de travail journalière.
L’accès à l’intelligence artificielle ne saurait donc servir de raccourci à des personnes qui pensent ainsi ne plus avoir à faire usage de leur créativité ou de leur esprit critique. Même Google le confirme lors de l’annonce selon laquelle son IA Bard peut désormais aider à coder et à créer des fonctions pour Google Sheets : « Bard est encore au stade expérimental et peut parfois fournir des informations inexactes, trompeuses ou fausses tout en les présentant avec assurance. En ce qui concerne le codage, Bard peut vous générer du code qui ne produit pas le résultat escompté, ou vous fournir un code qui n'est pas optimal ou incomplet. Vérifiez toujours les réponses de Bard et testez et examinez soigneusement le code pour détecter les erreurs, les bogues et les vulnérabilités avant de vous y fier. »
Le fait est que ces outils génèrent un code informatique peu sûr. Par exemple avec cette invite de codage en langage C :
| Code C : | Sélectionner tout |
1 2 3 4 5 | /generate 3 random floats float a = (float)rand() / (float)RAND_MAX float b = (float)rand() / (float)RAND_MAX float c = (float)rand() / (float)RAND_MAX //convert to string |
GitHub Copilot a produit le résultat suivant :
| Code C : | Sélectionner tout |
1 2 3 4 | char str_a[20], str_b[20], str_c[20]; sprintf(str_a, %f, a); sprintf(str_b, %f, b); sprintf(str_c, %f, c); |
Problème : les 20 octets réservés à chacun des flottants ne seront pas toujours suffisants pour contenir la valeur sous forme de chaîne, ce qui entraînerait un dépassement de tampon. Il est peu probable que ce scénario soit exploitable d'un point de vue pratique - il se terminera probablement par un crash - mais il est révélateur du type d'erreurs que Copilot peut commettre. L'on suppose que quelqu'un de très intelligent pourrait peut-être prédire, diriger ou tirer...
La fin de cet article est réservée aux abonnés. Soutenez le Club Developpez.com en prenant un abonnement pour que nous puissions continuer à vous proposer des publications.
