IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)

Vous êtes nouveau sur Developpez.com ? Créez votre compte ou connectez-vous afin de pouvoir participer !

Vous devez avoir un compte Developpez.com et être connecté pour pouvoir participer aux discussions.

Vous n'avez pas encore de compte Developpez.com ? Créez-en un en quelques instants, c'est entièrement gratuit !

Si vous disposez déjà d'un compte et qu'il est bien activé, connectez-vous à l'aide du formulaire ci-dessous.

Identifiez-vous
Identifiant
Mot de passe
Mot de passe oublié ?
Créer un compte

L'inscription est gratuite et ne vous prendra que quelques instants !

Je m'inscris !

Les défis croissants du code généré par l'IA : le code généré par l'IA pourrait augmenter la charge de travail des développeurs et accroître les risques,
Selon Harness

Le , par Bruno

69PARTAGES

7  0 
92 % des développeurs utiliseraient des outils d'intelligence artificielle, selon une enquête de GitHub auprès des développeurs

Une enquête menée par la plateforme de collaboration entre développeurs GitHub a révélé que 92 % des programmeurs utilisent déjà l'intelligence artificielle. Environ 70 % des personnes interrogées ont déclaré que les outils basés sur l'IA offraient un avantage au travail. Pour son enquête DevEx, GitHub a interrogé 500 entreprises américaines comptant plus de 1 000 employés afin de comprendre l'impact des outils d'IA sur la productivité des développeurs et leur expérience globale.

"Aujourd'hui, les développeurs ne se contentent pas d'écrire et d'expédier du code - ils doivent naviguer dans un certain nombre d'outils, d'environnements et de technologies, y compris la nouvelle frontière des outils de codage d'intelligence artificielle générative (IA)", a déclaré Inbal Shani, chief product officer, chez GitHub.

https://youtu.be/iO1mwxPNP5A

[QUOTE]Principaux résultats

  • Presque tous les développeurs ont utilisé des outils de codage de l'IA - 92 % de ceux que nous avons interrogés disent les avoir utilisés au travail ou pendant leur temps libre. Nous nous attendons à ce que ce chiffre augmente dans les mois à venir.
  • 70 % des développeurs pensent que l'utilisation d'outils de codage de l'IA leur offrira un avantage dans leur travail, l'amélioration des compétences étant le principal avantage, suivi par les gains de productivité.
  • Étant donné que l'amélioration des compétences est la principale tâche que les développeurs considèrent comme améliorant leur journée de travail, ce résultat est remarquable car les outils de codage de l'IA peuvent l'intégrer directement dans le flux de travail d'un développeur.

Les développeurs utilisent déjà des outils de codage de l'IA au travail

92 % des développeurs américains travaillant dans de grandes entreprises déclarent utiliser un outil de codage de l'IA, que ce soit au travail ou pendant leur temps libre, et 70 % d'entre eux affirment que l'utilisation de ces outils leur apporte des avantages significatifs.

  • L'IA est là pour rester et elle transforme déjà la façon dont les développeurs abordent leur travail quotidien. Il est donc essentiel que les entreprises et les responsables de l'ingénierie adoptent des outils d'IA de qualité professionnelle afin d'éviter que leurs développeurs n'utilisent des applications non approuvées. Les entreprises devraient également établir des normes de gouvernance pour l'utilisation des outils d'IA afin de s'assurer qu'ils sont utilisés de manière éthique et efficace.


Presque tous les développeurs (92 %) utilisent des outils de codage de l'IA au travail - et une majorité (67 %) a utilisé ces outils à la fois dans un cadre professionnel et pendant son temps libre. Curieusement, seuls 6 % des développeurs interrogés dans le cadre de notre enquête déclarent n'utiliser ces outils qu'en dehors du travail.

Les développeurs pensent que les outils de codage basés sur l'IA amélioreront leurs performances

La plupart des développeurs expérimentant les outils d'IA sur leur lieu de travail, les résultats de notre enquête suggèrent que ce n'est pas seulement un intérêt futile qui pousse les développeurs à utiliser l'IA. Il s'agit plutôt d'une reconnaissance du fait que les outils de codage de l'IA les aideront à atteindre les normes de performance.

  • Dans notre enquête, les développeurs affirment que les outils de codage basés sur l'IA peuvent les aider à respecter les normes de performance existantes en améliorant la qualité du code, en accélérant les résultats et en réduisant le nombre d'incidents au niveau de la production. Ils estiment également que ces paramètres devraient être utilisés pour mesurer leurs performances au-delà de la quantité de code.


Environ un tiers des développeurs déclarent que leurs responsables évaluent actuellement leurs performances sur la base du volume de code qu'ils produisent, et un nombre égal d'entre eux prévoient que cette situation perdurera lorsqu'ils commenceront à utiliser des outils de codage basés sur l'IA.

  • Il est à noter que la quantité de code produite par un développeur ne correspond pas nécessairement à sa valeur commerciale.
  • Rester intelligent. Avec l'augmentation des outils d'IA utilisés dans le développement de logiciels - qui contribuent souvent au volume de code - les responsables de l'ingénierie devront se demander si la mesure du volume de code est toujours le meilleur moyen de mesurer la productivité et la production.

Les développeurs pensent que les outils de codage à base d'IA conduiront à une meilleure collaboration au sein des équipes

Au-delà de l'amélioration des performances individuelles, plus de 4 développeurs sur 5 interrogés (81 %) affirment que les outils de codage basés sur l'IA contribueront à renforcer la collaboration au sein de leurs équipes et de leurs organisations.

  • En fait, les examens de sécurité, la planification et la programmation en binôme sont les points de collaboration les plus importants et les tâches sur lesquelles les équipes de développement sont censées, et devraient, travailler avec l'aide des outils de codage par l'IA. Cela indique également que les examens du code et de la sécurité resteront importants à mesure que les développeurs utiliseront davantage les outils de codage basés sur l'IA sur leur lieu de travail.


Parfois, les développeurs peuvent faire la même chose avec une ligne ou plusieurs lignes de code. Malgré cela, un tiers des développeurs interrogés dans le cadre de notre enquête déclarent que leurs responsables mesurent leurs performances en fonction de la quantité de code qu'ils produisent.

Les développeurs estiment notamment que les outils de codage de l'IA leur donneront plus de temps pour se concentrer sur la conception de solutions. Cela présente des avantages organisationnels directs et signifie que les développeurs pensent qu'ils passeront plus de temps à concevoir de nouvelles fonctionnalités et de nouveaux produits avec l'IA plutôt qu'à écrire du code standard.

  • Les développeurs utilisent déjà des outils de codage génératif de l'IA pour automatiser certaines parties de leur flux de travail, ce qui leur permet de consacrer plus de temps à des projets plus collaboratifs tels que les examens de sécurité, la planification et la programmation en binôme.


Les développeurs pensent que l'IA augmente la productivité et prévient l'épuisement professionnel

Non seulement les outils de codage de l'IA peuvent contribuer à améliorer la productivité globale, mais ils peuvent également offrir des opportunités de perfectionnement pour aider à créer une main-d'œuvre plus intelligente, selon les développeurs que nous avons interrogés.

  • 57 % des développeurs pensent que les outils de codage basés sur l'IA les aident à améliorer leurs compétences en matière de langage de codage, ce qui est le principal avantage qu'ils en retirent. Au-delà de la perspective d'agir comme une aide à l'amélioration des compétences, les développeurs affirment également que les outils de codage par l'IA peuvent également contribuer à réduire l'effort cognitif, et comme la capacité mentale et le temps sont tous deux des ressources limitées, 41 % des développeurs pensent que les outils de codage par l'IA peuvent contribuer à prévenir l'épuisement professionnel.
  • Lors d'une étude précédente, 87 % des développeurs ont déclaré que l'outil de codage par IA GitHub Copilot les aidait à préserver leur effort mental tout en accomplissant des tâches plus répétitives. Cela montre que les outils de codage à base d'IA permettent aux développeurs de préserver leur effort cognitif et de se concentrer sur des aspects plus stimulants et innovants du développement de logiciels ou de la recherche et du développement.
  • Les outils de codage à base d'IA aident les développeurs à se perfectionner tout en travaillant. Dans l'ensemble de notre enquête, les développeurs placent systématiquement l'acquisition de nouvelles compétences au premier rang des facteurs contribuant à une journée de travail positive. Mais 30 % d'entre eux déclarent également que l'apprentissage et le développement peuvent avoir un impact négatif sur leur journée de travail globale, ce qui suggère que certains développeurs considèrent que l'apprentissage et le développement ajoutent du travail à leur journée de travail. Notamment, les développeurs déclarent que le principal avantage des outils de codage par l'IA est l'acquisition de nouvelles compétences - et ces outils peuvent aider les développeurs à apprendre tout en travaillant, au lieu de faire de l'apprentissage et du développement une tâche supplémentaire.

Les développeurs utilisent déjà des outils de codage d'IA générative pour automatiser certaines parties de leur flux de travail, ce qui libère du temps pour des projets plus collaboratifs tels que les examens de sécurité, la planification et la programmation en binôme.

L'IA améliore l'expérience des développeurs dans tous les domaines

Les développeurs interrogés dans le cadre de notre enquête indiquent qu'ils peuvent mieux respecter les normes relatives à la qualité du code, au temps de réalisation et au nombre d'incidents lorsqu'ils utilisent des outils de codage IA - autant de mesures que les développeurs considèrent comme des domaines clés pour l'évaluation de leurs performances.

Les outils de codage par l'IA peuvent également contribuer à réduire la probabilité d'erreurs de codage et à améliorer la précision du code, ce qui conduit en fin de compte à des logiciels plus fiables, à des performances accrues des applications et à de meilleurs chiffres de performance pour les développeurs. À mesure que la technologie de l'IA continue de progresser, il est probable que ces outils de codage auront un impact encore plus important sur les performances et le perfectionnement des développeurs.

Les développeurs pensent que les outils de codage de l'IA les aideront à se perfectionner tout en travaillant

57 % des développeurs interrogés déclarent que l'utilisation d'outils de codage de l'IA les aide à développer leurs compétences en langage de codage, ce qu'ils considèrent comme le principal avantage de l'utilisation de ces applications (le deuxième avantage étant une plus grande productivité). Cela suggère que les développeurs considèrent l'utilisation d'outils de codage par IA comme un moyen de se perfectionner tout en travaillant, au lieu d'ajouter une autre tâche à leur journée de travail pour l'apprentissage et le développement.

Les outils de codage par l'IA s'intègrent dans les flux de travail existants des développeurs et génèrent une plus grande efficacité

Les développeurs pensent que les outils de codage par l'IA augmenteront leur productivité, mais notre enquête suggère que les développeurs ne pensent pas que ces outils modifient fondamentalement le cycle de vie du développement logiciel. Au contraire, les développeurs pensent qu'ils apportent une plus grande efficacité à ce cycle.

[LIST][*]L'utilisation de l'automatisation et de l'IA fait partie du flux de travail des développeurs depuis longtemps, ces derniers utilisant déjà une gamme d'outils automatisés et alimentés par l'IA, tels que les contrôles de sécurité basés sur l'apprentissage automatique et les pipelines CI/CD.[*]Plutôt que de refondre complètement[/*]...
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.

Une erreur dans cette actualité ? Signalez-nous-la !

Avatar de Pierre Louis Chevalier
Expert éminent sénior https://www.developpez.com
Le 30/09/2024 à 15:56
Le fait de pouvoir lire sur developpez.com des études qui disent le contraire c'est un plus, contrairement aux médias d'opinion qui ne vont s'appesantir que sur un seul coté de l'histoire.
Encore plus utile que les études, c'est de pouvoir lire ici sur le forum du club les témoignages des vrais professionnels, c'est bien plus intéressant que de lire des articles moisis publiés dans les médias génériques écris n'importe comment par des journalistes qui n'y connaissent rien.

A titre personnel, je suis témoin du fait qu'en entreprise le code généré par l'IA est une plaie, c'est bourré de failles, mal écrit, et c'est suffisamment illisible pour être presque impossible à corriger et à faire évoluer, c'est donc un désastre.

Donc après le junior imposteur qui copie du code merdique trouvé sur stackoverflow, voila le baltringue qui colle en entreprises du code donné par chatgpt, qui lui même à pompé un code merdique trouvé sur stackoverflow, quel progrès !
Après l'IA peut être utile dans certains cas, comme par exemple aider à trouver des bugs, mais ensuite c'est au développeur de corriger et de fournir un code fiable, bien écris et lisible.

Du coup les entreprises ne veulent plus embaucher de juniors biberonnés à l'IA, ils préfèrent garder leur vieux développeurs qui codent encore à la main à l'ancienne, avec un cerveau et un clavier
13  0 
Avatar de OuftiBoy
Membre éprouvé https://www.developpez.com
Le 30/09/2024 à 15:26
et bonjour à tous.

Depuis que l'IA est sur toutes les lèvres, on a droit à un article qui nous dit que c'est la panacée, suivit d'un article disant excatement le contraire.

Soit, il faut bien nourrir le site, ce qui succite le débat. Mais devant toute cette frénésie autours de l'IA, ne serait-il pas temps de faire une pause et de débattre du fond des problèmes ou des avantages de ce que propose l'IA, et plus particulièrement de l'IAG ?

L'IA est utilisée dans plusieurs domaines, qui ont des "spécificités" qui lui sont propre. Je vais prendre 4 domaines.

  • Dans l'imagerie médicale, l'IA peut comparer des milliers de radiographies pour assister un docteur spécialisé dans ce domaine, et l'aider a voir ce qu'il n'aurait pas vu, et permettre de poser un diagnostique plus affiné, permettant d'en déduire le meilleur traitement a effectuer par la suite. C'est une bonne chose, tant pour le patient, le docteur et le budget nécessaire. Cette IA peut faire un travail correct, car les radio qu'on lui a soumise on été préalablement "validée" et lui sont fournies avec le diagnostique donné suite à cette radio. Il y a donc une certaine "fiabilité" des données en entrée. Et dans ce domaine qui se nomme "imagerie médical", cela existait déjà bien avant la frénésie autours de l'IA.
  • Dans la production de texte, le principe de l'IAG, est de fournir/déduire, mot après mot, et en se basant sur la suite des mots précédents, le mot suivant du texte en question. Là aussi il y a un "domaine" et une expertise qui est nécessaire. Si le texte qu'on veut générer est de l'ordre d'un roman de science-fiction, les entrées donnée à l'IA devrait, éviter de se baser sur des recettes de cuisine française, chinoise ou arabe. Ici aussi, l'importance de sur quoi a été fournie l'IA est primordiale. Mais c'est déjà plus vaste et donc plus difficile a contrôler. Le danger étant de 2 natures. Soit les données en entrée sont bien filtrées, et ce qui en ressortira manquera fortement d'imagination, soit, si elles mal filtrées, des absurdités (ou Hallucination) seront fortement présente en sortie. Il n'y a donc pas vraiment d'intérêt à l'utilisation d'une IA.
  • Pour un documentaire sur un sujet précis, l'IA qui aide a produire ce documentaire, ne devrait être alimentée que par données précises est validées existante sur le sujet du documentaire. Ici aussi, une recette de choucroute alsacienne ne peut pas apporter à l'IA de quoi sortir un texte pertinent sur le sujet/domaine d'un documentaire. Comme dans le point précédent, l'IA produira un documentaire ressemblant très fortement à d'autres, où sera plus ou moins "farfelu". Quelle est l'avantage de l'IA ?
  • De la cas d'une aide au "codage", l'IA ne devrait également qu'être alimentée par des codes sources validés, exempts de bug, et ne portant que sur le problème que le code doit résoudre. Ce qui est humainement impossible. On utilise des techniques très différente pour construire un site Web ou un compilateur.


Il me semble dont, que pour qu'une IAG soit fiable, qu'il lui faut un entrainement de qualité, et qu'à de rares execptions près, cette "qualité" est difficilement réalisable, pour ne pas dire humainement impossible. C'est certainement la cause des fameuses Hallucinations, car une IAG qui a pour entrée tout ce qui est disponible sur internet, n'est pas capable de connaitre le vrai du faux des informations collectées.

Dans notre domaine, le développement, l'aide d'une IAG pour aider au développement d'un site web, ou du guidage précis d'un missile, semble donc une mauvaise bonne idée. Le code générer par une IAG doit donc être scupuleusement inspecté, ce qui demande certainement autant de temps qu'une solution, écrite à la main par un humain ayant concience de la nature complète du problème a réssoudre.

Dans le développement, comme dans d'autres domaines, avoir une connaissance "métier" du domaine spécifique dans lequel on travail est donc également très importante. Ce "domaine/métier" semble difficile a spécifier pour une IAG. Il est déjà assez difficile pour un humain de comprendre la demande d'un client, d'en faire une spécification, puis de générer du code pour cette spécification. Cela demande souvant des aller-retour entre ce que veut le client, la maise à jour de la spécification, et donc de comment implémenter cette spécification.

Si l'IA peut aider, dans le domaine du développement, ce ne peut-être fait relativement sereinement, que sur des petits bouts de code que le développeur doit ensuite intégré dans son propre code. Si l'architecture du code a été founie par l'IA, il faut à ce dévoloppeur comprendre cette dernière pour pouvoir y insérer du code générer par l'IAG.

Dans la balance productivité/qualité, le rôle d'un bon développeur est donc primordiale. Il est facile d'en déduire qu'au fur et à mesure que disparaîtront ces développeurs compétants, la qualité ne pourra que se dégrader.

D'une manière générale, l'IA nous fait entrer petit à petit dans un cercle vicieux, où l'IA sera de plus en plus présente, et les moyens de contrôler son travail de moins en moins présents.

Ceci tout simplement parce que ce qui fait la "nature" même d'un bon développeur, c'est sa créativité, sa profondeur d'analyse, sa réfexion, sa compétence, son expérience. Et je connais peu de développeurs qui seraient attirés par faire une maintenance permanente d'un code générer par une IA.

Un développeur aime créer, ce qui lui sera enlever par l'IA. Tout comme d'en d'autres domaines, la créativité s'éteindra petit à petit, jusqu'à un point de non retour. Il me semble donc urgent d'attendre avant qu'il ne soit trop tard.

BàV et Peace & Love.
9  0 
Avatar de PhilippeGibault
Membre éprouvé https://www.developpez.com
Le 01/10/2024 à 14:12
Notre métier n'est pas de faire du code qui marche, mais de faire du code qui dure.

Et la nuance est là.

Un code qui dure est un code qui répond au besoin fonctionnel, mais qui est durable dans le temps.

Mais un code qui marche n'est pas forcement durable dans le temps.

Je considère que notre métier consiste aussi à laisser la meilleure architecture de code pour qu'elle soit la plus durable possible.

Surtout que la dette technique a un coût:
https://www.premaccess.com/qu-est-ce...-la-maitriser/

C'est la différence entre un bon développeur qui va challenger son code pour le faire tenir sur la durée, et un mauvais développeur qui va juste faire le minimum et faire un machin-chose qui marche, ne faisant même pas de TU des fois.

La dernière catégorie est appelé le "Monkey Codeur".

De mon point de vue, je pense que l'IA va remplacer le Monkey Codeur. Et vu les enjeux économiques que représente la dette technique.
Vu les pertes économiques mais aussi sociales que représente la dette technique, je ne pleure pas la disparition du Monkey Codeur.

Par contre, je ne m'en fait pas pour le codeur qui essaye de challenger son code pour le faire durer.
Car là, il faut une intelligence humaine.

Et là, je ne pense pas que l'IA peut remplacer.
8  0 
Avatar de calvaire
Expert éminent https://www.developpez.com
Le 21/10/2024 à 16:50
je présuppose que tous le monde dans mon équipe utilise chatgpt ou équivalent.
je viens de regarder les stats de notre gitlab, et je constate la meme chose:
1122 merge request en 2023
en 2024 on est à 1087 actuellement

sachant que 1 merge request dans notre équipe est égal à 1 tache jira.
la nature des taches entre 2023 et 2024 n'a pas vraiment changé sur mon projet.

donc visiblement pas de gains à la clé.

maintenant perso je reviendrais pas en arrière, les llm sont de bons outils, c'est vraiment top quand on cherche un truc ou qu'on cherche a faire quelque chose sans trop savoir comment faire.

cas concret: je cherchait un module ansible pour faire un truc précis, j'ai demandé a chatgpt, il m'a donné le nom du module et un exemple de code, je suis allé sur la doc d'ansible pour vérifier et voir les arguments, c'est vraiment plus rapide que si j'avais du aller fouiller et lire la doc ansible.

mais il me génère toujours du code faux, voir obsolete parfois, et il est bien incapable de créer un programme informatique complet, il est juste capable d'écrire correctement des fonctions.

enfin chatgpt ou copilot sont des outils "professionnel", il est important de bien se former sur comment écrire des prompts et pour pouvoir l'utiliser, et surtout il faut maitriser son domaine d'expertise. Un gars qui n'y connait rien à l'informatique ne sera pas plus capable de faire un logiciel avec chatgpt. Chatgpt c'est une autocomplétion d'un ide tres avancée, mais un comptable ne sera jamais capable de coder un vrai logiciel.

avec chatgpt le comptable sera plus a l'aise pour coder sa macro excel, mais il ne va pas monter un serveur mongodb, automatiser l'insertions des données et remplacer excel par grafana et enfin integrer les graphs dans une page web ou un client lourd.

ou un domaine plus visuel, chatgpt peut me coder un jeu video basique en 2d sous pygame, mais il est bien incapable de me coder un équivalent call of duty ou autre jeux complexe. Meme un "simple" rayman 2d ou mario 2d chatgpt a vite ces limites.
5  0 
Avatar de Aiekick
Membre extrêmement actif https://www.developpez.com
Le 19/09/2024 à 22:50
en gros il n'y a que les non dev qui pensent que l'IA est sure. je suis pas surprit
4  0 
Avatar de axel1818
Membre à l'essai https://www.developpez.com
Le 01/10/2024 à 8:18
je l utilise dans le codage, uniquement lorsque je n y connais rien sur le sujet de ce que je veux écrire. Évidemment, les tests et verifications qui sont exhaustifs durent très longtemps. Tant que les ia ne sont pas capables de s auto vérifier, car ils ne sont que des copieurs colleurs, donc je n ai aucune confiance dans leurs resultats
4  0 
Avatar de Axel Mattauch
Membre averti https://www.developpez.com
Le 01/07/2024 à 11:50
Juste une suggestion...

Ne serait-il pas plus pertinent de s'appuyer sur l'IA pour tester les codes produits et laisser le codage aux humains?
1  0 
Avatar de chris_FR
Membre régulier https://www.developpez.com
Le 21/09/2024 à 11:32
Ah les commerciaux et le marketing

Croire que l'IA est magique et permet à tout le monde de devenir un Super Développeur sans aucune formation ni expérience ... on y est pas encore

sauf si grâce à l'IA les "devs" font encore plus de conneries et encore plus de bugs ... si ils ne sont pas dégoûtés ils peuvent apprendre plus vite
1  0 
Avatar de DrHelmut
Membre actif https://www.developpez.com
Le 01/10/2024 à 14:15
Comme tout nouvel outil, il faut apprendre à s'en servir. Copilot ne fait pas de miracle, il ne comprend rien à ce qu'il propose, il faut juste des rapprochements sémantiques et statistique.

Si tu ne sais pas coder, que toi même tu ne comprends pas ce qu'il te pond et que tu valides, à qui revient la faute au final ?

À côté de ça, l'outil étant capable de s'inspirer de ce que tu écris, des onglets ouverts, etc, bien utilisé, c'est un gain de temps de taré sur certaines tâches. Un très bon exemple, c'est quand tu reprends du code legacy avec d'énormes manques en terme de tests unitaires en vu d'un refactoring. Tu écris les premiers tout seul, et rapidement, le copilot est capable de proposer en grande part le code des tests à venir. Jamais parfait bien sûr, et c'est normal, et ça ne le sera jamais car, et on ne le répétera jamais assez : il n' y a pas d'intelligence dans ce qu'on appelle IA d'aujourd'hui
1  0 
Avatar de JP CASSOU
Membre confirmé https://www.developpez.com
Le 02/10/2024 à 10:41
Le code généré par l'IA ne fonctionne pas dans la plupart du temps
(exemple: Gradient conjugué multithreadé en Pascal)
1  0