Tout a commencé la semaine dernière. Ce jour-là, j'ai accepté un petit boulot pour modifier la page front-end d'un ancien projet pour un client. Les fonctionnalités n'étaient pas complexes, juste quelques ajustements de logique d'interaction sur des boutons. Je me suis dit que c'était simple, pourquoi ne pas le confier directement à ChatGPT ? Cela m'éviterait de lire le code ligne par ligne.
J'ai décrit mes besoins très clairement, même la façon de nommer les variables. ChatGPT a été coopératif et m'a généré un gros bloc de code. Je l'ai regardé : structure claire, commentaires complets, et même une gestion d'erreurs bien pensée. J'étais content, je me disais que c'était gagné. J'ai copié-collé directement dans le projet, sauvegardé, et actualisé le navigateur.
Et devinez quoi ? La page est devenue blanche. La console affichait une montagne d'erreurs rouges, comme à Noël.
J'ai vite copié le message d'erreur à ChatGPT, qui a répondu : « Désolé, j'ai oublié un cas limite », puis m'a renvoyé une version corrigée. Je l'ai recollée, plus de page blanche, mais les boutons ne répondaient pas. J'ai continué à signaler, il a continué à corriger. On a fait des allers-retours sept ou huit fois, et à chaque fois, un bug corrigé en faisait apparaître deux nouveaux. Le plus frustrant, c'est qu'à un moment, il a utilisé une fonction qui n'existait même pas dans mon projet, avec un commentaire sérieux : « Appel à une méthode publique ici ».
J'avais envie de fracasser mon clavier. Le client me pressait, disant que la mise en ligne était prévue pour l'après-midi. Je fixais un tas de code illisible à l'écran : indentation en désordre, mélange d'espaces et de tabulations, des parenthèses en fin de ligne ou en début, tout le fichier semblait avoir été piétiné par un chat. Impossible de corriger manuellement sur cette base, car je ne voyais même pas clair.
Alors que j'étais sur le point de m'excuser auprès du client pour un retard, je me suis souvenu d'un outil en ligne que j'avais mis en favoris, appelé « Formatage et compression JS ». Comme on tente le tout pour le tout, j'ai collé la dernière version générée par ChatGPT et cliqué sur « Formater ».
Le miracle s'est produit. Le code, qui était compact, s'est soudainement déployé, chaque niveau clairement visible, avec des retours à la ligne et des indentations appropriées. J'ai tout de suite vu où était le problème : une parenthèse de fin de boucle mal placée, ce qui faussait toute la logique. Il y avait aussi une incohérence dans le nom d'une variable : ChatGPT avait écrit userName, mais plus loin, il l'appelait username.
Pour être honnête, avant, je méprisais ce genre d'outils de formatage, pensant que ce n'était que de la mise en page, sans grande valeur technique. Mais ce jour-là, j'ai compris que lorsque vous avez affaire à un code qui n'est pas le vôtre et qui contient des erreurs logiques, le formatage devient votre loupe. Une fois le code déplié, toutes les erreurs cachées apparaissent au grand jour.
Ensuite, j'ai corrigé manuellement ces deux erreurs, puis j'ai utilisé l'outil pour « compresser » le code, ce qui a réduit sa taille et accéléré le chargement. Je l'ai envoyé au client, et il a été accepté du premier coup.
Cette expérience m'a beaucoup appris. ChatGPT peut vraiment vous aider à écrire du code, mais ce n'est pas un dieu : il ne voit pas le contexte de votre projet et ne peut pas tester les résultats. Le code qu'il vous donne est essentiellement « quelque chose qui ressemble à une bonne réponse ». Si vous le jetez directement en production, l'échec est inévitable.
Mais je ne vous dis pas de ne pas utiliser l'IA pour coder, ce serait trop prétentieux. Ce que je veux dire, c'est que vous devez avoir une solution de secours. Maintenant, mon flux de travail a changé : je laisse ChatGPT générer le code, mais peu importe à quel point il semble confiant, je le passe d'abord par un outil de formatage JS. Une fois formaté, je vois immédiatement si la logique est correcte, c'est dix fois plus efficace que de lire un code compact.
De plus, cet outil a un avantage : il ne se connecte pas à Internet, le code n'est pas envoyé sur un serveur, ce qui est rassurant pour ceux qui travaillent sur des projets personnels ou sur du code sensible d'entreprise. J'ai même commencé à l'utiliser pour vérifier mon propre code ; parfois, quand je code vite et de manière brouillonne, le formater me permet de repérer des virgules ou des points-virgules oubliés.
Maintenant, le client m'a confié un nouveau projet, et j'utiliserai toujours ChatGPT pour rédiger une première version, mais je ne me laisserai plus mener par le bout du nez. Formater, vérifier, corriger, compresser, mettre en ligne. Une fois cette procédure terminée, j'ai l'esprit tranquille.
Si vous avez aussi vécu des déboires avec l'IA qui écrit du code, ne luttez pas seul : essayez d'abord de formater le code. Parfois, la vérité se cache dans ce tas de caractères désordonnés, et il vous suffit d'avoir les bons yeux pour la voir.