Leçon 10/17 8 min

Les pièges du vibe coding

De vibe coder à vibe engineer : responsabilité, tests et maintien des compétences.

FR EN

C'est quoi le vibe coding ?

En février 2025, Andrej Karpathy (co-fondateur d'OpenAI, ex-directeur IA de Tesla) a inventé le terme vibe coding : "oublier que le code existe" et laisser l'IA tout générer en se contentant de valider le résultat visuellement.

L'idée est séduisante : pourquoi perdre du temps à comprendre le code si l'IA peut le produire ? Le prototype marche, le client est content, on passe à la suite.

Sauf que les chiffres racontent une autre histoire :

  • 16 CTOs sur 18 interrogés rapportent des incidents en production causés par du code IA non reviewé
  • L'IA produit en moyenne 1,7 fois plus d'erreurs que le code écrit manuellement
  • Les développeurs qui "vibe codent" perdent leurs capacités de debugging en quelques semaines

Vibe coding vs vibe engineering

Simon Willison (créateur de Django, expert IA) fait une distinction cruciale :

Vibe coding

  • "Ça marche, je shippe"
  • Pas de tests
  • Pas de review
  • Pas de compréhension
  • Zéro responsabilité

Vibe engineering

  • "Ça marche ET je comprends"
  • Tests automatisés
  • Code review systématique
  • Explication ligne par ligne
  • Responsabilité totale

La différence ? La responsabilité. Le vibe engineer utilise l'IA pour aller plus vite, mais il reste responsable de chaque ligne. Il comprend le code, il le teste, il peut l'expliquer. Le vibe coder croise les doigts et espère que ça tienne.

L'atrophie des compétences

C'est le piège le plus insidieux : plus vous déléguez à l'IA, plus vous perdez vos compétences de base. Et la compétence qui s'atrophie le plus vite ? Le debugging.

C'est logique : si vous ne debuggez jamais vous-même, vous perdez l'intuition de "où chercher". Et le jour où l'IA ne trouve pas le bug (ce qui arrive souvent sur les problèmes complexes), vous êtes coincé.

La solution : le "No-AI Sprint". Périodiquement (une demi-journée par semaine, un jour par mois), codez sans IA. Pas de Copilot, pas de Claude, pas de ChatGPT. Juste vous, votre éditeur et la documentation.

C'est comme un athlète qui fait des exercices de base : ce n'est pas sexy, mais c'est ce qui vous garde compétent quand ça compte.

La règle d'or

"Si tu peux pas expliquer chaque ligne, tu l'as pas appris."

Cette règle s'applique à tout : le code que vous écrivez, le code que l'IA génère, le code que vous trouvez sur Stack Overflow. Si vous ne pouvez pas expliquer pourquoi chaque ligne existe et ce qu'elle fait, vous n'avez pas le droit de la shipper.

Conclusion : vous n'êtes plus un débutant

Si vous avez suivi ce parcours (HTML, CSS, JavaScript, PHP, Python, Go, et maintenant la méthode IA) vous n'êtes plus un débutant. Vous êtes un développeur qui utilise l'IA comme un outil, pas comme une béquille.

Le bâtiment est construit, l'électricité fonctionne, et vous savez maintenant comment utiliser les meilleurs outils du marché pour continuer à construire, toujours plus vite, toujours mieux.

La seule limite, c'est votre curiosité.

Pour aller plus loin

What is vibe coding?

In February 2025, Andrej Karpathy (OpenAI co-founder, former Tesla AI director) coined the term vibe coding: "forget that the code even exists" and let AI generate everything while just validating the result visually.

The idea is seductive: why spend time understanding code if AI can produce it? The prototype works, the client is happy, move on.

Except the numbers tell a different story:

  • 16 out of 18 CTOs surveyed report production incidents caused by unreviewed AI code
  • AI produces on average 1.7 times more errors than manually written code
  • Developers who "vibe code" lose their debugging abilities in a few weeks

Vibe coding vs vibe engineering

Simon Willison (Django creator, AI expert) makes a crucial distinction:

Vibe coding

  • "It works, I ship it"
  • No tests
  • No review
  • No understanding
  • Zero accountability

Vibe engineering

  • "It works AND I understand"
  • Automated tests
  • Systematic code review
  • Line-by-line explanation
  • Full accountability

The difference? Accountability. The vibe engineer uses AI to go faster, but remains responsible for every line. They understand the code, test it, can explain it. The vibe coder crosses their fingers and hopes it holds.

Skill atrophy

This is the most insidious trap: the more you delegate to AI, the more you lose your core skills. And the skill that atrophies fastest? Debugging.

It makes sense: if you never debug yourself, you lose the intuition of "where to look". And the day AI cannot find the bug (which happens often on complex problems), you are stuck.

The solution: the "No-AI Sprint". Periodically (half a day per week, one day per month), code without AI. No Copilot, no Claude, no ChatGPT. Just you, your editor, and the documentation.

It is like an athlete doing basic exercises: not glamorous, but it is what keeps you competent when it matters.

The golden rule

"If you can't explain every line, you haven't learned it."

This rule applies to everything: the code you write, the code AI generates, the code you find on Stack Overflow. If you cannot explain why every line exists and what it does, you do not have the right to ship it.

Conclusion: you are no longer a beginner

If you followed this path — HTML, CSS, JavaScript, PHP, Python, Go, and now the AI method — you are no longer a beginner. You are a developer who uses AI as a tool, not a crutch.

The building is constructed, the electricity works, and you now know how to use the best tools on the market to keep building, always faster, always better.

The only limit is your curiosity.

Going further

Avec l'IA

Demandez à Claude d'évaluer vos pratiques actuelles :

Je suis développeur et j'utilise l'IA quotidiennement. Voici mes pratiques actuelles : [décrivez comment vous utilisez l'IA]. Évalue-moi sur une échelle de 'vibe coder' à 'vibe engineer'. Sois honnête. Pour chaque point faible, donne-moi une action concrète à mettre en place cette semaine.
Ré-explique sans regarder

Sans relire l'évaluation de l'IA : avec tes mots, quelle seule chose transforme un vibe coder en vibe engineer, et pourquoi ?

Une bonne explication dit : la responsabilité. Le vibe engineer reste propriétaire de chaque ligne (il la comprend, la teste, peut l'expliquer) ; le vibe coder valide visuellement et espère. Aller vite avec l'IA n'est pas le problème : c'est shipper sans pouvoir répondre de ce qu'on livre qui l'est.
Exercice : Votre charte personnelle

Écrivez vos propres règles pour utiliser l'IA de façon responsable. Au moins 3 règles concrètes que vous vous engagez à suivre. Pensez à : compréhension, tests, review, compétences.

Accepter ou rejeter le code de l'IA

Tu demandes à l'IA une fonction de remise et tu reçois ceci. Le navigateur affiche le bon prix sur ton panier de test. Ton rôle de relecteur : tu l'acceptes telle quelle et tu la shippes, ou tu la rejettes ?

function applyDiscount(price, code) {
  if (code === "WELCOME") return price * 0.9;
  if (code === "VIP") return price * 0.75;
  return price - price * 0.05;
}
Rejeter. C'est exactement le piège du vibe coding : « ça marche sur mon panier de test » ne veut pas dire que c'est juste. Le return final applique 5% à tout code inconnu (faute de frappe, code expiré, chaîne vide) : un client tape n'importe quoi et obtient une remise. Aucun test ne couvre ce cas, et personne n'a su l'expliquer avant de lire le verdict. Si tu ne peux pas justifier la branche par défaut, tu ne shippes pas.
Rappel libre

Sans remonter dans la leçon : qu'est-ce que le « No-AI Sprint », et quelle compétence cherche-t-il à protéger ?

Le No-AI Sprint, c'est coder volontairement sans aucune IA pendant une période courte et régulière (une demi-journée par semaine, un jour par mois) : pas de Copilot, pas de Claude, pas de ChatGPT, juste toi, ton éditeur et la doc. Il protège la compétence qui s'atrophie le plus vite quand on délègue tout : le debugging, c'est-à-dire l'intuition du « où chercher » quand l'IA ne trouve pas le bug.
Qu'est-ce qui distingue le vibe coding du vibe engineering ?
Pourquoi coder parfois SANS IA ?
La règle d'or du développeur assisté par IA ?
Prochaine étape

Le vibe coding fait des dégâts d'autant plus quand on ne peut pas revenir en arrière. La prochaine leçon, Git le filet de sécurité, vous donne le réflexe qui change tout : commiter souvent pour pouvoir laisser l'IA tenter des choses sans jamais perdre votre travail.

Leçon 11 : Git, le filet de sécurité →
Besoin d'un développeur pour votre projet ?

Réponse sous 24h · Sans engagement