Cursor et l'éditeur de code IA

· 5 min de lecture

Points clés

  • Demandez à l'IA d'expliquer le code avant de lui permettre de modifier quoi que ce soit.
  • Limitez la taille des modifications et relisez chacune avant de l'accepter.
  • Un projet bien organisé laisse moins de place aux suppositions de l'IA, et celles-ci sont plus justes.

La semaine dernière, Cursor a connu un incident très public. Des utilisateurs étaient déconnectés lorsqu'ils passaient d'un ordinateur à un autre. L'un d'eux a écrit au soutien technique et a reçu une réponse courtoise de « Sam » expliquant qu'il s'agissait d'une nouvelle politique : un seul appareil par abonnement. Cette politique n'existait pas. Sam était un robot de soutien IA, et il l'avait inventée. L'incident a été largement relayé, des utilisateurs ont annulé leur abonnement et l'un des cofondateurs a présenté des excuses publiques. L'utilisateur a été remboursé.

Nous citons cet incident parce qu'il illustre bien l'état actuel des outils d'IA. L'IA intégrée à l'éditeur est réellement utile. L'IA qui répondait aux courriels du soutien a inventé une règle et l'a affirmée avec une assurance totale. Les deux provenaient de la même entreprise, au cours de la même semaine.

Qu'est-ce que Cursor, et pourquoi a-t-il été adopté si rapidement?

Cursor est un éditeur de code conçu par Anysphere, une entreprise fondée en 2022 par un groupe d'étudiants du MIT. Il s'agit d'une version dérivée de Visual Studio Code; quiconque a déjà utilisé VS Code, comme la plupart des professionnels du Web, s'y retrouve dès le premier jour. Les extensions et les raccourcis existants continuent de fonctionner. L'ajout principal est un panneau de clavardage latéral qui a accès à l'ensemble du projet.

C'est ce panneau qui le distingue. GitHub Copilot complète surtout la ligne en cours de saisie. Cursor répond à des questions sur le code, modifie plusieurs fichiers à la fois et offre désormais un mode agent qui effectue des modifications dans tout le projet, lance des commandes et présente une série de modifications que le développeur accepte ou refuse.

Les développeurs paient d'ailleurs pour l'utiliser. Selon les données publiées cette année, les revenus annuels de Cursor dépassent cent millions de dollars, un chiffre inhabituel pour un éditeur de texte. Les développeurs ne paient généralement pas pour un éditeur, ce qui montre le temps que l'outil leur fait gagner.

Qu'est-ce que Cursor change pour les petits projets Web?

Pour les grandes équipes de développement logiciel, le principal avantage est la productivité. Pour les petits projets Web, le changement le plus important, selon nous, est que l'éditeur peut désormais répondre aux questions.

Bien des sites de petites entreprises sont des héritages. Une personne a conçu un thème WordPress il y a des années, une autre a ajouté une extension, une troisième a modifié le pied de page. Aucune documentation n'a été laissée. Ouvrir un tel projet exigeait autrefois un après-midi de lecture avant de pouvoir y apporter une modification en toute sécurité.

Avec un éditeur IA, le développeur ouvre le dossier et pose ses questions. Où le formulaire de contact envoie-t-il ses courriels? Pourquoi ce fichier CSS est-il chargé deux fois? Que fait cette fonction, et quels éléments l'appellent? La réponse arrive en quelques secondes. Elle n'est pas toujours exacte, mais elle l'est assez souvent pour orienter vers le bon fichier.

Cela suffit à réduire le coût de réparation des anciens projets. Pour une petite entreprise, un entretien moins coûteux importe davantage qu'une première conception plus rapide. La plupart des petits sites ne disparaissent pas parce qu'ils ont été mal conçus. Ils disparaissent parce que chaque petite modification coûte plus que ce que le propriétaire est prêt à payer; aucune mise à jour n'est faite, et le site devient peu à peu désuet.

Quels risques comporte le mode agent de Cursor?

Le mode agent est aussi la fonction qui comporte le plus de risques.

Le développeur demande une seule modification, et l'agent décide en cours de route que trois autres éléments doivent être améliorés. Il renomme une variable dans un fichier qui n'avait pas été mentionné, reformate un gabarit ou « simplifie » une fonction dont la complexité avait une raison d'être. Tout semble encore correct dans le navigateur. Une semaine plus tard, la version française d'une page perd son menu, ou un ancien formulaire cesse d'envoyer ses messages.

Il n'y a là aucune mauvaise intention. L'agent est un assistant zélé qui ne garde aucune mémoire des raisons pour lesquelles les choses ont été faites ainsi. La même situation se produit avec un nouveau développeur, simplement plus lentement.

Le second problème est structurel. Dans un projet comportant des dossiers en double, d'anciennes copies de gabarits et un thème nommé « theme-final-2 », l'IA doit deviner quelle version est la bonne, et ses suppositions ne sont fiables que dans la mesure où le projet est bien organisé.

L'incident de Sam s'applique aussi ici. L'histoire du robot de soutien ne concerne pas le code, mais elle illustre la même défaillance : une réponse assurée, formulée avec courtoisie, que personne n'a vérifiée. Un éditeur qui invente un nom de fonction produira au moins une erreur. Un robot qui invente une politique fait perdre des clients à l'entreprise.

Quelles pratiques permettent de garder un code propre avec l'IA?

Demander une explication avant toute modification

Sur un projet que vous ne connaissez pas, nous recommandons de commencer par une question plutôt que par une demande de modification : expliquer l'organisation du projet, ou décrire le rôle d'un fichier. Si l'explication est inexacte, vous apprenez que l'IA comprend mal le projet avant qu'elle n'ait modifié quoi que ce soit, à très faible coût.

Faire de petites modifications et les relire

Effectuez une modification à la fois et lisez les différences avant de l'accepter. Cursor affiche chaque modification en vert et en rouge. Lorsque la liste est longue, il est tentant de cliquer sur « tout accepter »; c'est précisément le moment où une relecture attentive est la plus utile. Si une modification est trop importante pour être lue confortablement, elle est trop importante, et il convient d'en demander une plus petite.

Maintenir une structure de projet propre

Supprimez les copies obsolètes ou, de préférence, déplacez-les hors du projet dans un dossier d'archives. Utilisez des noms clairs et simples. Tenez à jour un court fichier README qui indique ce qui est en ligne. Il s'agit de rangement, mais un éditeur IA travaille nettement mieux dans un projet bien organisé, tout comme les personnes.

Que doit savoir le propriétaire d'une petite entreprise?

La plupart des propriétaires d'entreprise n'ouvriront jamais Cursor, et c'est tout à fait normal. La personne qui entretient leur site pourrait toutefois l'utiliser, et l'avantage devrait se refléter sur la facture. Les petites corrections qui demandaient un après-midi devraient maintenant prendre moins de temps. Si ce n'est pas le cas, il est légitime d'en demander la raison.

Par ailleurs, un travail plus rapide ne signifie pas un travail non vérifié. Nous recommandons de demander à la personne responsable si elle relit les modifications apportées par l'IA avant la mise en ligne. La réponse devrait être oui, chaque fois, sans hésitation.

Si votre site est devenu l'un de ces projets hérités peu documentés, cette année est un bon moment pour s'en occuper. Un véritable ménage d'entretien coûte beaucoup moins cher lorsque les outils peuvent lire et expliquer le code existant.

Votre entreprise mérite d'être trouvée.

Parlez-nous de votre projet. Nous vous répondons en français ou en anglais, et nous nous déplaçons partout dans la MRC de Papineau.

Affichage

Vos choix restent dans ce navigateur. Rien n'est envoyé.

Taille du texte
100 %
Couleurs
Lecture
Autres aides
Accessibilité du site