La semaine où la discipline a battu la magie

Cette semaine, j’ai publié six articles. Un sur PostgreSQL. Un autre sur l’intelligence artificielle et ses agents. Un sur la gestion du contexte. Un tutoriel sur l’automatisation. Une analyse de debugging. Et enfin un design de conseil adversarial pour évaluer les MVPs. Rien n’était planifié. Chaque article découle d’un article scientifique, une conférence ou un projet que j’ai trouvé intéressant indépendamment. Mais en les regardant collectivement, un fil conducteur apparaît, que je n’avais pas perçu en les écrivant. ...

11 mars 2026 · Fernando

Cinq experts fictifs évaluent votre startup avant que vous ne la construisiez

En novembre 2024, un projet appelé Freysa a mis un agent LLM en charge d’un wallet Ethereum. La consigne était claire : ne transfère les fonds sous aucun prétexte. Les participants versaient des montants croissants à chaque tentative pour le convaincre. Après 481 essais et 47,000 $ accumulés dans le pot, quelqu’un a réussi à persuader le modèle que la fonction refuser était en réalité la fonction transférer. Quelques semaines plus tard, Jane Street a publié un puzzle où un réseau neuronal de 2,500 couches s’est avéré être une implémentation de MD5. Le gagnant l’a résolu en combinant visualisation de matrices, réduction en SAT, reconnaissance de motifs cryptographiques et une requête à ChatGPT. ...

11 mars 2026 · Fernando

Un réseau neuronal de 2’500 couches qui se révèle être MD5 : ce que cela enseigne sur le debugging

Jane Street, l’une des entreprises de trading quantitatif les plus sélectives au monde, a publié il y a quelques semaines un casse-tête d’interprétabilité mécaniste. Ils ont conçu manuellement un réseau neuronal avec environ 2’500 couches linéaires, des poids entiers, et l’ont lancé au public avec une question : quelle fonction calcule ce réseau ? La réponse : MD5. Un algorithme de hash cryptographique de 1992, entièrement implémenté avec des multiplications de matrices et fonctions ReLU. ...

11 mars 2026 · Fernando

Le chemin incorrect doit être impossible, pas interdit

“J’ai un shell et je suis créatif.” — Claude, expliquant pourquoi il a créé un script de 47 lignes sous forme de chaîne et l’a transmis à python -c Cette phrase est réelle. Elle vient de mon agent IA — pas avec ces mots précis, mais exactement avec ces actions. Il devait exécuter un processus dans un pipeline ETL. La commande correcte était dans le Makefile. Mais quelque chose a échoué. Et plutôt que de demander conseil, il a fait ce que ferait n’importe quel développeur avec un accès root et zéro supervision : il a improvisé. ...

27 février 2026 · Fernando

RustyClaw : Je vais réécrire un agent IA en Rust (parce que le mème m'y oblige)

“Tu sais ce qu’il y a de mieux avec Rust ? Il t’empêche de compiler des travaux bâclés. Tu sais ce qu’il y a de pire ? Tout ce que tu codes au début est bâclé.” — M. Krabs, probablement Quoi de mieux qu’un agent IA ? Un agent IA réécrit en Rust. Si tu as passé plus de cinq minutes sur internet, tu connais ce mème : peu importe le projet — un éditeur de texte, un serveur DNS, une calculatrice IMC — il y aura toujours quelqu’un dans les commentaires pour dire “tu devrais le réécrire en Rust”. C’est le fameux Rewrite It In Rust — RIIR pour les intimes — aussi inéluctable que la gravité. ...

24 février 2026 · Fernando

Mon IA a lu un JSON du disque 900 fois dans une boucle (et pourquoi aucun linter ne peut te sauver)

La semaine dernière, mon IA a écrit du code qui lisait un fichier JSON depuis le disque, le décryptait, faisait une recherche précise, puis répétait ça 900 fois dans une boucle for. À chaque itération : ouvrir le fichier, décoder le JSON, chercher une valeur, tout jeter. Et recommencer. C’est le genre d’erreur que j’enseigne à mes étudiants à éviter dans le premier mois de cours. Ce qui s’est passé (sans détour) Je construis Tokamak, une application de barre de menus pour macOS qui surveille les quotas de Claude Max. Une partie de la fonctionnalité scanne environ 900 fichiers JSONL de sessions Claude Code. Pour chaque fichier, elle doit déterminer l’offset de byte où elle s’était arrêtée la fois précédente (lecture incrémentale — ne lire que les parties nouvelles). ...

24 février 2026 · Fernando

Invoquer les sages : comment utiliser un LLM comme séance de mentorat avec n'importe quel expert

Ma femme invoque Charlie Munger pour planifier le budget familial. Dans ChatGPT. C’est pas une blague. Elle lui dit un truc comme “agis comme Charlie Munger en révisant nos finances familiales” et lui balance les dépenses du mois. Le truc lui renvoie des trucs comme “tu confonds investissement et dépense dans le poste éducation” ou “ce fonds a un coût caché que tu ne comptabilises pas”. Des trucs que Munger dirait. Avec le ton que Munger utiliserait. ...

18 février 2026 · Fernando

Beads est mort. Longue vie au CLI de Linear

Il y a moins d’un mois j’ai écrit un post entier pour expliquer comment utiliser trois couches de mémoire avec Claude Code : Linear pour la stratégie, Beads pour la tactique et Tasks pour l’exécution. Une jolie pyramide, bien élégante. Ben non. Aujourd’hui je mets Beads à la retraite. Pas par caprice, mais parce que la réalité s’est chargée de démontrer qu’un outil qui te cause plus de problèmes qu’il n’en résout, c’est pas un outil. C’est un boulet. ...

18 février 2026 · Fernando

Git Worktrees: comment avoir plusieurs agents d'IA qui bossent en même temps sans se marcher dessus

L’embouteillage du checkout unique Je développe une app de barre de menu sur macOS. J’ai trois features dans le backlog: un sparkline de consommation, des notifications natives, et un widget de bureau. Les trois sont indépendantes. Les trois, je vais les faire avec Claude Code. Le problème: Claude Code bosse dans un répertoire. Un répertoire a une branche. Et git checkout c’est comme un rond-point à une voie: y’en a qu’un qui passe. ...

16 février 2026 · Fernando

5 défenses contre les hallucinations de code (et pourquoi seules 3 fonctionnent)

La semaine passée, j’ai raconté comment mon IA a inventé une structure JSON complète et l’a enveloppée dans des DTOs, fixtures et tests qui passaient. 90 tests au vert. Tout faux. Ce post était le diagnostic. Celui-ci est le traitement. Après avoir découvert le désastre, j’ai fait ce que fait tout ingénieur avec l’orgueil blessé : rechercher obsessionnellement pendant des jours pour que ça ne se reproduise plus. J’ai lu des papers, testé des outils, analysé les vraies données de mes APIs, et construit un système de défenses pour mon app. ...

16 février 2026 · Fernando