{"id":11,"date":"2026-08-05T11:39:17","date_gmt":"2026-08-05T11:39:17","guid":{"rendered":"https:\/\/muskalab.fr\/blog\/vibe-coding-ere-du-logiciel-jetable\/"},"modified":"2026-08-05T22:38:47","modified_gmt":"2026-08-05T22:38:47","slug":"vibe-coding-ere-du-logiciel-jetable","status":"publish","type":"post","link":"https:\/\/muskalab.fr\/blog\/vibe-coding-ere-du-logiciel-jetable\/","title":{"rendered":"Le vibe coding ou l\u2019\u00e8re du logiciel jetable"},"content":{"rendered":"<p>Il y a quelques jours, j\u2019ai cr\u00e9\u00e9 une premi\u00e8re version de mon site en utilisant principalement des assistants de programmation comme Codex et CoWork. Le site fonctionnait, la direction g\u00e9n\u00e9rale \u00e9tait en place et j\u2019aurais tr\u00e8s bien pu continuer \u00e0 le modifier progressivement. J\u2019ai pourtant d\u00e9cid\u00e9 de le reprendre presque enti\u00e8rement quelques jours plus tard.<\/p>\n<p>Ce n\u2019\u00e9tait pas parce que la premi\u00e8re version \u00e9tait mauvaise ou inutilisable. J\u2019avais simplement eu de nouvelles id\u00e9es entre-temps, et je me suis rendu compte qu\u2019il serait probablement plus rapide de repartir sur une nouvelle base que d\u2019essayer d\u2019adapter ce qui existait d\u00e9j\u00e0. C\u2019est surtout ce point qui m\u2019a marqu\u00e9.<\/p>\n<p>La vitesse de d\u00e9veloppement est \u00e9videmment impressionnante, mais le changement le plus int\u00e9ressant est peut-\u00eatre ailleurs. Quand refaire un projet devient presque aussi simple que le corriger , notre rapport au logiciel commence \u00e0 \u00e9voluer assez s\u00e9rieusement.<\/p>\n<h2>Refaire le site plut\u00f4t que modifier l\u2019ancien<\/h2>\n<p>Il n\u2019y a encore pas si longtemps, la cr\u00e9ation d\u2019un site de ce type aurait probablement demand\u00e9 plusieurs semaines de travail avec un prestataire. Il aurait fallu d\u00e9finir le projet, pr\u00e9parer les maquettes, expliquer les diff\u00e9rentes interactions, attendre une premi\u00e8re version, transmettre des corrections, puis recommencer plusieurs fois jusqu\u2019\u00e0 obtenir quelque chose de suffisamment proche de ce que j\u2019avais en t\u00eate. Chaque changement important aurait aussi pos\u00e9 la question du co\u00fbt.<\/p>\n<p>Une fois qu\u2019une structure est valid\u00e9e et d\u00e9velopp\u00e9e, on h\u00e9site forc\u00e9ment davantage avant de demander de la reprendre compl\u00e8tement. Dans mon cas, j\u2019ai pu cr\u00e9er une premi\u00e8re version du site, l\u2019utiliser comme base de r\u00e9flexion, voir ce qui fonctionnait et ce qui correspondait moins bien \u00e0 ce que je voulais faire, puis recommencer lorsque j\u2019ai eu une meilleure id\u00e9e. La premi\u00e8re version n\u2019\u00e9tait pas vraiment du travail perdu.<\/p>\n<p>Elle m\u2019avait permis de comprendre le projet, de tester une organisation et de pr\u00e9ciser ce que je voulais pour la suite. En parall\u00e8le, j\u2019ai commenc\u00e9 \u00e0 int\u00e9grer au site plusieurs applications et petits jeux, eux aussi d\u00e9velopp\u00e9s enti\u00e8rement et tr\u00e9s rapidement avec d&#039;autres IA ( cowork, GLM, Gemini&#8230; ) Ce genre de d\u00e9cision devient beaucoup plus facile lorsqu\u2019elle ne repr\u00e9sente plus plusieurs jours ou plusieurs semaines de d\u00e9veloppement suppl\u00e9mentaire.<\/p>\n<h2>Des progr\u00e8s visibles d\u2019un projet \u00e0 l\u2019autre<\/h2>\n<p>J\u2019utilise r\u00e9guli\u00e8rement plusieurs mod\u00e8les et plusieurs outils de programmation assist\u00e9e, et leur progression devient assez difficile \u00e0 ignorer . En un an, la qualit\u00e9 du code g\u00e9n\u00e9r\u00e9 a \u00e9volu\u00e9, mais ce n\u2019est qu\u2019une partie du changement. Les outils comprennent mieux les demandes, produisent des interfaces plus coh\u00e9rentes, font moins d\u2019erreurs et arrivent plus facilement \u00e0 corriger un projet existant sans casser ce qui fonctionne d\u00e9j\u00e0.<\/p>\n<p>Les r\u00e9sultats graphiques ont aussi beaucoup progress\u00e9. Il fallait auparavant guider tr\u00e8s pr\u00e9cis\u00e9ment les mod\u00e8les pour \u00e9viter d\u2019obtenir des interfaces assez g\u00e9n\u00e9riques. C\u2019est toujours utile de donner une direction claire, \u00e9videmment, mais certains outils sont maintenant capables de proposer rapidement une premi\u00e8re base visuelle exploitable, avec une hi\u00e9rarchie, des espacements et des interactions qui tiennent d\u00e9j\u00e0 assez bien la route.<\/p>\n<p>Cette progression me rappelle ce qui s\u2019est pass\u00e9 avec la g\u00e9n\u00e9ration d\u2019images, puis avec la vid\u00e9o. Les premi\u00e8res versions permettaient surtout de comprendre le principe. Ensuite, assez rapidement, les outils ont commenc\u00e9 \u00e0 devenir r\u00e9ellement utilisables dans des projets.<\/p>\n<p>Le code semble suivre une trajectoire assez proche, m\u00eame si les cons\u00e9quences sont diff\u00e9rentes puisqu\u2019un logiciel ne se limite pas \u00e0 son apparence. Il doit fonctionner , conserver des donn\u00e9es, g\u00e9rer des erreurs et rester compr\u00e9hensible lorsqu\u2019on revient dessus quelques semaines plus tard. Pour le moment, cela demande encore de v\u00e9rifier ce qui est produit et de corriger r\u00e9guli\u00e8rement les propositions.<\/p>\n<p>Cela dit, la vitesse \u00e0 laquelle les probl\u00e8mes sont r\u00e9solus change d\u00e9j\u00e0 beaucoup la mani\u00e8re de travailler .<\/p>\n<h2>Tous les mod\u00e8les ne travaillent pas de la m\u00eame mani\u00e8re<\/h2>\n<p>L\u2019un des aspects les plus int\u00e9ressants, quand on utilise quotidiennement plusieurs mod\u00e8les, est qu\u2019ils ont encore des comportements tr\u00e8s diff\u00e9rents. Certains comprennent particuli\u00e8rement bien une demande graphique et arrivent rapidement \u00e0 construire une interface proche de celle que j\u2019avais imagin\u00e9e. D\u2019autres sont plus \u00e0 l\u2019aise avec la structure g\u00e9n\u00e9rale d\u2019une application, l\u2019organisation des fichiers ou la mani\u00e8re dont les diff\u00e9rentes fonctions doivent communiquer .<\/p>\n<p>Il y a aussi des mod\u00e8les qui se montrent tr\u00e8s efficaces pour reprendre un code existant, rep\u00e9rer l\u2019origine d\u2019un probl\u00e8me et proposer une correction assez propre, alors qu\u2019ils sont moins convaincants lorsqu\u2019il faut concevoir le projet d\u00e8s le d\u00e9part. La hi\u00e9rarchie n\u2019est d\u2019ailleurs pas toujours celle que l\u2019on pourrait imaginer en regardant simplement la date de sortie ou les r\u00e9sultats g\u00e9n\u00e9raux annonc\u00e9s pour chaque mod\u00e8le. Sur certaines t\u00e2ches tr\u00e8s pr\u00e9cises, un mod\u00e8le que l\u2019on pourrait croire d\u00e9pass\u00e9 peut encore produire de meilleurs r\u00e9sultats qu\u2019un outil plus r\u00e9cent.<\/p>\n<p>Quelques semaines plus tard, cette situation peut \u00e0 nouveau changer . Dans la pratique, le choix du mod\u00e8le devient donc une partie du travail. J\u2019utilise rarement un seul outil pour tout faire.<\/p>\n<p>Je peux commencer un projet avec celui qui comprend le mieux la structure g\u00e9n\u00e9rale, passer sur un autre pour travailler l\u2019interface, puis revenir vers un troisi\u00e8me lorsqu\u2019il faut corriger un probl\u00e8me particulier . Cette mani\u00e8re de travailler reste encore un peu instable, puisque les performances \u00e9voluent vite et que les r\u00e9ponses peuvent parfois \u00eatre impr\u00e9visibles. Pour le moment, elle permet n\u00e9anmoins d\u2019avancer beaucoup plus rapidement qu\u2019en essayant de forcer un seul mod\u00e8le \u00e0 r\u00e9aliser toutes les \u00e9tapes.<\/p>\n<h2>Le travail commence de plus en plus avant le code<\/h2>\n<p>Le fait de pouvoir g\u00e9n\u00e9rer du code rapidement ne supprime pas la r\u00e9flexion autour du projet. Dans mon cas, j\u2019ai m\u00eame l\u2019impression que cette r\u00e9flexion devient plus importante. Lorsque le d\u00e9veloppement repr\u00e9sentait l\u2019essentiel du temps et du co\u00fbt, une grande partie de l\u2019attention \u00e9tait naturellement consacr\u00e9e \u00e0 la faisabilit\u00e9 technique.<\/p>\n<p>Il fallait savoir si une fonction \u00e9tait r\u00e9aliste, combien de temps elle allait demander et si elle justifiait r\u00e9ellement le travail n\u00e9cessaire. Aujourd\u2019hui, on peut produire une premi\u00e8re version beaucoup plus t\u00f4t. Le probl\u00e8me se d\u00e9place donc vers la d\u00e9finition de ce que l\u2019on veut r\u00e9ellement construire.<\/p>\n<p>Avant de commencer , il faut toujours comprendre le besoin, les personnes qui vont utiliser l\u2019outil, l\u2019organisation des menus, les \u00e9crans n\u00e9cessaires, les interactions et les priorit\u00e9s. Une IA peut proposer beaucoup de choses, mais elle ne conna\u00eet pas naturellement l\u2019objectif du projet, le public auquel il s\u2019adresse ni les raisons pour lesquelles une fonction est plus importante qu\u2019une autre. Elle peut \u00e9galement produire tr\u00e8s vite une interface parfaitement fonctionnelle qui ne r\u00e9pond pas vraiment au probl\u00e8me de d\u00e9part.<\/p>\n<p>Le r\u00f4le humain se d\u00e9place progressivement vers la conception, la direction artistique, les choix et les corrections. Le code reste important, mais il n\u2019est plus forc\u00e9ment l\u2019obstacle principal. Ma mani\u00e8re de d\u00e9velopper commence donc \u00e0 se structurer assez naturellement.<\/p>\n<p>Je travaille d\u2019abord l\u2019id\u00e9e, puis l\u2019organisation g\u00e9n\u00e9rale du projet. Je d\u00e9finis les fonctions principales, les \u00e9crans et les interactions, avant de choisir l\u2019outil qui me semble le plus adapt\u00e9 pour cr\u00e9er une premi\u00e8re version. Ensuite, je corrige au fur et \u00e0 mesure, en regardant le r\u00e9sultat plut\u00f4t qu\u2019en essayant de tout pr\u00e9voir parfaitement avant de commencer .<\/p>\n<p>Cette m\u00e9thode reste tr\u00e8s exp\u00e9rimentale, mais elle fonctionne d\u00e9j\u00e0 assez bien pour des projets de petite ou moyenne taille.<\/p>\n<h2>Cr\u00e9er un logiciel pour un besoin pr\u00e9cis<\/h2>\n<p>Cette exp\u00e9rience m\u2019a surtout amen\u00e9 \u00e0 r\u00e9fl\u00e9chir \u00e0 la dur\u00e9e de vie des logiciels que nous utilisons. Aujourd\u2019hui, lorsqu\u2019on a besoin d\u2019un outil, m\u00eame tr\u00e8s simple, le r\u00e9flexe consiste g\u00e9n\u00e9ralement \u00e0 chercher s\u2019il existe d\u00e9j\u00e0. On compare plusieurs solutions, on en t\u00e9l\u00e9charge une, on l\u2019installe, puis on apprend \u00e0 l\u2019utiliser .<\/p>\n<p>Il faut parfois cr\u00e9er un compte, accepter un abonnement ou adapter sa mani\u00e8re de travailler \u00e0 l\u2019organisation choisie par l\u2019\u00e9diteur . Pour de nombreux besoins, cela restera probablement la solution la plus logique. Il serait assez absurde de recr\u00e9er seul un logiciel complexe qui existe d\u00e9j\u00e0, qui est maintenu par une \u00e9quipe et qui r\u00e9pond correctement au probl\u00e8me.<\/p>\n<p>En revanche, pour des outils tr\u00e8s sp\u00e9cifiques, la situation pourrait \u00e9voluer rapidement. On peut imaginer cr\u00e9er une calculatrice adapt\u00e9e \u00e0 un m\u00e9tier , un convertisseur particulier , un outil d\u2019analyse, un syst\u00e8me de classement ou une petite application qui automatise une t\u00e2che r\u00e9p\u00e9titive. Un architecte pourrait produire un outil de mesure correspondant \u00e0 sa mani\u00e8re de travailler .<\/p>\n<p>Un artisan pourrait cr\u00e9er un syst\u00e8me de devis limit\u00e9 \u00e0 son activit\u00e9. Une personne travaillant dans la location immobili\u00e8re pourrait fabriquer une interface qui organise exactement les informations dont elle a besoin. Dans mes propres projets, cela pourrait \u00eatre un storyboard, un g\u00e9n\u00e9rateur li\u00e9 au speed painting, un petit jeu p\u00e9dagogique ou une application con\u00e7ue pour une formation pr\u00e9cise.<\/p>\n<p>Ces outils ne seraient pas n\u00e9cessairement destin\u00e9s \u00e0 devenir des produits complets, vendus et maintenus pendant plusieurs ann\u00e9es. Ils pourraient \u00eatre cr\u00e9\u00e9s pour r\u00e9pondre \u00e0 un besoin ponctuel, utilis\u00e9s pendant quelques jours ou quelques mois, puis abandonn\u00e9s lorsqu\u2019ils ne sont plus utiles. Le terme de logiciel jetable peut sembler assez n\u00e9gatif, notamment parce qu\u2019il \u00e9voque quelque chose de mal con\u00e7u ou de peu fiable.<\/p>\n<p>Dans l\u2019id\u00e9e, il s\u2019agit plut\u00f4t d\u2019un outil dont la dur\u00e9e de vie correspond au besoin r\u00e9el. On ne cherche pas forc\u00e9ment \u00e0 construire une solution universelle. On cr\u00e9e simplement le logiciel n\u00e9cessaire \u00e0 un moment pr\u00e9cis.<\/p>\n<h2>Une autonomie qui ne concerne pas uniquement les d\u00e9veloppeurs<\/h2>\n<p>Cette \u00e9volution ne concerne pas seulement les personnes qui travaillent d\u00e9j\u00e0 dans le d\u00e9veloppement. Un enseignant peut cr\u00e9er un outil pour expliquer une notion \u00e0 ses \u00e9l\u00e8ves. Un designer peut construire une application qui automatise une partie tr\u00e8s particuli\u00e8re de son workflow.<\/p>\n<p>Un \u00e9tudiant peut produire une interface pour classer ou analyser les donn\u00e9es de son m\u00e9moire. Un chercheur peut adapter un outil \u00e0 une exp\u00e9rience sans attendre qu\u2019un logiciel commercial ajoute la fonction dont il a besoin. Le r\u00e9sultat ne sera pas toujours parfait, et tous ces outils ne pourront pas \u00eatre utilis\u00e9s dans des contextes sensibles ou par un grand nombre de personnes sans v\u00e9rification suppl\u00e9mentaire.<\/p>\n<p>Il existe une diff\u00e9rence importante entre une petite application personnelle et un logiciel qui doit \u00eatre s\u00e9curis\u00e9, maintenu et utilis\u00e9 par des milliers de personnes. Malgr\u00e9 cela, une nouvelle forme d\u2019autonomie devient d\u00e9j\u00e0 possible. Cette situation ressemble assez fortement \u00e0 ce qui s\u2019est produit avec l\u2019image g\u00e9n\u00e9r\u00e9e par IA.<\/p>\n<p>Beaucoup de personnes avaient peut-\u00eatre depuis longtemps l\u2019id\u00e9e d\u2019illustrer un livre, de produire une bande dessin\u00e9e, de cr\u00e9er un court m\u00e9trage ou simplement de raconter une histoire en images, sans avoir les comp\u00e9tences techniques n\u00e9cessaires pour le faire seules. Les outils de g\u00e9n\u00e9ration n\u2019ont pas remplac\u00e9 tout le travail cr\u00e9atif, mais ils ont permis \u00e0 davantage de personnes de passer d\u2019une id\u00e9e \u00e0 une premi\u00e8re r\u00e9alisation. Le code pourrait suivre la m\u00eame trajectoire.<\/p>\n<p>Des personnes qui r\u00e9fl\u00e9chissent depuis des ann\u00e9es \u00e0 un outil particulier pourront commencer \u00e0 le fabriquer elles-m\u00eames, m\u00eame si elles ne se consid\u00e8rent pas comme d\u00e9veloppeuses. Elles devront toujours apprendre \u00e0 expliquer leur besoin, tester les r\u00e9sultats et rep\u00e9rer les erreurs, mais la barri\u00e8re technique devient progressivement moins importante.<\/p>\n<h2>Ce que cela peut changer pour les m\u00e9tiers du logiciel<\/h2>\n<p>Il est encore difficile de savoir jusqu\u2019o\u00f9 cette \u00e9volution ira. Pour le moment, les d\u00e9veloppeurs, les web designers et les personnes sp\u00e9cialis\u00e9es dans l\u2019automatisation conservent une expertise importante, notamment lorsqu\u2019un projet doit g\u00e9rer beaucoup d\u2019utilisateurs, des donn\u00e9es sensibles ou une architecture complexe. La compr\u00e9hension des besoins, l\u2019ergonomie, la s\u00e9curit\u00e9, l\u2019exp\u00e9rience utilisateur et la maintenance restent \u00e9galement des sujets qui ne peuvent pas \u00eatre r\u00e9solus uniquement en demandant \u00e0 un mod\u00e8le de g\u00e9n\u00e9rer du code.<\/p>\n<p>Cela dit, une partie du travail technique peut d\u00e9j\u00e0 \u00eatre r\u00e9alis\u00e9e beaucoup plus rapidement, et il serait difficile d\u2019imaginer que cela n\u2019aura aucun impact sur la mani\u00e8re dont ces m\u00e9tiers sont organis\u00e9s et vendus. La valeur pourrait se d\u00e9placer davantage vers la capacit\u00e9 \u00e0 comprendre un projet, \u00e0 structurer une solution, \u00e0 prendre de bonnes d\u00e9cisions et \u00e0 v\u00e9rifier ce qui a \u00e9t\u00e9 produit. Pour les petits sites et les applications assez simples, la fronti\u00e8re entre le concepteur et le d\u00e9veloppeur devient d\u00e9j\u00e0 moins nette.<\/p>\n<p>Une personne qui conna\u00eet bien son m\u00e9tier et qui sait pr\u00e9cis\u00e9ment ce qu\u2019elle veut peut maintenant produire seule une premi\u00e8re version qui aurait auparavant demand\u00e9 l\u2019intervention de plusieurs profils. Sur des projets de plus grande ampleur , l\u2019expertise technique restera probablement n\u00e9cessaire beaucoup plus longtemps, m\u00eame si les \u00e9quipes utiliseront elles aussi ces outils pour avancer plus vite. Il existe \u00e9galement des limites plus g\u00e9n\u00e9rales.<\/p>\n<p>Les assistants peuvent produire du code mal s\u00e9curis\u00e9, mal comprendre une instruction ou modifier une partie du projet que l\u2019on ne voulait pas toucher . Les m\u00eames outils peuvent aussi servir \u00e0 d\u00e9velopper des usages malveillants, ce qui pose \u00e9videmment d\u2019autres probl\u00e8mes. Ces r\u00e9serves sont importantes, mais elles ne changent pas vraiment la tendance que j\u2019observe dans mes propres projets.<\/p>\n<p>Je savais d\u00e9j\u00e0 que les assistants de programmation pouvaient cr\u00e9er un site ou une petite application. Ce que je n\u2019avais pas compl\u00e8tement anticip\u00e9, c\u2019\u00e9tait la facilit\u00e9 avec laquelle j\u2019allais pouvoir reprendre ces projets, les modifier et parfois les refaire enti\u00e8rement d\u00e8s qu\u2019une meilleure id\u00e9e apparaissait. C\u2019est probablement cette possibilit\u00e9 qui aura le plus d\u2019impact sur ma mani\u00e8re de travailler .<\/p>\n<p>Le logiciel risque de devenir moins pr\u00e9cieux en lui-m\u00eame, simplement parce qu\u2019il sera plus facile d\u2019en produire un nouveau. Ce qui comptera davantage sera l\u2019id\u00e9e, la compr\u00e9hension du besoin et la mani\u00e8re dont l\u2019outil s\u2019int\u00e8gre dans un projet r\u00e9el. \u00c0 terme, cr\u00e9er une petite application pourrait devenir une activit\u00e9 assez courante, presque au m\u00eame titre que pr\u00e9parer un document, construire un tableau ou g\u00e9n\u00e9rer une image pour illustrer une id\u00e9e.<\/p>\n<p>Pour le moment, j\u2019en suis encore \u00e0 tester cette mani\u00e8re de travailler , mais le fait d\u2019avoir pr\u00e9f\u00e9r\u00e9 refaire mon site quelques jours apr\u00e8s sa cr\u00e9ation montre d\u00e9j\u00e0 que quelque chose a chang\u00e9.<\/p>\n","protected":false},"excerpt":{"rendered":"<p>Quand refaire un logiciel devient presque aussi simple que le telecharger, notre rapport au code, aux outils et \u00e0 leur dur\u00e9e de vie commence \u00e0 changer.<\/p>\n","protected":false},"author":1,"featured_media":0,"comment_status":"open","ping_status":"open","sticky":false,"template":"","format":"standard","meta":{"footnotes":"","muskalab_likes":0},"categories":[1],"tags":[],"class_list":["post-11","post","type-post","status-publish","format-standard","hentry","category-uncategorized"],"muskalab_header_image":"https:\/\/muskalab.fr\/assets\/blog\/vibe-coding-logiciel-jetable-v2.png","muskalab_english":{"title":"Vibe Coding and the Age of Disposable Software","excerpt":"When rebuilding software becomes almost as easy as fixing it, our relationship with code, tools and their lifespan begins to change.","available":true},"_links":{"self":[{"href":"https:\/\/muskalab.fr\/blog\/wp-json\/wp\/v2\/posts\/11","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/muskalab.fr\/blog\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/muskalab.fr\/blog\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/muskalab.fr\/blog\/wp-json\/wp\/v2\/users\/1"}],"replies":[{"embeddable":true,"href":"https:\/\/muskalab.fr\/blog\/wp-json\/wp\/v2\/comments?post=11"}],"version-history":[{"count":1,"href":"https:\/\/muskalab.fr\/blog\/wp-json\/wp\/v2\/posts\/11\/revisions"}],"predecessor-version":[{"id":12,"href":"https:\/\/muskalab.fr\/blog\/wp-json\/wp\/v2\/posts\/11\/revisions\/12"}],"wp:attachment":[{"href":"https:\/\/muskalab.fr\/blog\/wp-json\/wp\/v2\/media?parent=11"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/muskalab.fr\/blog\/wp-json\/wp\/v2\/categories?post=11"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/muskalab.fr\/blog\/wp-json\/wp\/v2\/tags?post=11"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}