Programmer avec l'intelligence artificielle après un an sans ordinateur
Retours d'expérience après avoir utilisé la « nouvelle IA » pendant un peu plus d'un mois
Quand nous avons lancé El Viaje, Daisy et moi avions une certitude : nous ne voulions pas être esclaves de la technologie tout en vivant de nouvelles aventures et en explorant de nouveaux mondos. C'est pourquoi nous avons décidé de ne pas emporter d'ordinateur portable (et j'ai fermé Instagram). À la place, nous avons pris un iPad avec clavier qui, en plus de gérer le quotidien, nous permettrait de dessiner, de lire et de regarder des séries de temps en temps.
Ce fut sans aucun doute une excellente décision, car ces kilos superflus qu'aurait représentés un portable ne nous ont jamais manqué. Et même sans ce poids supplémentaire, j'ai pu créer un deck initial pour ma start-up et utiliser un peu d'intelligence artificielle (IA) via Gemini, ChatGPT et Claude. J'ai même pu programmer un petit quelque chose avec firebase studio.
Dans ce contexte, je suis resté à l'écart de l'IA pendant près d'un an. Bien que j'écoutasse des podcasts pour me tenir au courant de l'état de ce nouveau paradigme, et que je discutasse de temps en temps avec une IA pour demander des recommandations ou des informations sur les lieux visités, je n'avais utilisé aucun des outils modernes jusqu'à il y a un mois.
J'ai acheté un Mac Mini aux États-Unis pour « être à la pointe » et, de retour en Espagne, j'ai commencé ma mise à jour. La première chose que j'ai faite a été d'installer Antigravity, VS Code et Claude Code. Aussitôt après, j'ai commencé à créer un site web en React, un backend en Python avec FastAPI et une plateforme en Flutter pour un projet lié à El Viaje — dont vous saurez plus bientôt (bien que ce post permette d'en déduire certains détails). J'ai réalisé cela avec chaque outil d'IA grâce au vibecoding.
Le vibecoding consiste (selon moi) à donner des instructions via l'interface de chat jusqu'à ce que l'on soit satisfait du résultat final. En pratiquant le vibecoding, j'ai commencé à comprendre une partie de ce que l'IA fait actuellement en programmation. La première leçon a été que l'IA questionne avant d'agir et cherche constamment du feedback. La deuxième, qu'elle planifie et suit des étapes de manière plus structurée. La troisième, que meilleur est le contexte, meilleur est le résultat. La quatrième, qu'elle ne se contente plus de vous faire des scripts isolés ou de l'autocomplétion ; elle monte tout le framework, structure votre projet et exécute le code. La cinquième : il faut énormément parler pour obtenir quelque chose qui vous plaise.
J'ai tiré ces leçons à travers plusieurs fournisseurs, plans et outils de programmation : 1) Google avec son plan AI Pro et Antigravity, 2) Microsoft et la version gratuite de Copilot dans VS Code, 3) Anthropic avec la version Pro utilisant Claude Code, et 4) OpenAI avec son plan Plus et Codex.
Le prompt initial était le suivant :
Je veux apprendre à utiliser l'IA. Je n'ai pas programmé depuis 1 an car je voyageais avec ma femme en Asie (9,5 mois), aux États-Unis (10 jours) et en Colombie (1,5 mois). J'ai lu et écouté des podcasts sur l'évolution de l'IA, surtout pour le codage et la programmation. J'avais l'habitude de programmer en Python et je connais des frameworks comme React et Flutter. Je suis économiste et data scientist, avec une expérience en développement logiciel. Je souhaite utiliser l'IA pour programmer. Je prévois de créer une startup en étant le premier développeur, j'ai donc vraiment besoin de commencer à apprendre à utiliser l'IA dès que possible. Planifie-moi une méthode d'apprentissage. Avant de m'attaquer à mon idée de startup, j'ai un projet parallèle sur lequel je veux travailler pour apprendre l'IA. Ce projet consiste à créer une sorte de livre sur le voyage. Je pensais à un site web avec un blog (pour le marketing) afin de vendre le livre + quelques ressources comme notre fichier de budget et la possibilité de réserver des sessions avec des personnes intéressées par un voyage similaire. Je veux apprendre avec ce projet. J'aimerais avoir une page d'accueil (React) pour le marketing et le blog, ainsi qu'une plateforme (Flutter) pour le livre, les ressources et les photos. Le backend doit être fait en Python. J'apprécie beaucoup les bonnes pratiques comme le Test-Driven Development (TDD), le clean code et l'architecture hexagonale. J'aime travailler avec Python et TypeScript, en utilisant un typage strict. J'utiliserai FastAPI, UV et Pydantic pour Python. Pour React et Flutter (connaissances de base), utilise les meilleures pratiques de 2026. J'utiliserai ce projet de voyage comme base d'apprentissage pour la prochaine étape avec ma startup.
Google avec Gemini 3.1 Pro, dans son approche de développement pilotée par la révision, a réalisé un plan initial puis l'a exécuté en tenant compte d'une liste de tâches revue avec moi. Il agissait presque comme un project manager et un programmeur à la fois. Il a également divisé le travail entre frontend, backend et app. Il s'est ainsi concentré sur chaque partie séparément, bien que les trois projets fussent chargés dans le contexte. Cependant, j'ai remarqué qu'il a créé la structure la plus basique pour chaque partie, ce qui manquait de substance. Après avoir itéré et demandé de nombreux changements, nous sommes finalement arrivés à un résultat plus intéressant : meilleur design, intégration backend-frontend et une app basique au design cohérent. Toutefois, au moment où les choses s'amélioraient, je me suis retrouvé à court de tokens… pour deux semaines ! J'imagine que gérer trois projets en un consomme beaucoup plus de contexte et de tokens.
Microsoft avec Copilot a élaboré un plan que j'ai pu modifier et commenter avant de lancer le développement. Pourtant, il semble que le plan n'ait pas été suivi comme prévu. L'IA a d'abord choisi de ne pas développer le backend en Python, mais directement en Dart. Ensuite, elle a créé une plateforme pour que des personnes ayant déjà fait une année sabbatique puissent vendre leur livre, ce qui n'était pas demandé. Enfin, au niveau du design, elle a utilisé quelque chose de très standard malgré mes instructions pour l'adapter aux couleurs du résultat d'Antigravity. Ainsi, l'impression générale a été bien moins bonne, et j'ai décidé de ne pas continuer. Cela dit, pour un outil entièrement gratuit, le résultat obtenu était très bon comparé à ce que j'aurais fait seul à partir de zéro.
Anthropic avec Claude Code et Opus 4.8 s'est distingué par sa manière d'agir. D'abord, il a beaucoup plus questionné, mais n'a jamais élaboré de plans complets. Le point positif : il n'a pas fait de suppositions hâtives ; le point négatif : il était difficile d'avoir une vision globale au début. Néanmoins, cette vision pouvait être déduite via les fichiers Claude.md générés (un général et un par composant : backend, frontend et app). Le résultat était correct, mais pas aussi incroyable et rapide qu'espéré. Cependant, le design s'est amélioré. Un autre aspect à noter fut une meilleure concentration, ce qui explique en partie un résultat beaucoup plus complet pour le frontend, même si aucun progrès n'a été fait sur les autres fronts.
OpenAI avec Codex et GPT-5.5 m'a donné l'impression de fournir le meilleur résultat tant en termes de fonctionnalité que de design. Ce fut le seul à réellement connecter backend et frontend en expliquant ses choix. Codex a commencé par suggérer des prompts pour différentes tâches et ses premières actions ont été de créer un Agents.md et le premier backend fonctionnel via TDD. La structure du code était plus robuste et complexe, générant chez moi des doutes que le modèle a résolus de manière très pédagogique. Avec ce modèle, j'ai senti que nous décidions de l'architecture ensemble. Ce fut positif car nous avons réfléchi aux différents objets et entités, ce qui a clarifié les étapes suivantes. Nous avons créé un véritable backlog à partir de nos conversations. De plus, nous n'avons commencé le design du frontend qu'une fois le backend réellement fonctionnel.
Concernant la partie frontale, la dynamique d'interaction a été très similaire. Pour ce volet, nous avons commencé par créer un système de design implémenté sous forme de librairie. Nous nous sommes inspirés d'éléments d'El Viaje et même de photos. Bien que le design ait eu quelques ratés, il était globalement réussi et responsive. Pour les textes, il a eu un peu de mal à saisir l'idée, mais nous sommes arrivés à un bon premier contenu.
Pourtant, tout n'a pas été rose. À mesure que nous avancions, on percevait une détérioration de ses réponses, de ses actions et de son raisonnement. Malgré le redémarrage de la session et nos prises de notes sur le processus, cette baisse de régime était évidente. C'est presque comme un humain qui lance un projet avec énergie mais qui, après un certain temps, finit par perdre l'intérêt à cause de la monotonie et des corrections répétitives.
Pour la petite touche finale, pendant que j'écrivais ce texte, Fable 5 d'Anthropic est sorti. Comment ne pas le tester alors que, selon les médias, c'est le meilleur modèle de l'histoire (comme chaque nouveauté d'un laboratoire d'IA) et qu'il s'agit d'une édition limitée ? Dans ce cas, nous n'avons pas eu le temps de générer le frontend, mais je crois n'avoir jamais autant appris sur le TDD, le Domain-Driven Design, l'Event Sourcing, le CQRS et bien d'autres principes d'architecture logicielle (désolé pour les acronymes et anglicismes, mais il faut faire « pro »). De plus, n'ayant pas développé des centaines de backends, je n'en avais jamais démarré un aussi bien. Fable a été sans aucun doute le seul modèle à comprendre que ma mission, au-delà du développement du meilleur side-project possible, était d'apprendre à utiliser l'IA pour bâtir les produits de ma start-up. Étant donné mon cas d'usage limité et le panel testé, Fable est à ce jour le modèle publié le plus compétent en programmation. Comme l'accès au modèle a été suspendu par des directives du gouvernement américain, nous n'avons pas pu continuer le développement de la partie frontale. Je vous raconterai la suite plus tard.
Je ne suis pas un expert, ni en IA ni en développement, mais voici mon verdict d'apprenti : 1) En un an, l'IA a radicalement changé la façon de coder dans le monde. 2) Anthropic principalement, et OpenAI de près, sont les meilleurs pour la programmation (parmi ceux évalués). 3) Le contexte est crucial, tout comme la façon dont nous interagissons avec l'IA (fichiers de contexte, instructions, mémoire, décisions et patterns). 4) Il n'y a pas meilleur professeur d'IA que l'IA elle-même. 5) Pour vraiment apprendre, il faut mettre les mains dans le cambouis et construire du concret. 6) Les bases du développement logiciel sont de plus en plus importantes, pertinentes et faciles à mettre en œuvre.
Si vous avez l'impression d'être à la traîne, mon seul conseil : lancez-vous et construisez quelque chose de réel. Pas pour faire comme moi, mais pour trouver votre propre voie.
Commentaires
Pas encore de commentaires. Soyez le premier à commenter !