Comment bien pratiquer le « Vibe Coding » ? Voici une masterclass animée par le responsable des agents de programmation chez Anthropic

comment effectuer correctement le codage vibratoire

Si vous vous cassez la main et que vous devez porter un plâtre pendant deux mois, mais que votre travail ne peut pas s'arrêter, que doit faire un programmeur ? Erik Schluntz, chercheur à Anthropique et coauteur de Former des agents efficaces, apporte une réponse : tout confier à Claude.

Aujourd'hui, alors que l'IA redéfinit en profondeur les règles du secteur des logiciels, Vibe Coding est devenu un incontournable pour les entreprises qui souhaitent multiplier leur productivité.

Il y a quelques mois, Schluntz a fait part de son expérience inhabituelle, celle d’avoir été contraint de se livrer à un “ travail entièrement automatisé ”, et a abordé un sujet quelque peu controversé : comment pratiquer le « Vibe Coding » de manière responsable dans des environnements de production.

Cette conférence regorge de conseils pratiques et, ces derniers jours, elle est redevenue virale sur X. Un utilisateur du nom de Movez l’a même qualifiée de « meilleure que 100 formations payantes ».

Dans l'esprit de Vibe Coding, nous avons également eu recours à l'IA pour organiser la conférence de Schluntz.

Si vous souhaitez visionner cette excellente conférence, Vous pouvez cliquer ici pour y accéder.

Commentaire sur Vibe Coding

Qu'est-ce que le « Vibe Coding » ?

Qu'est-ce que le « Vibe Coding » ?

Beaucoup de gens assimilent l’utilisation intensive d’outils d’IA tels que Cursor ou Copilot pour la génération de code au “ Vibe Coding ”. Ce n’est pas tout à fait exact. Tant que le développeur maintient une boucle de rétroaction étroite avec le modèle — en relisant et en modifiant le code ligne par ligne —, on ne peut pas parler de véritable « vibe ».”

André Karpathy en a donné une définition plus précise : “ Se plonger pleinement dans l'ambiance, embrasser la croissance exponentielle de la technologie et oublier complètement que le code existe. ”

Ce mode de travail réduit considérablement les obstacles au développement, permettant ainsi à des personnes sans formation d'ingénieur de créer de manière autonome des applications complètes. Cependant, par le passé, les cas de réussite de cette approche se limitaient principalement à des jeux personnels ou à des projets à faible risque. Lorsque des non-professionnels appliquent cette approche dans de véritables environnements de production, cela conduit souvent à des situations incontrôlables, telles que l’épuisement des quotas d’API, le contournement de la validation des abonnements ou la modification arbitraire des bases de données.

Pourquoi le « Vibe Coding » est important : la logique de la croissance exponentielle

Si les environnements professionnels à haut risque comportent des facteurs incontrôlables, pourquoi devrions-nous malgré tout continuer à faire progresser cette technologie ? La principale force motrice réside dans la “ croissance exponentielle ” des capacités de l'IA.

Actuellement, la durée des tâches que l’IA est capable de gérer de manière autonome double environ tous les 7 mois. Aujourd’hui, l’IA peut réaliser de manière fiable des tâches de codage qui prennent environ 1 heure, et les développeurs ont encore l’énergie nécessaire pour les relire ligne par ligne. Mais d’ici l’année prochaine ou l’année suivante, lorsque l’IA sera capable de générer d’un seul coup du code équivalent à une journée, voire à une semaine de travail humain, si nous continuons à nous en tenir à la révision et à la modification synchrones traditionnelles, les ingénieurs humains deviendront inévitablement le goulot d’étranglement face à l’explosion de la puissance de calcul.

Le nombre de tâches de programmation Vibe que les ALS sont capables d'effectuer double tous les 7 mois

On peut se référer à l'histoire des compilateurs. Au début, les développeurs ne faisaient pas confiance aux compilateurs et continuaient à vérifier le code assembleur sous-jacent. À mesure que l'échelle des systèmes s'est accrue, les développeurs ont dû apprendre à faire confiance à des abstractions de plus haut niveau. À l'avenir, l'ensemble du domaine du génie logiciel devra se pencher dès maintenant sur la question suivante : comment accepter, de manière sûre et responsable, des systèmes générés directement par de grands modèles dans des environnements de production ?.

Comment mettre en œuvre le « Vibe Coding » en production

Le principe fondamental de la pratique du « Vibe Coding » en production est le suivant : oublier l'existence du code, mais toujours se concentrer sur l'existence du produit.

Dans la gestion d'entreprise moderne, les directeurs techniques (CTO) s'appuient sur des tests d'acceptation pour encadrer les experts techniques, les chefs de produit valident les fonctionnalités en testant le produit, et les PDG vérifient les modèles financiers à l'aide d'un échantillon de données clés. Aucun d'entre eux ne se plonge dans les détails d'exécution les plus basiques. Les ingénieurs logiciels doivent également mettre en place des couches d'abstraction similaires, pouvant être vérifiées sans avoir à lire le code sous-jacent.

L'essentiel est de trouver des couches d'abstraction que l'on peut vérifier.

Cependant, le développement actuel de l'IA se heurte à un obstacle technique de taille : la dette technique. À l'heure actuelle, hormis la lecture intégrale du code source, il est extrêmement difficile de mesurer ou de vérifier la dette technique à l'aide de méthodes systématiques.

Partant de là, Erik Schluntz propose de se concentrer sur les “ nœuds feuilles ” du code source. Ces nœuds désignent des fonctions terminales ou des composants auxiliaires dont aucun autre module ne dépend. Dans ces domaines, même si une certaine dette technique est introduite, celle-ci est acceptable, car ces éléments évoluent rarement et n’entravent pas la création future de modules.

En revanche, en ce qui concerne le cœur du système et son architecture sous-jacente, les ingénieurs doivent encore en avoir une compréhension approfondie et veiller à préserver rigoureusement son évolutivité.

Il convient de noter qu’à mesure que les capacités des modèles s’améliorent, le niveau de code que l’on peut confier à l’IA s’étend vers le bas. Lors de récents tests internes menés chez Anthropic, le taux de réussite de l’IA dans la génération d’architectures de haute qualité est en hausse, et cette limite évolue de manière dynamique.

La compétence essentielle du « Vibe Coding » : penser comme un chef de produit

Pour que l'IA produise du code d'ingénierie de haute qualité, les développeurs doivent changer de mentalité et se considérer comme les chefs de produit de Claude. Ne demandez pas ce que Claude peut faire pour vous ; demandez-vous ce que vous pouvez faire pour Claude.

Face à des tâches de développement complexes, les développeurs doivent guider l'IA comme s'ils accueillaient un nouveau collaborateur lors de son premier jour de travail. Se contenter de donner une instruction du type “ implémente cette fonctionnalité ” est voué à l'échec. Les développeurs doivent fournir des indications détaillées sur la structure du code et définir clairement les exigences et les contraintes.

Avant de laisser Claude écrire le code proprement dit, Schluntz passe généralement entre 15 et 20 minutes à interagir avec celui-ci. Cela consiste notamment à laisser l’IA explorer la base de code, trouver les fichiers pertinents et élaborer conjointement un plan d’exécution clair. Ensuite, l’ensemble de ce contexte et de ces spécifications bien organisés est regroupé en une seule consigne avant l’exécution.

Dans le cadre de ce processus, le taux de réussite du modèle augmente de manière exponentielle.

Cas concret : 22 000 lignes de code fusionnées en une seule journée

Schluntz a dévoilé un cas extrême tiré de la réalité au sein d’Anthropic. Son équipe a réussi à intégrer une modification de code comptant jusqu’à 22 000 lignes dans une base de code d’apprentissage par renforcement en production, dont la majeure partie avait été écrite par Claude.

Afin de mener à bien cette fusion de manière responsable, l'équipe a adopté quatre stratégies :

  • Une planification approfondie en amont du point de vue du chef de produit
  • Limiter strictement les modifications aux nœuds feuilles
  • Vérification manuelle de la logique du système central
  • Conception de points de contrôle vérifiables et de tests de résistance

Grâce à cette approche, ce qui nécessitait à l'origine deux semaines de travail en ingénierie humaine a pu être réalisé en une seule journée.

Lorsque les coûts de développement baissent considérablement, les ingénieurs ont alors la possibilité de mener à bien des refactorisations à grande échelle et des itérations de fonctionnalités qui étaient auparavant impossibles en raison de contraintes de ressources.

Techniques avancées de codage « Vibe » et questions-réponses pratiques

M. Schluntz a également partagé des conseils pratiques couvrant de nombreux aspects, allant des méthodes d'apprentissage à l'utilisation des outils.

En matière d'apprentissage : les programmeurs n'ont peut-être plus à se soucier des détails de bas niveau, mais l'IA accélère considérablement la vitesse d'apprentissage. Les développeurs peuvent demander à l'IA de leur expliquer des bibliothèques ou des choix qui leur sont peu familiers, ce qui en fait un « pair programmer » toujours disponible.

Concernant l'accumulation d'expérience : l'IA permet d'accélérer le processus d'essais et d'erreurs. Des décisions qui prenaient autrefois des années à valider peuvent désormais être testées en quelques mois, ce qui permet aux ingénieurs d'acquérir une expérience bien plus importante dans le même laps de temps.

À ce sujet : le niveau de détail dépend de l'importance que vous accordez à la mise en œuvre. Cependant, imposer trop de contraintes au modèle réduit souvent ses performances. Considérez cela comme si vous communiquiez avec un ingénieur débutant, plutôt que d'imposer des modèles rigides.

En matière de sécurité : le Vibe Coding n'est sûr que s'il est encadré par une personne qui maîtrise les risques. Les problèmes surviennent généralement lorsque des utilisateurs non initiés à la technique déploient des systèmes sans en avoir pleinement conscience.

En matière de conception de produits : les futurs outils pourraient offrir des systèmes “ dont la correction est démontrable ”, dans lesquels la logique sensible du backend serait verrouillée, permettant ainsi aux utilisateurs d'expérimenter en toute sécurité dans des environnements contrôlés.

En matière de tests : le développement piloté par les tests est extrêmement utile. Au lieu de tests complexes, privilégiez des tests de bout en bout simples : un scénario normal et deux cas d'échec. Des tests minimalistes améliorent la fiabilité et la lisibilité.

Concernant le flux de travail : il est courant d'associer Claude Code et Cursor. Claude se charge de la génération, tandis que les développeurs vérifient ou peaufinent les résultats. Le contexte doit être compressé régulièrement pour éviter toute dérive.

Dans le cas de bases de code que vous ne connaissez pas : avant de mettre en œuvre des fonctionnalités, utilisez l'IA pour explorer le système — repérez les modules clés, identifiez les implémentations similaires et construisez-vous un modèle mental avant de passer à l'exécution.

Conclusion : ce que signifie réellement “ adopter la croissance exponentielle ”

L'essence même de la croissance exponentielle ne réside pas seulement dans l'amélioration continue, mais dans le fait que cette amélioration se produit bien plus rapidement que nous ne le prévoyons.

À l'image d'une courbe qui commence lentement avant de monter en flèche, les capacités de l'IA pourraient ne pas simplement doubler, mais augmenter de plusieurs ordres de grandeur.

Si l'on retrace l'histoire de l'informatique, depuis les kilo-octets de mémoire des années 1990 jusqu'aux téraoctets d'aujourd'hui, l'amélioration n'est pas du simple double, mais des millions de fois supérieure.

La vraie question n'est donc pas “ que se passerait-il si les modèles devenaient deux fois plus performants ? ”, mais “ que se passerait-il s'ils devenaient un million de fois plus performants ? ”

C'est là le véritable sens du « Vibe Coding » — et la raison pour laquelle on ne peut pas l'ignorer.

Retour en haut