Un commentaire sur Hacker News, en production quatre heures plus tard
Le 22 octobre, la suggestion d'un inconnu sur Hacker News est arrivée en production sur Uberblok en 4 h 05. J'ai dit « go » et approuvé la fusion. Des agents ont fait le reste, avec deux revues.
Le 22 octobre, un inconnu a laissé une suggestion d’une ligne sous la présentation d’Uberblok sur Hacker News. Quatre heures plus tard, elle était en production. Entre les deux, je n’ai fait que deux choses : dire « go », puis approuver la fusion. Des agents ont écrit le code, deux autres l’ont relu.
La vitesse du code n’est pas ce qui m’intéresse ici. C’est la boucle entière : un retour public, une décision humaine, des agents qui construisent, deux revues indépendantes, une approbation humaine, puis la production. Voici chaque étape, qui l’a faite, et les endroits où la boucle a eu des ratés.
# Le contexte
Uberblok est un musée interactif des entrailles d’OpenZFS, construit par des agents (le billet de lancement) ; son code est public, sous licence MIT, dans le dépôt uberblok. Mon Show HN du 21 octobre avait récolté 5 points avant de disparaître. J’ai demandé une seconde chance aux modérateurs, et dang a répondu : « Sure, let’s give it a try! » Le 22, mon lien est resté plusieurs heures en page d’accueil, et il est monté jusqu’à la 10e place. Il compte aujourd’hui 70 points et 20 commentaires. Ce jour-là, le site a reçu environ 880 visites, contre 31 la veille, et 1,6 page par visite : la plupart des lecteurs sont restés dans le hall.
# Le déclencheur
Pendant ce temps, ma session Claude Code a interrogé l’API de HN toutes les deux minutes et m’a rapporté chaque nouveau commentaire. Chaque retour devenait une ligne dans la fiche du projet.
Parmi eux, ghm2180 écrit : « One small suggestion: Make the code open to the right instead of a new window, that makes it easy to keep context without distraction. » Je lui ai répondu qu’un panneau latéral était la bonne direction.
D’autres commentaires visaient la prose et la difficulté. ghostly_s parlait d’une « gratingly AI prose », cbarrick demandait une prose moins « punchy », et unethical_ban écrivait : « A lot of this goes over my head ». La veille, deux commentaires sur r/zfs disaient « Needs more guidance and less AI-y texts » et « citing every line is not explanation or insight ».
# La décision
Un peu plus d’une heure après, Claude a regroupé trois critiques qui revenaient : la prose qui sent l’IA, le manque de guidage, et les citations de code qui cassent la lecture. Sa proposition : un pilote sur une seule salle, la copie sur écriture. J’ai répondu « oui ! go ».
Je me suis décidé vite parce que la fonctionnalité m’a tout de suite paru intéressante. Il y avait beaucoup de code sur le site, au point d’en être trop imposant, presque indigeste. Plutôt que de tout refaire d’un coup, j’ai voulu l’essayer d’abord sur une salle, pour voir le rendu.
# La boucle, étape par étape
| Temps écoulé | Étape | Qui |
|---|---|---|
| 0 min | ghm2180 suggère d’ouvrir le code à droite. | Un lecteur de HN |
| un peu plus d’1 h | Claude regroupe trois critiques en un pilote sur une salle. Je réponds « oui ! go ». | Moi |
| 1 h 14 | Un ticket est ouvert pour l’agent CEO. | Ma session Claude Code |
| vers 1 h 17 | Le CEO le découpe en deux : la construction, et la fusion, qui attend mon accord. | L’agent CEO |
| 2 h 02 | La PR #6 arrive : la salle réécrite autour d’une question, un composant réutilisable pour les notes de source (panneau latéral à partir de 1024 px de large, sous le texte sur un écran plus étroit), et un aperçu privé. Deux sous-agents, un rédacteur technique et un relecteur de code, sont passés dessus. | L’agent ingénieur d’Uberblok |
| 2 h 11 | Approbation : aucun bloquant, deux recommandations, quatre détails. | L’agent design et UX |
| 2 h 19 | Approbation : les huit critères remplis, 240 tests qui passent, les extraits vérifiés contre zfs-2.4.4, zéro violation d’accessibilité, CI au vert. | L’agent QA |
| 4 h 05 | J’ouvre l’aperçu et j’approuve la fusion. La salle est en ligne une minute plus tard. | Moi |
Du commentaire à une modification approuvée par deux relecteurs, il s’est écoulé environ 2 h 20. Jusqu’à la production, 4 h 05. Les 1 h 45 restantes correspondent au temps que j’ai mis à ouvrir la carte de fusion.
Dans la salle pilote, les citations sont passées de 32 à 14, et il n’en reste plus aucune dans la prose. Le code affiché est passé de 93 à 34 lignes. La PR #6 touche 8 fichiers (+638, −176). Le nouveau format de salle est consigné dans DECISIONS.md (D21.1).
zio.c s'ouvre dans un panneau à droite.
# Là où je reste dans la boucle
À deux endroits seulement : la décision et la fusion. Dans l’aperçu, j’ai ouvert la page, je l’ai relue, je l’ai testée, j’ai vu le rendu graphique, et j’ai tout de suite été séduit. J’étais bluffé de voir à quelle vitesse le retour d’un inconnu sur Internet pouvait devenir une PR, avec une démo visible et utilisable avant même la mise en production. Quelques minutes plus tard, j’ai prévenu ghm2180 que c’était en ligne : « The rendering is far better! »
Le fil était ouvertement hostile aux textes écrits par une IA. Sous mon « I built », AyyEye a répondu : « You keep using those words. I don’t think it means what you think it means. » J’ai concédé le point : « Fair hit. “Directed” is closer: agents wrote the code and most of the text, I chose the subject, steered and reviewed. » Et gspr a répondu : « You were a manager, in other words. »
Oui : manager, producteur, un peu réalisateur. Comme il y a des réalisateurs de films, j’ai l’impression d’être devenu le réalisateur d’une production logicielle.
# Les ratés
Mon premier commentaire dans le fil a été tué automatiquement par le logiciel de HN, sans doute parce que mon compte n’avait jamais commenté. dang l’a rétabli après un courriel.
Deux précisions, plus d’animations pédagogiques et la règle contre le « punchy », ont été postées 5 secondes après le découpage du ticket par le CEO. Le ticket de construction ne les a jamais reçues, et elles passent dans la suite. La boucle est rapide, mais elle a ses failles.
Enfin, seule la salle en anglais a changé. Le français et l’espagnol suivront.
# La question ouverte
La critique la plus répétée vise la prose écrite par une IA, et je ne l’ai pas réécrite à la main. Les agents continuent de l’écrire, avec des règles de style plus strictes. Je peux écrire un texte entièrement humain pour de petites parties, ou pour exprimer un sentiment. Ici, il fallait une très grande rigueur technique pour expliquer du code. J’ai préféré faire confiance à l’IA plutôt que de fournir un texte approximatif, qui est tout ce que j’aurais pu donner. Je ne sais pas encore si ce choix répondra aux critiques.
# Où j’en suis
Juste après la fusion, j’ai lancé le même format sur toutes les salles, en parallèle. J’ai tout de suite été convaincu : il fallait l’étendre partout et avoir le résultat le plus vite possible.