Recherche de site Web

Productivité et patience : comment GitHub Copilot élargit les horizons de développement


Les utilisateurs de Copilot voient la différence en termes de productivité et de bonheur car ils n'ont pas besoin d'écrire des milliers de lignes pour les tests.

GitHub, le référentiel partagé de choix pour les développeurs de tous types, a remodelé les règles du jeu pour le développement basé sur l'IA avec son offre Copilot. L'organisation estime que de nombreux développeurs utilisent l'outil pour générer entre 30 % et 50 % du code qu'ils mettent finalement en production.

Récemment, des chercheurs de Scalefocus ont lancé une expérience de quatre mois, impliquant trois équipes, pour mesurer l'utilité et la viabilité de GitHub Copilot. Leur conclusion était que Copilot « accélère le processus de développement, réduit le temps consacré aux tâches de codage de routine et améliore la productivité. En moyenne, son introduction augmente la productivité jusqu'à 20 % ».

Cependant, ont ajouté les chercheurs, « des limites ont également été observées ; Copilot était parfois confronté à des problèmes plus complexes, exigeant que des humains le guident vers la solution souhaitée ».

Comprendre les mécanismes et les meilleures pratiques de Copilot « est essentiel pour maximiser son potentiel », ont-ils averti. « Reconnaître que Copilot n'est peut-être pas également pertinent dans toutes les tâches est essentiel pour éviter les inefficacités. Identifier les domaines dans lesquels Copilot excelle peut améliorer considérablement sa valeur, et reconnaître ses lacunes permettra d'économiser beaucoup d'efforts inutiles. »

Copilot brille dans « la mise en œuvre de composants simples et bien définis en termes de performances et d'autres aspects non fonctionnels. Son efficacité diminue lorsqu'il s'agit de résoudre des bogues complexes ou des tâches nécessitant une expertise approfondie du domaine ».

GitHub lui-même estime le gain de productivité des développeurs à environ 55 %, a déclaré Mario Rodriguez, vice-président senior des produits chez GitHub, dans une récente interview animée par Sam Ransbotham du Boston College et Shervin Khodabandeh du Boston Consulting Group, publiée dans MIT Sloan Management Review.

Mais la productivité n'est pas la seule mesure qui détermine les intentions de GitHub avec Copilot. "Nous essayons même de demander à beaucoup de nos clients de vraiment mesurer le bonheur global des développeurs", a déclaré Rodriguez. "Si les développeurs sont mécontents dans une organisation, il ne se passe pas grand-chose, n'est-ce pas ? Vous voulez les garder heureux. Les talents sont rares, vous voulez donc absolument que vos développeurs soient heureux."

La clé pour déverrouiller le bonheur est que Copilot est conçu pour être réactif et empathique. "Copilot est très patient", a-t-il expliqué. "Cela ne vous dérange pas si vous lui demandez 'Vous savez, comment ça marche réellement de faire X, Y et Z dans cette base de code ?' ou 'J'ai oublié comment rédiger ce registre. Pouvez-vous simplement me dire quelle est la meilleure façon de procéder ?'"

En conséquence, Rodriguez a poursuivi : « Les gens qui l'utilisent finissent par être nettement plus productifs. Vous voyez parfois la différence dans la qualité du code, puis vous voyez également la différence dans leur bonheur car ils n'ont pas besoin d'écrire 10 000 mots. lignes de tests lorsque Copilot peut les aider."

Le plus grand défi de Copilot est le contexte, a-t-il souligné. "Le code et le développement de code ont beaucoup à voir avec le contexte dans lequel vous travaillez. Êtes-vous dans une base de code héritée ou non ? Êtes-vous en COBOL ou en C++ ou en JavaScript ou TypeScript ? Il y a beaucoup de contexte qui nécessite pour que la qualité de ce code soit élevée et que vous l'acceptiez."

GitHub Copilot, le premier Copilot à émerger en tant qu'assistant de développement alimenté par l'IA, est intégré dans une division appelée GitHub Next. Rodriguez a déclaré que cette concentration sur l'IA est une proposition totalement différente pour l'équipe GitHub. Le code GitHub typique est vérifié, testé et déterministe : "Nous savons si quelque chose fonctionne ou non. Nous savons s'il y a un bug ou non. Nous savons comment corriger, plusieurs fois, ce bug. Nous pourrions même voir l'erreur que nous avons que nous faisons en développant la fonctionnalité."

En revanche, les grands modèles linguistiques « ne sont pas déterministes », a-t-il poursuivi. "Et vous ne pouvez pas simplement vous attendre à ce qu'ils soient déterministes. Vous devez repenser la façon dont vous envisagez la qualité. Vous devez repenser la façon dont vous abordez la fonctionnalité." Chez GitHub, "nous avons toutes ces évaluations et évaluations hors ligne que nous effectuons pour GitHub Copilot. Et c'est ainsi que nous déterminons la qualité de ce qu'il vous donne dans quelque chose comme l'achèvement du code."

En fin de compte, à un certain niveau, tout le monde aura la possibilité de devenir développeur, a déclaré Rodriguez. "La définition d'un développeur de logiciels va commencer à changer à l'avenir", a-t-il déclaré. "Nous savons probablement tous cuisiner, ou faire du vélo, ou savoir nager, mais écoutez, je n'ouvrirai pas de restaurant étoilé Michelin demain."

L'impact de l'IA sur le développement logiciel sera plus subtil : "Et si une zone de texte suffisait pour pouvoir accomplir quelque chose qui crée un logiciel et dont ils pourraient ensuite tirer de la valeur ?" Par exemple, a déclaré Rodriguez : "Si je pouvais dire très rapidement sur mon téléphone : 'Hé, je pense parler de ces choses à ma fille. Pouvez-vous me donner les trois derniers articles X, Y et Z, puis simplement créer un petit programme auquel nous pourrions jouer comme un jeu ? Vous pourriez imaginer que Copilot puisse vous aider dans ce domaine à l'avenir. »

Pour aller plus loin, "imaginez alors que vous pourriez partager ce petit programme que Copilot a créé pour vous. Et vous pourriez le remixer, et vous continuez à remixer et à remixer. Les artistes font ça tout le temps, d'ailleurs. Je pense que des outils comme Copilot vont vous aider à y parvenir. Ce que nos enfants vont vivre grâce aux progrès de cette technologie va être incroyable.

Articles connexes