Github Copilot, pas si intéressant après tout

Github Copilot, pas si intéressant après tout
Alexandre P. dans Dev - mis à jour le 15-12-2024

Découvrez les risques et les progrès des générateurs de code comme Copilot : analysez leur maturité et leur impact sur la vitesse et la qualité du développement.

Mise à jour fin 2024

Il aura fallu un an et plusieurs mois de mises à jour pour que je commence à trouver Copilot pratique. Je peux encore lui faire des reproches quant à son auto-complete, qui, très souvent, se contente de reproduire les bonnes pratiques en mettant de côté votre implémentation et votre organisation.

Mais je constate un gros progrès à ce niveau. Par exemple, si vous ouvrez deux fichiers côte à côte, il aura tendance à vous suggérer ce qu'il voit depuis l'autre fichier, de manière à coller avec votre approche.

On pourra tout de même regretter qu'il ne parse pas, ou pas toujours, l'entièreté de votre répertoire afin d'être beaucoup plus impactant et précis.

De même, jetez un œil à Cursor, un IDE concurrent de Visual Code, que j'ai analysé dans cet article . Celui-ci semble combler ce vide du côté de Visual Code.

Mon constat initial

Il n’y a pas longtemps, je postais un article plutôt critique concernant les LLM (Large Language Model, comprenez les bots intelligents comme ChatGPT). Le fait est qu’en tant qu’utilisateur je trouve cet outil de moins en moins pratique car ses réponses sont de plus en plus brèves et manquent de détails. Et je ne suis pas le seul à l’avoir constaté .

De même, je tenais un discours assez critique concernant Github Copilot étant donné que ce dernier s’appuie sur Chatgpt. Je disais que j’avais de gros doutes quant à son efficacité car Chatgpt lui même n’est pas très précis, or le code nécessite de la précision.

Et bien, là aussi, je ne suis pas le seul à penser de la sorte. Mes confrères de développez.com ont justement posté un article plutôt critique sur le sujet .

Je pense qu'une IA serait plus utile à faire de l’optimisation de code, de la relecture, du formatage etc… qu’à penser réellement les features. Le fait que son contenu se base sur le passé, il arrive souvent que ces outils fournissent des snippets obsolètes. De même, j’ai un regard assez critique sur ce qu’ils fournissent comme résultat.

Open source ou pas, les projets étant très différents, ainsi que l’organisation dans les projets. Ce qui signifie qu’en termes de qualité on peut avoir tout et n’importe quoi. Par exemple, un des moteurs qui fait tourner la majorité des pages du web s’appelle Wordpress, et pour y avoir mis les mains, je n’ai pas une haute opinion de ce moteur: le code est mal organisé, mal structuré, brouillon… Donc si on me dit génial “je génère ton code grâce à des projets complètement claqués”, et bien j’ai plus peur du résultat qu’autre chose.

Donc voilà je ne suis pas autant enjoué de cette situation, je préfère de loin la qualité d’un expert qu’un générateur automatique qui ne comprend pas le quart de ce qu’il fait. Et comprenez-moi bien, c’est le cas aujourd’hui. Je ne dis pas que dans dix ans, ce sera toujours une réalité, et surtout j’espère bien que non. Ce serait évidemment intéressant de collaborer avec des IA au niveau, mais pour le moment ce n'est tout simplement pas envisageable.

Encore une fois, ces limitations sont dû à la conception actuelle des modèles neuronaux. Ces derniers font de l'apprentissage, mais ne font pas de l'expérimentation. Ce qui signifie que leur compréhension s'arrête à ce qui a été réalisé. Créant ainsi des lacunes lorsqu'il s'agit d'être innovant en matière d'approche et d'optimisation, ce qu'arrive à faire aisément un humain.

#chatgpt#ia#github copilot#code

user picture

Alexandre P.

Développeur passionné depuis plus de 20 ans, j'ai une appétence particulière pour les défis techniques et changer de technologie ne me fait pas froid aux yeux.


Votre vie privée

Nous utilisons des cookies pour améliorer votre expérience sur notre site, analyser notre trafic et personnaliser les publicités. En cliquant sur "Accepter", vous consentez à l'utilisation de tous les cookies. Vous pouvez également choisir de refuser en cliquant sur le bouton "Refuser".