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 !

L'IA Devin est capable de lire la documentation, de demander de l'aide à d'autres employés, d'écrire du code, etc.,
Les développeurs ont peur de devenir obsolètes puis de se retrouver au chômage

Le , par Mathis Lucas

0PARTAGES

9  0 
L'IA d'ingénierie logicielle Devin de la startup américaine Cognition a déclenché un grand débat sur l'avenir des développeurs depuis son lancement il y a quelques jours. Les premiers rapports de test révèlent que Devin est tout à fait capable de lire la documentation, de demander de l'aide à d'autres employés, d'écrire du code, de faire des recherches sur le Web, et bien plus encore. Devin est le premier outil d'IA de ce type, Cognition affirmant qu'il est capable de prendre une simple commande et de la transformer en un site Web ou un programme logiciel fonctionnel. Toutefois, beaucoup sont sceptiques quant à la capacité de Devin à remplacer les développeurs de logiciels.

L'assistant d'IA Devin est présenté comme "le premier programme ingénieur logiciel au monde". Devin promet d'automatiser des flux de travail de programmation entiers, d'accroître l'efficacité et de redéfinir potentiellement le rôle des ingénieurs logiciels humains. Il est capable de planifier, de concevoir et de construire des projets logiciels de manière autonome. Il analyse les besoins, génère du code, identifie et corrige les erreurs, et s'intègre même aux flux de travail existants. Selon Cognition, cette automatisation se traduit par des avantages significatifs :

  • efficacité accrue : les tâches répétitives telles que la génération de code et la correction des bogues sont automatisées, ce qui permet aux développeurs humains de se consacrer à la résolution de problèmes plus complexes ;
  • réduction des coûts de développement : la rationalisation des flux de travail et l'automatisation permettent d'accélérer les cycles de développement et de réduire les coûts globaux ;
  • amélioration de la qualité : la capacité de Devin à analyser méticuleusement le code peut conduire à une réduction des erreurs et à une amélioration de la qualité globale du code ;
  • démocratisation du développement logiciel : Devin pourrait permettre à des non-programmeurs de créer des applications de base, ce qui élargit le champ d'application du développement logiciel.


Pour l'instant, l'assistant d'IA Devin n'est disponible qu'en accès anticipé. Pour en bénéficier, les développeurs sont invités à remplir un formulaire Google pour indiquer leurs besoins et leurs préférences en matière d'outils. En fonction de leurs besoins, les développeurs seront placés sur une liste d'attente. Quelques-uns des premiers testeurs ont partagé leurs retours d'expérience avec Devin sur la toile. Voici les réactions de quelques utilisateurs :

Construire un site Web pour jouer aux échecs contre un modèle d'IA

Andrew Kean Gao, étudiant à l'université de Stanford, a partagé des captures d'écran de son interaction avec Devin. Il a demandé à Devin de créer un site Web permettant de jouer aux échecs contre un adversaire basé sur un grand modèle de langage (LLM), plus précisément l'API GPT-4. « La première tâche que je lui ai confiée était un site Web sur lequel vous jouez aux échecs contre un LLM. Vous jouez un coup, le coup est communiqué à GPT-4 via une invite, GPT-4 répond, et la réponse est convertie en un coup qui est reflété sur l'échiquier. Il y a donc beaucoup de pièces en mouvement », a expliqué Gao.

Dans son message sur X (anciennement Twitter), Gao fait remarquer qu'il s'agit d'une tâche extrêmement complexe, car la plupart des LLM n'ont aucune idée de la manière d'utiliser les API, en particulier l'API GPT-4. Il était également sceptique sur les capacités de Devin à gérer les API en toute sécurité et les erreurs de paquetages associées. Mais Gao a déclaré qu'à sa grande surprise, Devin a suivi une démarche cohérente dans l'exécution de la tâche, notamment en demandant une clé d'API et la traitant en toute sécurité. Il a partagé une capture d'écran de la façon dont Devin a réagi face à ce problème.

Cependant, Gao a souligné quelques limites de Devin, en particulier sa lenteur. Selon son rapport, l'outil a mis près de 19 minutes à traiter avant de demander la clé API. En outre, il travaillait à l'élaboration des plans de jeu à l'aide de chess.js, conformément à la documentation npm et aux erreurs connexes. Il s'agit d'une étape cruciale pour décider des mouvements et des erreurs du jeu. Gao a également partagé une capture d'écran dans laquelle on voit Devin déboguer un problème de rendu et revoir une méthode d'exportation pour corriger la déclaration d'importation de l'environnement de jeu appelé Chess.

Dans un second exercice, Gao a demandé à Devin de développer une extension Chrome qui transforme les dépôts GitHub en invites Claude. Devin a également réussi à exécuter cette tâche en créant une extension Chrome nommée Repo2Prompt. Il a toutefois eu un problème dans un premier temps ; L'extension a été générée sous le Manifest V2 qui vient d'être déprécié par Google. « L'extension Chrome a eu un problème avec le manifeste. Elle est basée sur un Manifest V2, mais Google l'a déprécié et maintenant nous sommes sur le Manifest V3. Il suffit de le dire à Devin pour que le problème soit corrigé », note Gao.

« L'extension remplit automatiquement le lien GitHub pour Repo2Prompt en fonction de la page ouverte, puis vous fournissez un jeton GitHub. Il ne reste plus qu'à créer le lien pour télécharger le texte pour l'utilisateur », a-t-il ajouté. Il s'agit d'un travail impressionnant de la part d'un outil d'IA, ce qui démontre les avancées significatives dans le domaine de l'IA générative. Le rapport de Gao a suscité de nombreuses réactions sur la toile. En outre, Gao a fourni un lien à partir duquel vous pouvez télécharger l'extension créée par Devin et l'essayer par vous-même.

Devin : mise en place d'un projet d'interface utilisateur de chatbot

Un autre utilisateur de X appelé Mckay Wrigley a partagé une vidéo détaillée de son expérience avec Devin. Wrigley a demandé à Devin de mettre en place son application "Chatbot UI" en local. Il a déclaré dans son message qu'il a été étonné par le travail de l'assistant d'IA de Cognition. « Je suis époustouflé par Devin. Regardez-moi l'utiliser pendant 27 minutes. C'est de la folie. L'ère des agents d'IA a commencé », a déclaré l'utilisateur. La vidéo montre les différentes étapes suivies par l'assistant d'IA pour exécuter les instructions de Wrigley. Dans un premier temps, Devin a cloné entièrement le dépôt GitHub.

Devin a analysé le fichier README du dépôt pour comprendre les besoins et les exigences du projet. Il installe ensuite les dépendances nécessaires au projet à l'aide de npm. Il a finalement réussi à recréer l'application Chatbot UI dans l'interface. Un autre aspect intéressant est que Devin s'est même connecté à l'application Chatbot UI lorsque Wrigley lui a donné son nom d'utilisateur et son mot de passe. Cela montre que ses capacités vont au-delà du codage, du débogage et du clonage de référentiels de code source. Les commentaires sous la vidéo révèlent les préoccupations des développeurs quant à leur avenir.

« C'est un peu effrayant de voir cela. Il est impossible que les entreprises n'optent pas pour ce type d'agents plutôt que pour des humains », a écrit un commentateur. Un autre a écrit : « alors, devons-nous maintenant nous concentrer uniquement sur le marketing ? Le site de Devin est très bien fait, l'avenir proche du développement logiciel va beaucoup changer. Les choses que l'humanité sera capable de construire à l'avenir ont simplement augmenté d'un ordre de grandeur, probablement plusieurs ordres de grandeur ». Pour d'autres, l'humanité est beaucoup plus proche de la singularité que les gens ne le croient.

Une carte des aéroports des États-Unis avec les temps de trajets

Ethan Mollick, un autre utilisateur ayant bénéficié d'un accès anticipé à Devin, a demandé à l'assistant d'IA de créer une carte indiquant les aéroports des États-Unis ainsi que les temps de trajet qui leur sont associés. Les captures d'écran partagées par Mollick sur X montrent que Devin a procédé étape par étape, démontrant une grande compréhension du langage naturel. Devin a d'abord identifié des sources de données sur les aéroports américains. Ensuite, il a mis en place un environnement de développement local conçu pour une application React et a utilisé les composants Chakra UI pour cette fonctionnalité.

Il a développé une bibliothèque de cartographie pour l'interface frontale à l'aide de Leaflet.js. Cela montre que Devin peut également mettre en place des applications Web interactives ou des applications mobiles en utilisant diverses API ou des progiciels disponibles. Enfin, Devin a déployé l'interface cartographique générée à l'aide de Netlify. Il ne s'est pas arrêté au déploiement, car il a continué à tester le code en profondeur. Cela permet de garantir des performances parfaites dans l'environnement de production. Lors du traitement de la tâche, l'utilisateur a détecté un bogue et l'a signalé à Devin.

Devin a corrigé le bogue de manière autonome. « J'ai eu un accès anticipé à Devin, l'IA développeur. Il est lent et tombe souvent en panne, mais vous pouvez commencer à voir ce qu'un agent d'IA peut faire. Il élabore un plan et l'exécute de manière autonome, en effectuant des recherches, en écrivant du code et en déboguant, sans que vous le surveilliez », a déclaré Mollick dans son message sur X. Les testeurs de Devin se sont dits impressionnés par ses capacités, bien que la plupart d'entre eux aient signalé la lenteur importante de l'outil. Mais Cognition devrait s'attaquer à ce problème dans les jours à venir.

Par ailleurs, d'autres captures d'écran montrent que Devin est capable de demander de l'aide lorsqu'il est en difficulté. Ainsi, pour corriger un bogue, Devin a généré un ticket d'assistance et a discuté avec l'équipe d'assistance pour trouver la bonne solution.

Devin pourrait-il remplacer les développeurs de logiciels à l'avenir ?

Certains commentateurs évoquent la possibilité que Devin remplace les développeurs à l'avenir. Selon eux, Devin peut voler les emplois des développeurs de logiciels et des débogueurs, car de grandes entreprises pourraient envisager d'utiliser Devin pour écrire des scripts. Devin innove en ce qui concerne le développement logiciel caractérisé par le codage manuel, les tâches répétitives et l'accent mis sur la fonctionnalité plutôt que sur l'innovation. Devin pourrait gérer ces aspects avec une efficacité remarquable, remplaçant potentiellement le besoin de certains ingénieurs logiciels débutants.

Toutefois, les capacités de Devin ont des limites. S'il excelle en matière d'automatisation et d'efficacité, certains critiques affirment qu'il lui manque les principaux atouts des ingénieurs logiciels "intelligents". Ces capacités comprendraient notamment :

  • créativité et innovation : selon les critiques, Devin ne peut pas vraiment innover. Il génère du code basé sur des modèles et des données existants, mais il a du mal à trouver des idées novatrices ou des solutions inédites ;
  • expertise dans le domaine : Devin n'a pas la connaissance approfondie des industries ou des applications spécifiques que possèdent les ingénieurs humains ;
  • communication avec les clients et compétences non techniques : la création de logiciels implique d'interagir avec les parties prenantes, de comprendre leurs besoins et de les traduire en solutions techniques. Cela nécessite des compétences en matière de communication, d'empathie et de négociation qui dépassent les capacités actuelles de Devin ;
  • réflexion stratégique et conception : les ingénieurs logiciels intelligents ne se contentent pas de coder. Ils définissent l'architecture, prennent des décisions cruciales en matière de conception et veillent à ce que le logiciel s'aligne sur les objectifs à long terme de l'entreprise. Devin ne peut pas reproduire cette vision stratégique.


« Essentiellement, Devin est un outil très puissant, mais il reste un outil. Le développement de logiciels se nourrit de l'ingéniosité humaine. Les ingénieurs logiciels intelligents tirent parti de leur créativité, de leur connaissance du domaine et de leur intelligence émotionnelle pour relever des défis complexes, concevoir des solutions innovantes et combler le fossé entre la technologie et les objectifs de l'entreprise », lit-on dans les commentaires. Ces critiques affirment que les agents d'IA ne remplaceront pas les humains, mais que l'avenir de l'ingénierie logiciel réside dans la collaboration entre les humains et l'IA.

« L'arrivée de Devin est le signe d'un changement, et non d'une élimination. L'avenir du développement de logiciels réside dans la collaboration entre les humains et l'IA », note un critique. Cette approche collaborative exploite les forces des deux parties : l'efficacité et la rapidité de l'IA, ainsi que la créativité, la réflexion stratégique et la touche humaine essentielles à la réussite. Ainsi, l'on pourrait envisager un scénario dans lequel :

  • Devin s'occupe des tâches banales : Devin automatise les tâches répétitives, ce qui permet aux développeurs humains de se concentrer sur la créativité, la conception et la résolution de problèmes stratégiques ;
  • les humains guident l'IA : les développeurs fournissent à Devin des exigences claires, une connaissance du domaine et une orientation stratégique ;
  • l'IA complète les humains : Devin suggère des solutions, identifie les problèmes potentiels et aide les développeurs à écrire un code plus propre et plus efficace.


En somme, l'émergence de Devin est un signal d'alarme pour les professionnels du développement logiciel. L'accent ne doit plus être mis sur les compétences de base en matière de codage, mais sur une approche plus holistique : la maîtrise de l'art de la résolution de problèmes, de la conception, de la communication et du leadership. La mise à niveau et le développement de ces capacités seront essentiels pour prospérer à l'ère du développement alimenté par l'IA.

« Les ingénieurs logiciels ne deviennent pas obsolètes, ils évoluent. Devin nous donne l'occasion d'accroître nos compétences et de repousser les limites du possible. L'avenir n'appartient pas à ceux qui craignent l'IA, mais à ceux qui apprennent à collaborer et à tirer parti de sa puissance pour créer des solutions logicielles véritablement transformatrices », lit-on dans les commentaires.

Source : Cognition

Et vous ?

Quel est votre avis sur le sujet ?
Que pensez-vous des capacités de l'assistant d'IA Devin ?
Que pensez-vous des retours d'expérience rapportés ci-dessus ?
Pensez-vous que Devin sera en mesure de remplacer les développeurs à l'avenir ?
L'avenir du développement logiciel sera-t-il basé sur une collaboration entre l'homme et l'IA ?

Voir aussi

« Nous avons confié à Devin de vraies offres sur une plateforme de recrutement et il a rendu satisfaction », soulignent les auteurs à propos de leur IA ingénieur logiciel « entièrement autonome »

« Apprendre à programmer sera inutile à l'avenir », d'après le PDG de Nvidia, selon lequel l'intelligence artificielle fera de tous des programmeurs au travers du langage naturel

Sam Altman assure que GPT-5 va bénéficier d'une amélioration massive par rapport à GPT-4, faisant « un bond en avant dans les capacités de raisonnement avancées »

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

Avatar de BenaeSan
Membre régulier https://www.developpez.com
Le 22/03/2024 à 10:50
Bonjour,
étant formateur dev web dans un CFA pour une formation plutôt orientée Webdesign (on ne forme pas spécialement des dev, mais plutôt des touche à tout), Je peux vous assurer, que même ceux qui ont le plus d'appétence pour le code, n'arrive pas spécialement à formaliser leur demande.

C'est-à-dire qu'ils vont voir la problématique, mais comment demander ? Et par la suite, une fois la demande formalisée, bah il faut réussir à utiliser et à adapter le code.

Donc, je pense que cette histoire d'IA qui va remplacer les dev est une manière de se faire peur, mais le fait de Madame Michu puisse remplacer une personne formée à l'algo, à la conception logiciel, etc. Permettez-moi d'en douter.

Attention, c'est un formidable outil, mais je pense que nous avons une vision biaisée, en tant qu'expert, mais il faut se rappeler qu'au moins 80% de la population(en étant large) n'est pas foutu d'utiliser un PC ni une tablette comme il faut.

Et bon, la révolution no-code, pour avoir testé, la courbe d'apprentissage, sans aucune connaissance de l'algo bah bon courage hein.
7  1 
Avatar de totolehero777
Membre régulier https://www.developpez.com
Le 22/03/2024 à 12:25
Et sur la page d'accueil de magic.dev ...ils recrutent des développeurs
6  0 
Avatar de Prox_13
Membre éprouvé https://www.developpez.com
Le 18/03/2024 à 16:14
A moins d'avoir une IA entrainée en interne, un système créé autour d'une IA ou un système de données extrêmement générique, les développeurs ne seront pas en danger car les systèmes actuels sont très spécifiques et complexes. (En tout cas dans l'industrie)
La site proposé en exemple (Jeu d'échec en ligne) est d'une complexité relativement basse et spécificité nulle (Générique), c'est le genre de prototype qui pourrait être présenté dans le cadre d'un projet BTS SIO SLAM par exemple, mais rien de définitif et/ou professionnel.

Personnellement, je trouve ça intéressant comme concept, mais c'est assez outrancier de dire que l'IA est en passe de remplacer les développeurs. Le plus gros problème reste l'interface Humain-IA, de faire en sorte que le code qui répond aux attentes soit maintenable, ou simplement optimisé et interopérable au point qu'il n'y ait jamais besoin d'y revenir.

Je pense qu'aucun des deux derniers points ne peut être considéré comme validés, en tout cas pour l'instant.
3  0 
Avatar de ParseCoder
Membre averti https://www.developpez.com
Le 22/03/2024 à 14:51
> Il me semble tout à fait évident qu'à l'avenir, tous les programmes seront écrits par des intelligences artificielles

Justement non ça n'a rien d'évident, bien au contraire: Le sage montre la lune, l'IA regarde le doigt
3  0 
Avatar de Vincent PETIT
Modérateur https://www.developpez.com
Le 23/03/2024 à 9:54
Il y a une grande confusion (et entretenue) dans le jargon de l'IA, entre ce qu'est un assistant et ce qu'est un sous traitant.

L'IA est un assistant et tout ceux qui l'ont utilisé (moi y compris) l'ont normalement constaté. Ça veut dire que pour l'exploiter il faut que vous soyez déjà développeur.
2  0 
Avatar de L33tige
Membre expérimenté https://www.developpez.com
Le 19/03/2024 à 12:30
Citation Envoyé par Prox_13 Voir le message
A moins d'avoir une IA entrainée en interne, un système créé autour d'une IA ou un système de données extrêmement générique, les développeurs ne seront pas en danger car les systèmes actuels sont très spécifiques et complexes. (En tout cas dans l'industrie)
La site proposé en exemple (Jeu d'échec en ligne) est d'une complexité relativement basse et spécificité nulle (Générique), c'est le genre de prototype qui pourrait être présenté dans le cadre d'un projet BTS SIO SLAM par exemple, mais rien de définitif et/ou professionnel.

Personnellement, je trouve ça intéressant comme concept, mais c'est assez outrancier de dire que l'IA est en passe de remplacer les développeurs. Le plus gros problème reste l'interface Humain-IA, de faire en sorte que le code qui répond aux attentes soit maintenable, ou simplement optimisé et interopérable au point qu'il n'y ait jamais besoin d'y revenir.

Je pense qu'aucun des deux derniers points ne peut être considéré comme validés, en tout cas pour l'instant.
Ce qui me fait peur c'est la quantité de personne qui vont beaucoup trop se reposer là-dessus, c'est deja un soucis quand les stagiaires copient collent du code là c'est le même truc mais sous stéroïdes...

Et même si le projet est réussi, bonjour les apps génériques fades et qui se ressemblent toutes... J'ai le même discours sur les marvels, c'est déjà du fast food recyclé quand les humains les produisent imaginez quand c'es de l'IA...
1  0 
Avatar de calvaire
Expert confirmé https://www.developpez.com
Le 25/03/2024 à 8:50
Citation Envoyé par nhugodot Voir le message
Au pire, les IA permettront ce que les compilateurs et transpilateurs permettent: écrire en langage de plus en plus naturel, mais formel néanmoins, pour créer du code machine encore plus optimisé que C. Et ce sera déjà énorme : passer tout le code C de Linux ou C++ de Windows à la moulinette de l'IA pour le transformer en Rust ou en anglais, ou mieux encore en la langue qu'on veut, la mienne, et trouver les bugs, trous de sécurité, optimisations, améliorations de design d'UI et même d'UX, rendre les logiciels personnalisés à l'utilisateur selon son niveau besoins et envies, prendre le meilleur des autres logiciels concurrents, améliorer et enrichir le logiciel en temps réel au fur et à mesure de son utilisation...
Wait and see, and dream!
les langages humains sont pas adaptés.
un mots et une phrase peut avoir plusieurs sens et en fonctions du milieu/de la culture d'un humain et du dataset d'une ia ça produit des choses très différente ce l'attendue.

pour une couleur par exemple, dire je veux un texte en rouge ca n'a pas de sens, il existe des 100aines de couleurs rouges. ils faut un code couleur sinon l'ia va te donner des couleurs rouges random et tu ne va pas respecter la charte graphique de ton entreprise.
80% de la population ne sait pas ce la par exemple, qu'une couleur c'est un code, des trucs tout bête comme ça y'en a pleins.

si tu dis ensuite je veux plus de rouge, es ce que je veux + ou - de rouge ?
des exemples comme ca y'en a la pelle et ca signifie qu'il va falloir écrire des romans de promptes... plus long que du code et avec des résultats incertains.

Incertains car quand le modele est re entrainé et bien les résultats changent. ChatGPT rétaintraine souvent ces ia et les réusktats change. Alors on pourrait faire du versionning, mais 1 modele de chatgpt sa doit peser plusieurs to de data, ça va vite couté cher pour un modele qui doit surrement être modifier tous les jours (j'ai pas dit re entrainé, mais les pipeline, certains doivent etre souvent modifié). un compilateur C ca fait que quelques mo et donc ton code de 20ans tourne encore et produit le même code assembleur.
2  1 
Avatar de totozor
Membre expert https://www.developpez.com
Le 20/03/2024 à 8:24
Citation Envoyé par L33tige Voir le message
Ce qui me fait peur c'est la quantité de personne qui vont beaucoup trop se reposer là-dessus, c'est deja un soucis quand les stagiaires copient collent du code là c'est le même truc mais sous stéroïdes...
Je pense que le problème est en effet que certains vont s'immiscer dans la brèche, avoir des réponses rapides et relativement satisfaisantes dans un premier temps. Puis se retrouveront avec des systèmes impossible à faire évoluer ou à maintenir.
Mais quelques années auront passé et le mal aura été fait donc ils devront investir plus que ce qu'ils avaient économiser pour refaire la même chose en mieux - dans un monde idéal. Ils commenceront surtout par demander le "AS IS" et s'arrêterons là parce que que ça coute cher.
C'est un peu l'histoire des applications dans l'industrie. Et oublions tout retour d'expérience sur ce genre de chose, l'informatique c'est pas notre domaine...
0  0 
Avatar de nhugodot
Membre habitué https://www.developpez.com
Le 22/03/2024 à 14:58
Au pire, les IA permettront ce que les compilateurs et transpilateurs permettent: écrire en langage de plus en plus naturel, mais formel néanmoins, pour créer du code machine encore plus optimisé que C. Et ce sera déjà énorme : passer tout le code C de Linux ou C++ de Windows à la moulinette de l'IA pour le transformer en Rust ou en anglais, ou mieux encore en la langue qu'on veut, la mienne, et trouver les bugs, trous de sécurité, optimisations, améliorations de design d'UI et même d'UX, rendre les logiciels personnalisés à l'utilisateur selon son niveau besoins et envies, prendre le meilleur des autres logiciels concurrents, améliorer et enrichir le logiciel en temps réel au fur et à mesure de son utilisation...
Wait and see, and dream!
0  3