Maison  >  Article  >  Périphériques technologiques  >  Alors, la possibilité de programmer va-t-elle disparaître ?

Alors, la possibilité de programmer va-t-elle disparaître ?

PHPz
PHPzavant
2023-04-13 22:46:01754parcourir

Auteur | Anirudh VK

Traducteur | Xu Jiecheng

Les plates-formes de codage automatique sont désormais à la pointe des technologies émergentes pour les programmeurs, offrant aux développeurs une nouvelle alternative basée sur l'intelligence artificielle pour écrire des extraits de code. Particulièrement portée par la plateforme GitHub Copilot de Microsoft, cette avancée modifie actuellement lentement le modèle de travail des développeurs du monde entier.

De nombreuses alternatives de codage ces dernières années, telles que les plateformes no-code et low-code, sont idéales pour les utilisateurs non techniques. Bien que de tels outils suscitent le mépris et la colère de certains « programmeurs inconditionnels » dans les cercles technologiques, nous devons admettre que même les vétérans du codage les plus expérimentés peuvent bénéficier des algorithmes de codage automatique, car ils réduiront considérablement la quantité de code que les développeurs doivent réellement saisir.

Andrej Karpathy, ancien directeur de l'intelligence artificielle chez Tesla et OpenAI, a exprimé ses sentiments sur les outils de codage automatique dans son tweet :

"Copilot accélère considérablement mon codage. Après avoir essayé Copilot, je suis très heureux." imaginez ce que ce serait de revenir au « codage manuel ». Même si j'apprends encore à l'utiliser, cela m'aide déjà à écrire environ 80 % du code et à maintenir une précision d'environ 80 %. lorsque je travaille avec Copilot, je ne code même pas vraiment. traitant d'autres problèmes de l'application, la plate-forme de codage automatique a également été rapidement adoptée dans le monde entier à un rythme alarmant en peu de temps. Prenons l'exemple de GitHub Copilot. Moins d'un mois après son lancement, CitHub Copilot a attiré plus de 400 000 abonnements payants (10 $/mois, 100 $/an). Cependant, à mesure que ces outils en constante amélioration commencent à assumer davantage de tâches de codage, une nouvelle question se pose : les développeurs perdront-ils progressivement leurs compétences en codage en raison de leur dépendance à l’égard d’outils de codage automatisés ?

1. Capacité de codage d'érosion

Honnêtement, tous ceux qui ont utilisé des outils de codage automatique savent que le code qu'ils écrivent automatiquement n'est pas parfait. Bien qu'il n'y ait rien de mal avec la syntaxe de l'extrait de code suggéré, ces outils sont souvent écrits de manière inefficace, ce qui peut entraîner des problèmes de dépendance. Un utilisateur Aryamaan du forum d'actualités YCombinator a fait les commentaires suivants sur l'utilisation de la plateforme de codage automatique "Ghostwriter" fournie par Replit :

"Cela m'a vraiment époustouflé, comme s'il savait ce que j'allais faire. Mais dans certains cas, il Encore plus bête que la saisie semi-automatique standard, il n'a aucune connaissance des variables déjà définies et ne les utilisera pas pour compléter des variables à moitié écrites. "

Bien que les gens aient toujours été insatisfaits des outils de codage automatique. Mais d’un autre point de vue, presque tous les outils de codage automatique sont basés sur des algorithmes d’intelligence artificielle, ce qui signifie également que leur facilité d’utilisation et leur fiabilité continueront de croître avec l’évolution de la technologie et l’augmentation du volume de données. Pour une nouvelle génération de développeurs, les outils de codage automatisés deviendront indispensables. Les développeurs potentiels qui sont aujourd’hui en phase d’apprentissage entreront dans ce domaine dans quelques années, et pendant ce temps, les outils de codage automatisés rattraperont probablement progressivement le développeur humain moyen. Cela entraînera également la possibilité que la prochaine génération de développeurs arrête lentement de coder, et que la génération suivante puisse même perdre dans une certaine mesure sa capacité de codage.

Les développeurs d’aujourd’hui ont besoin d’une compréhension approfondie des langages qu’ils utilisent et de savoir comment rédiger réellement des solutions aux problèmes. Cependant, les futurs codeurs n’ont besoin que de savoir comment fonctionne un langage, car ils peuvent combiner ces connaissances avec une ingénierie rapide pour générer des extraits de code. L'ingénierie rapide est le processus consistant à utiliser des techniques de PNL pour poser les bonnes questions au LLM, incitant ainsi l'algorithme à répondre de manière optimale.

Comme d'autres applications d'intelligence artificielle qui bouleversent différents domaines, le problème auquel les gens sont actuellement confrontés est la nécessité de parvenir à un consensus sur la manière de visualiser les langages de programmation. La prochaine génération de développeurs choisira soit d'apprendre à tirer pleinement parti des outils de codage automatique grâce à une ingénierie rapide, soit de s'en tenir à l'approche actuelle de l'apprentissage des langages de programmation. Ceux qui choisissent la seconde approche risquent de perdre face à l'intelligence artificielle. les prochaines années.

2. L'avenir des outils de codage automatique

Le taux d'adoption des outils de codage automatique a augmenté ces dernières années, et les entreprises à l'origine de ces produits continuent également d'innover pour ajouter de nouvelles fonctionnalités et optimiser l'expérience utilisateur. Bien que Github Copilot ait été critiqué pour avoir collecté le code utilisateur et l'avoir utilisé pour entraîner ses algorithmes, la vérité est que les algorithmes de Github Copilot continuent d'évoluer avec chaque morceau de code ajouté à sa base de données.

Bien sûr, de nombreuses entreprises adoptent actuellement une approche plus responsable en matière d’utilisation des données. Prenez Tabnine, par exemple, qui utilise uniquement des données accessibles au public pour entraîner ses algorithmes. Le modèle de Tabnine peut également apprendre du style de codage de l’utilisateur. En exécutant l'algorithme localement sur l'ordinateur de l'utilisateur, le modèle peut en apprendre davantage sur le style du programmeur et fournir des suggestions d'extraits de code mieux adaptées aux besoins de l'utilisateur. Cela empêche également que toutes les données soient renvoyées vers le référentiel centralisé, protégeant ainsi la confidentialité tout en offrant une valeur supplémentaire.

Contrairement à l'approche actuelle consistant à créer un grand modèle (comme le Codex) capable de fournir des recommandations dans plusieurs langages de programmation, les futures plates-formes de codage automatisées pourraient prendre plusieurs modèles et les connecter au langage qui leur convient le mieux. Tabnine a réussi à utiliser divers modèles open source dans différents langages de programmation. Dans une récente interview publique, Brandon Jung, vice-président de l'écosystème et du développement commercial chez Tabnine, a déclaré :

« Nous prenons les meilleurs modèles d'ailleurs, ils sont open source, ils sont géniaux. Nous prenons de très grands modèles, ces modèles. sont très coûteux à former, et nous nous spécialisons dans le codage en fonction de ce qui fonctionne le mieux pour chaque langue. Il s'avère que certains de ces modèles sont mieux adaptés à certaines langues que d'autres. "

Adopter cette approche ne rend pas seulement l'automatisme. La plate-forme de codage est plus efficace. Être précis permet également aux entreprises de les exécuter et de les affiner sur leurs référentiels de codes personnels. Actuellement, de nombreuses données sont isolées des fournisseurs de services tels que GitHub, AWS et GCP, mais s'éloigner de ces plates-formes pourrait rendre les outils de codage automatisés plus accessibles aux développeurs en général. Ceci, à son tour, encouragera davantage de personnes à utiliser plus efficacement les auto-encodeurs comme outils, augmentant ainsi la précision des prédictions de l'outil.

En prenant comme exemples GitHub Copilot et Tabnine, les outils de codage automatique créent un nouvel environnement de travail pour les futurs développeurs, et les avantages qu'ils apportent aux programmeurs sont indéniables. Des outils d'IA plus avancés peuvent non seulement aider les développeurs à améliorer considérablement l'efficacité de l'écriture du code, mais également à réduire le stress des codeurs souvent surmenés. À cet égard, les entreprises doivent également, à ce stade, reconnaître cette tendance et l'efficacité que les développeurs peuvent apporter dans l'utilisation des outils de codage automatique, et envisager de leur fournir les outils de développement tournés vers l'avenir dont ils ont besoin.

Lien original : https://analyticsindiamag.com/have-developers-forgotten-how-to-code/

Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!

Déclaration:
Cet article est reproduit dans:. en cas de violation, veuillez contacter admin@php.cn Supprimer