<?xml version="1.0" encoding="utf-8"?>
<?xml-stylesheet type="text/xsl" href="/feed.xsl"?>
<rss version="2.0" xmlns:atom="http://www.w3.org/2005/Atom" xmlns:content="http://purl.org/rss/1.0/modules/content/">
    <channel>
        <title>Écrits · Ilyas Turki</title>
        <link>https://ilyasturki.com/fr/ecrits/</link>
        <description>Ce que j’écris sur mes outils, le terminal et l’IA.</description>
        <language>fr</language>
        <lastBuildDate>Tue, 18 Aug 2026 00:00:00 GMT</lastBuildDate>
        <atom:link href="https://ilyasturki.com/feed.xml" rel="self" type="application/rss+xml" />
        <item>
            <title>Pourquoi j&#39;écris mes prompts dans le terminal</title>
            <link>https://ilyasturki.com/fr/ecrits/prompts-terminal/</link>
            <guid isPermaLink="true">https://ilyasturki.com/ecrits/prompts-terminal/</guid>
            <pubDate>Tue, 18 Aug 2026 00:00:00 GMT</pubDate>
            <description>Je me sens chez moi dans le terminal, et j&#39;y écris mieux. L&#39;effet IKEA explique la moitié, la cohérence de l&#39;interface explique le reste.</description>
            <content:encoded>&lt;p&gt;Ce n’est pas que mes prompts sont pires en dehors du terminal. C’est que je m’amuse plus dedans. L’inspiration vient plus facilement, l’écriture va plus vite, et pendant longtemps j’ai été incapable de dire pourquoi. Maintenant je sais: je m’y sens chez moi.&lt;/p&gt;
&lt;p&gt;J’ai pourtant tout ce qu’il faut pour faire autrement. Claude Desktop est installé sur cette machine, l’app web traîne dans un onglet. J’essaye de ne pas m’en servir. Quand je veux parler à un agent, j’ouvre une fenêtre noire.&lt;/p&gt;
&lt;h2&gt;Je n’ai pas choisi le terminal&lt;/h2&gt;
&lt;p&gt;C’est Linux qui m’a forcé. À la base, j’étais le mec qui allait tout le temps sur VS Code; le terminal, c’était rare que je l’ouvre, et je n’aimais pas ça du tout. Sauf que plus tu utilises Linux, plus il te rapproche du terminal. Et plus tu vis dans le terminal, plus il te rapproche de Neovim et de tmux. Surtout quand, comme moi, tu aimes customiser et toujours avoir le truc parfait.&lt;/p&gt;
&lt;p&gt;&lt;img src=&quot;https://ilyasturki.com/blog/meme-gru.jpg&quot; alt=&quot;Meme du plan de Gru: installer Linux, être forcé d&#39;utiliser le terminal, ne plus savoir écrire ailleurs, puis Gru qui découvre le dernier panneau, dépité&quot;&gt;&lt;/p&gt;
&lt;p&gt;Aujourd’hui tout tourne dans Ghostty: Claude Code, Codex, Neovim, lazygit. En sortir pour écrire me demande un effort.&lt;/p&gt;
&lt;p&gt;&lt;img src=&quot;https://ilyasturki.com/blog/ghostty-claude.png&quot; alt=&quot;Claude Code ouvert dans Ghostty, avec un prompt de quatre lignes en cours de frappe dans le champ de saisie&quot;&gt;&lt;/p&gt;
&lt;p&gt;&lt;em&gt;La fenêtre noire en question. Le prompt fait quatre lignes parce que Shift+Entrée fait ce que je lui ai dit de faire.&lt;/em&gt;&lt;/p&gt;
&lt;h2&gt;Ça ressemble à du code&lt;/h2&gt;
&lt;p&gt;IosevkaTerm, taille 11. Un prompt tapé là-dedans ne ressemble pas à un message: c’est du code, enfin ça y ressemble, et le code, j’aimais bien. Comme j’ai l’habitude de coder dans le terminal, écrire au même endroit va tout seul. Je débite, je débite. Et il y a moins la peur de recommencer à partir de zéro.&lt;/p&gt;
&lt;h2&gt;Chaque site sait mieux que les autres&lt;/h2&gt;
&lt;p&gt;Ailleurs, tous les textareas ont un avis. Il y en a qui formatent le markdown automatiquement, il y en a qui s’en foutent complètement. Il y en a où Shift+Entrée saute une ligne, d’autres où ça envoie le message direct. Chacun te dit: moi, je sais mieux que les autres. Et toutes ces différences s’additionnent en un truc chiant qui fait qu’on ne se sent pas chez nous là-bas.&lt;/p&gt;
&lt;p&gt;&lt;img src=&quot;https://ilyasturki.com/blog/meme-deux-boutons.jpg&quot; alt=&quot;Meme des deux boutons: un homme en sueur hésite entre « Entrée saute une ligne » et « Entrée envoie le message »&quot;&gt;&lt;/p&gt;
&lt;p&gt;L’ergonomie a un nom pour ça: le mode error, la même touche qui fait deux choses différentes selon le contexte. La règle violée s’appelle la cohérence, et la littérature HCI en parle comme de sa &lt;a href=&quot;https://asktog.com/atc/principles-of-interaction-design/&quot;&gt;règle d’or&lt;/a&gt;. Mon agacement a des références.&lt;/p&gt;
&lt;p&gt;Dans le terminal, la question disparaît. Aucune différence entre un outil et l’autre: même police, mêmes couleurs, même Entrée. Pour les yeux et pour le cerveau, c’est plus facile.&lt;/p&gt;
&lt;h2&gt;L’effet IKEA&lt;/h2&gt;
&lt;p&gt;En creusant, je suis tombé sur un deuxième nom: l’&lt;a href=&quot;https://thedecisionlab.com/biases/ikea-effect&quot;&gt;effet IKEA&lt;/a&gt;. On donne plus de valeur à ce qu’on a assemblé soi-même; l’effort crée la possession, la possession crée l’attachement. Les chercheurs rangent ça dans les biais cognitifs. Je veux bien être biaisé.&lt;/p&gt;
&lt;p&gt;Parce que ce terminal, je l’ai monté pièce par pièce. Deux lignes de mon &lt;code&gt;ghostty.nix&lt;/code&gt;:&lt;/p&gt;
&lt;pre&gt;&lt;code class=&quot;language-nix&quot;&gt;&lt;span class=&quot;tok-comment&quot;&gt;# Ctrl+Backspace deletes a word everywhere (default sends ^H which collides with Ctrl+H)&lt;/span&gt;
&lt;span class=&quot;tok-string&quot;&gt;&amp;quot;ctrl+backspace=text:\\x17&amp;quot;&lt;/span&gt;
&lt;span class=&quot;tok-comment&quot;&gt;# Shift+Enter: raw Meta+Enter so Codex/Claude newlines survive tmux&lt;/span&gt;
&lt;span class=&quot;tok-string&quot;&gt;&amp;quot;shift+enter=text:\\x1b\\x0d&amp;quot;&lt;/span&gt;
&lt;/code&gt;&lt;/pre&gt;
&lt;p&gt;Réglées une fois, héritées partout: par Claude Code, par Codex, par Neovim, et par tout ce que j’installerai l’année prochaine.&lt;/p&gt;
&lt;p&gt;&lt;img src=&quot;https://ilyasturki.com/blog/schema-grammaire.svg&quot; alt=&quot;Schéma en deux zones: à gauche, quatre sites qui ont chacun leur propre règle pour la touche Entrée; à droite, le terminal, où Claude Code, Neovim, lazygit, Codex, fish et Starship partagent une seule grammaire réglée une fois en Nix&quot;&gt;&lt;/p&gt;
&lt;p&gt;Le test inverse existe. Je SSH sur une machine, je tombe sur le bash par défaut, sans mon fish, sans mon Starship: je n’apprécie pas du tout. Rien n’y marche moins bien, pourtant. C’est juste que ce n’est pas chez moi. La recherche sur le flow dit la même chose avec d’autres mots: pour s’immerger dans une tâche, il faut un environnement familier, pratiqué, qu’on sent sous contrôle. Un textarea différent par site, c’est exactement l’inverse.&lt;/p&gt;
&lt;h2&gt;Le téléphone quand même&lt;/h2&gt;
&lt;p&gt;Je ne suis pas intégriste. Quand je ne suis pas chez moi et que je n’ai que mon téléphone, j’ouvre l’app Claude, et pour taper un truc vite fait, c’est plus facile comme ça. Du dépannage. Dès que je retrouve un clavier, je retrouve la fenêtre noire.&lt;/p&gt;
&lt;p&gt;C’est comme les lits, en fait. Chez moi je me sens bien, je dors facilement dans mon lit; à l’hôtel ou à l’étranger, je dors moins facilement. Le terminal, c’est mon lit. Tous les autres champs de texte sont des chambres d’hôtel.&lt;/p&gt;
</content:encoded>
        </item>
        <item>
            <title>Retour à Neovim, deux ans après</title>
            <link>https://ilyasturki.com/fr/ecrits/retour-neovim/</link>
            <guid isPermaLink="true">https://ilyasturki.com/ecrits/retour-neovim/</guid>
            <pubDate>Tue, 28 Jul 2026 00:00:00 GMT</pubDate>
            <description>Parti sur VS Code, puis un an sur Zed. Je vis dans le terminal maintenant, et Neovim y était déjà.</description>
            <enclosure url="https://ilyasturki.com/blog/nvim-hero.png" length="500364" type="image/png" />
            <content:encoded>&lt;p&gt;J’ai tellement aimé Neovim. Et je l’ai quitté quand même. La raison n’a rien d’original: je passais trop de temps à éditer mes plugins au lieu de faire du vrai travail. Alors je suis parti sur VS Code, par discipline. On bidouille aussi sa config là-bas, mais c’est moins grave: on la change vite fait, tout marche, pas de gros bugs. C’était mieux.&lt;/p&gt;
&lt;p&gt;&lt;img src=&quot;https://ilyasturki.com/blog/meme-boyfriend.jpg&quot; alt=&quot;Meme du petit ami distrait: « moi » se retourne sur « keymaps.lua » pendant que « le vrai travail » fait la tête&quot;&gt;&lt;/p&gt;
&lt;h2&gt;Le détour Zed&lt;/h2&gt;
&lt;p&gt;Puis Zed, et là c’était sérieux. Une bonne semaine à me faire aux raccourcis et à mettre ma config au propre, puis un an à l’utiliser énormément, sur mon desktop comme sur mon laptop. Il est devenu très puissant, et j’ai pu y réimplémenter tous les raccourcis que j’avais sur Neovim, ceux qui me manquaient tant sur VS Code.&lt;/p&gt;
&lt;p&gt;Restait un trou: mon serveur. Là-bas je travaille en SSH, directement dans le terminal, alors j’y gardais Neovim en backup. Le backup allait devenir le principal.&lt;/p&gt;
&lt;h2&gt;C’est tmux qui m’a ramené&lt;/h2&gt;
&lt;p&gt;Le vrai déclencheur, c’est Claude Code. Plus je m’en servais, plus je vivais dans le terminal. Au début je le lançais à l’intérieur de Zed, mais le workflow ne me plaisait pas tellement, et j’ai fini sur tmux. Et une fois dans tmux à plein temps, ouvrir Zed m’embête, ouvrir VS Code m’embête encore plus, parce qu’il faut prendre la souris et je n’ai pas envie de prendre la souris. Un éditeur qui vit déjà dans le terminal, entre lazygit et Claude Code: le truc parfait.&lt;/p&gt;
&lt;p&gt;Je n’ai rien reconstruit, d’ailleurs. Ma vieille config était toujours là, fonctionnelle, et j’y ai réintégré tout ce que j’avais mis au point sur Zed. Le résultat est plus minimal qu’avant, mais rien n’est perdu. Si le retour a été aussi facile, c’est pour ça: j’avais déjà quelque chose de bien.&lt;/p&gt;
&lt;h2&gt;Good enough&lt;/h2&gt;
&lt;p&gt;Une config n’est jamais finie. Ni sur Neovim, ni sur VS Code, ni sur Zed: si tu as envie de bidouiller, tu bidouilleras. À un moment, il faut se dire ok, c’est good enough, on passe au travail.&lt;/p&gt;
&lt;blockquote&gt;
&lt;p&gt;Il y a un milliard de choses à changer dans ma config. Ce n’est pas grave. Je reste avec ce que j’ai.&lt;/p&gt;
&lt;/blockquote&gt;
&lt;p&gt;Elle est sous git, donc je peux vérifier ce que je raconte au lieu de me fier à mon impression: rien depuis des semaines. Je suis productif avec. Et de toute façon, c’est Claude Code qui fait la majorité de mes édits aujourd’hui.&lt;/p&gt;
&lt;h2&gt;L’IA au minimum&lt;/h2&gt;
&lt;p&gt;Du coup, je n’attends presque rien de l’IA dans l’éditeur. Puisque les agents écrivent le gros du code, pas besoin d’un chat intégré ni d’un agent de plus: juste une autocomplétion rapide, qui me fait gagner du temps quand je tape. Je sais que ce n’est plus la mode: même chez Cursor, l’autocomplétion n’est plus le cheval de bataille, tout le monde se concentre sur les agents, et les outils comme Claude Code ou Codex n’en proposent même pas. Chez moi, c’est minuet branché sur DeepSeek, payé au token et réglé pour rester léger: une seule suggestion par requête, peu de contexte. Ça fait le taf, et ce n’est vraiment pas cher.&lt;/p&gt;
&lt;h2&gt;La config qui reste&lt;/h2&gt;
&lt;p&gt;Rien d’extravagant: neo-tree en fenêtre flottante, lualine en bas, bufferline en haut, treesitter et le LSP qui font le gros du travail, 38 plugins gelés dans le &lt;code&gt;lazy-lock.json&lt;/code&gt;. Le thème suit le système: onedark en sombre, catppuccin latte en clair.&lt;/p&gt;
&lt;p&gt;&lt;img src=&quot;https://ilyasturki.com/blog/nvim-telescope.png&quot; alt=&quot;Telescope ouvert en live grep par-dessus ma config Neovim, la liste des résultats au centre et l&#39;aperçu du fichier à droite&quot;&gt;&lt;/p&gt;
&lt;p&gt;&lt;em&gt;Telescope en live grep. Une fois qu’on navigue comme ça, cliquer dans une sidebar redevient lent.&lt;/em&gt;&lt;/p&gt;
&lt;p&gt;Tout part de la barre d’espace comme leader. Le reste, c’est de l’ergonomie pour ne jamais quitter la position des mains.&lt;/p&gt;
&lt;pre&gt;&lt;code class=&quot;language-lua&quot;&gt;&lt;span class=&quot;tok-comment&quot;&gt;-- jk / kj pour sortir du mode insertion, partout&lt;/span&gt;
&lt;span class=&quot;tok-fn&quot;&gt;map&lt;/span&gt;&lt;span class=&quot;tok-punct&quot;&gt;(&lt;/span&gt;&lt;span class=&quot;tok-string&quot;&gt;&amp;quot;i&amp;quot;&lt;/span&gt;&lt;span class=&quot;tok-punct&quot;&gt;,&lt;/span&gt; &lt;span class=&quot;tok-string&quot;&gt;&amp;quot;jk&amp;quot;&lt;/span&gt;&lt;span class=&quot;tok-punct&quot;&gt;,&lt;/span&gt; &lt;span class=&quot;tok-string&quot;&gt;&amp;quot;&amp;lt;Esc&amp;gt;&amp;quot;&lt;/span&gt;&lt;span class=&quot;tok-punct&quot;&gt;)&lt;/span&gt;
&lt;span class=&quot;tok-fn&quot;&gt;map&lt;/span&gt;&lt;span class=&quot;tok-punct&quot;&gt;(&lt;/span&gt;&lt;span class=&quot;tok-string&quot;&gt;&amp;quot;i&amp;quot;&lt;/span&gt;&lt;span class=&quot;tok-punct&quot;&gt;,&lt;/span&gt; &lt;span class=&quot;tok-string&quot;&gt;&amp;quot;kj&amp;quot;&lt;/span&gt;&lt;span class=&quot;tok-punct&quot;&gt;,&lt;/span&gt; &lt;span class=&quot;tok-string&quot;&gt;&amp;quot;&amp;lt;Esc&amp;gt;&amp;quot;&lt;/span&gt;&lt;span class=&quot;tok-punct&quot;&gt;)&lt;/span&gt;

&lt;span class=&quot;tok-comment&quot;&gt;-- U pour refaire (le U par défaut ne sert à rien)&lt;/span&gt;
&lt;span class=&quot;tok-fn&quot;&gt;map&lt;/span&gt;&lt;span class=&quot;tok-punct&quot;&gt;(&lt;/span&gt;&lt;span class=&quot;tok-string&quot;&gt;&amp;quot;n&amp;quot;&lt;/span&gt;&lt;span class=&quot;tok-punct&quot;&gt;,&lt;/span&gt; &lt;span class=&quot;tok-string&quot;&gt;&amp;quot;U&amp;quot;&lt;/span&gt;&lt;span class=&quot;tok-punct&quot;&gt;,&lt;/span&gt; &lt;span class=&quot;tok-string&quot;&gt;&amp;quot;&amp;lt;C-r&amp;gt;&amp;quot;&lt;/span&gt;&lt;span class=&quot;tok-punct&quot;&gt;)&lt;/span&gt;

&lt;span class=&quot;tok-comment&quot;&gt;-- c supprime dans le trou noir, pas dans le presse-papier&lt;/span&gt;
&lt;span class=&quot;tok-fn&quot;&gt;map&lt;/span&gt;&lt;span class=&quot;tok-punct&quot;&gt;({&lt;/span&gt; &lt;span class=&quot;tok-string&quot;&gt;&amp;quot;n&amp;quot;&lt;/span&gt;&lt;span class=&quot;tok-punct&quot;&gt;,&lt;/span&gt; &lt;span class=&quot;tok-string&quot;&gt;&amp;quot;v&amp;quot;&lt;/span&gt;&lt;span class=&quot;tok-punct&quot;&gt;,&lt;/span&gt; &lt;span class=&quot;tok-string&quot;&gt;&amp;quot;x&amp;quot;&lt;/span&gt; &lt;span class=&quot;tok-punct&quot;&gt;},&lt;/span&gt; &lt;span class=&quot;tok-string&quot;&gt;&amp;quot;c&amp;quot;&lt;/span&gt;&lt;span class=&quot;tok-punct&quot;&gt;,&lt;/span&gt; &lt;span class=&quot;tok-string&quot;&gt;&amp;#39;&amp;quot;_c&amp;#39;&lt;/span&gt;&lt;span class=&quot;tok-punct&quot;&gt;)&lt;/span&gt;

&lt;span class=&quot;tok-comment&quot;&gt;-- H / L sautent au premier / dernier caractère non vide&lt;/span&gt;
&lt;span class=&quot;tok-comment&quot;&gt;-- (utilisables comme mouvements: dH, dL)&lt;/span&gt;
&lt;span class=&quot;tok-fn&quot;&gt;map&lt;/span&gt;&lt;span class=&quot;tok-punct&quot;&gt;({&lt;/span&gt; &lt;span class=&quot;tok-string&quot;&gt;&amp;quot;n&amp;quot;&lt;/span&gt;&lt;span class=&quot;tok-punct&quot;&gt;,&lt;/span&gt; &lt;span class=&quot;tok-string&quot;&gt;&amp;quot;v&amp;quot;&lt;/span&gt;&lt;span class=&quot;tok-punct&quot;&gt;,&lt;/span&gt; &lt;span class=&quot;tok-string&quot;&gt;&amp;quot;o&amp;quot;&lt;/span&gt; &lt;span class=&quot;tok-punct&quot;&gt;},&lt;/span&gt; &lt;span class=&quot;tok-string&quot;&gt;&amp;quot;H&amp;quot;&lt;/span&gt;&lt;span class=&quot;tok-punct&quot;&gt;,&lt;/span&gt; &lt;span class=&quot;tok-string&quot;&gt;&amp;quot;^&amp;quot;&lt;/span&gt;&lt;span class=&quot;tok-punct&quot;&gt;)&lt;/span&gt;
&lt;span class=&quot;tok-fn&quot;&gt;map&lt;/span&gt;&lt;span class=&quot;tok-punct&quot;&gt;({&lt;/span&gt; &lt;span class=&quot;tok-string&quot;&gt;&amp;quot;n&amp;quot;&lt;/span&gt;&lt;span class=&quot;tok-punct&quot;&gt;,&lt;/span&gt; &lt;span class=&quot;tok-string&quot;&gt;&amp;quot;v&amp;quot;&lt;/span&gt;&lt;span class=&quot;tok-punct&quot;&gt;,&lt;/span&gt; &lt;span class=&quot;tok-string&quot;&gt;&amp;quot;o&amp;quot;&lt;/span&gt; &lt;span class=&quot;tok-punct&quot;&gt;},&lt;/span&gt; &lt;span class=&quot;tok-string&quot;&gt;&amp;quot;L&amp;quot;&lt;/span&gt;&lt;span class=&quot;tok-punct&quot;&gt;,&lt;/span&gt; &lt;span class=&quot;tok-string&quot;&gt;&amp;quot;g_&amp;quot;&lt;/span&gt;&lt;span class=&quot;tok-punct&quot;&gt;)&lt;/span&gt;

&lt;span class=&quot;tok-comment&quot;&gt;-- AZERTY: ù tombe sous les doigts, alors il remplace %&lt;/span&gt;
&lt;span class=&quot;tok-fn&quot;&gt;map&lt;/span&gt;&lt;span class=&quot;tok-punct&quot;&gt;({&lt;/span&gt; &lt;span class=&quot;tok-string&quot;&gt;&amp;quot;n&amp;quot;&lt;/span&gt;&lt;span class=&quot;tok-punct&quot;&gt;,&lt;/span&gt; &lt;span class=&quot;tok-string&quot;&gt;&amp;quot;v&amp;quot;&lt;/span&gt; &lt;span class=&quot;tok-punct&quot;&gt;},&lt;/span&gt; &lt;span class=&quot;tok-string&quot;&gt;&amp;quot;ù&amp;quot;&lt;/span&gt;&lt;span class=&quot;tok-punct&quot;&gt;,&lt;/span&gt; &lt;span class=&quot;tok-string&quot;&gt;&amp;quot;%&amp;quot;&lt;/span&gt;&lt;span class=&quot;tok-punct&quot;&gt;)&lt;/span&gt;
&lt;/code&gt;&lt;/pre&gt;
&lt;p&gt;&lt;img src=&quot;https://ilyasturki.com/blog/nvim-whichkey.png&quot; alt=&quot;Le menu which-key qui s&#39;affiche après avoir pressé la touche leader, listant les raccourcis disponibles&quot;&gt;&lt;/p&gt;
&lt;p&gt;&lt;em&gt;which-key. Je presse espace, et il me rappelle tout ce qui part de là.&lt;/em&gt;&lt;/p&gt;
&lt;p&gt;Deux ans ailleurs, et le retour ne s’est pas joué sur l’éditeur lui-même: je vis dans le terminal maintenant, et Neovim y était déjà. La config est good enough. Enfin, jusqu’à la prochaine fois.&lt;/p&gt;
</content:encoded>
        </item>
        <item>
            <title>L&#39;IA fait des designs moyens, et ça se voit</title>
            <link>https://ilyasturki.com/fr/ecrits/design-moyen/</link>
            <guid isPermaLink="true">https://ilyasturki.com/ecrits/design-moyen/</guid>
            <pubDate>Thu, 02 Jul 2026 00:00:00 GMT</pubDate>
            <description>Claude Design devait nous sortir de la norme, et je reconnais ses sites au premier coup d&#39;œil. La faute à la flemme: on livre la première sortie du modèle sans jamais réitérer.</description>
            <content:encoded>&lt;p&gt;Je reconnais un site fait avec Claude Design. Pas besoin de chercher, ça se voit. Et c’est quand même ironique, parce que Claude Design existe précisément pour ça: sortir de la norme, avoir un design un peu plus incroyable que ce que le modèle sortirait tout seul. Sauf que tout le monde s’est mis à l’utiliser, avec quasiment le même prompt. Quand tout le monde demande la même originalité au même outil, l’originalité devient une norme comme une autre.&lt;/p&gt;
&lt;p&gt;Les images, même histoire. Tout le monde a fini par remarquer que les visuels générés par ChatGPT se ressemblent tous. Les commerces s’en servent pour leurs pubs à la place d’un graphiste, et ce n’est pas mauvais, mais on les repère au premier coup d’œil.&lt;/p&gt;
&lt;h2&gt;Un modèle vise le centre&lt;/h2&gt;
&lt;p&gt;Un modèle sort la réponse la plus probable, littéralement le centre de tout ce qu’il a avalé. L’entraînement pousse dans le même sens: on récompense ce qui plaît au plus grand nombre, donc le consensus, jamais le bizarre. Et par-dessus tout ça, on utilise tous le même outil avec quasiment le même prompt, donc on tire tous le même point de la même distribution.&lt;/p&gt;
&lt;p&gt;L’IA sait ce qui est mauvais: elle ne le fera pas. Elle ne sait pas ce qui est exceptionnel: elle ne le fera pas non plus. Ce qui reste entre les deux, c’est la moyenne.&lt;/p&gt;
&lt;h2&gt;L’exceptionnel d’hier&lt;/h2&gt;
&lt;p&gt;Le plus drôle: ces designs qu’on qualifie de vibecodés aujourd’hui, on les trouvait incroyables à l’époque. Les grands dégradés d’il y a dix ans, le glassmorphism d’il y a cinq ou six: c’était ça, les meilleurs designs, ceux qu’on me montrait en exemple. Ils n’ont pas empiré depuis. On en a juste beaucoup trop vu, et à force, on a compris que c’était un peu nul.&lt;/p&gt;
&lt;p&gt;La moyenne n’est pas moche. C’est l’exceptionnel d’hier, usé par la répétition.&lt;/p&gt;
&lt;h2&gt;Trois versions de Kilorep&lt;/h2&gt;
&lt;p&gt;Kilorep, mon app de suivi de musculation, a commencé exactement comme ça: une première version entièrement dessinée par Claude Design, encore en ligne sur &lt;a href=&quot;https://v1.kilorep.com&quot;&gt;v1.kilorep.com&lt;/a&gt;.&lt;/p&gt;
&lt;p&gt;&lt;img src=&quot;https://ilyasturki.com/blog/kilorep-v1-claude-design.png&quot; alt=&quot;La première version de Kilorep, générée par Claude Design&quot;&gt;&lt;/p&gt;
&lt;p&gt;Au début, j’étais impressionné. Je me disais waouh, incroyable, il fait des trucs trop originaux. Puis j’ai généré d’autres designs, sur d’autres projets, et non: il fait la même chose tout le temps. Le style change, les couleurs changent, les bordures changent, mais c’est le même délire, et ça se remarque.&lt;/p&gt;
&lt;p&gt;Et encore, ça, c’est le problème visible. Par défaut, l’interface sort chargée, avec des éléments inutiles un peu partout, jamais assez minimaliste. Le vrai problème, c’est l’expérience utilisateur: catastrophique si personne ne s’en occupe. Alors j’ai itéré. Un premier redesign dans Claude Design, un deuxième avec Claude Code, et c’est cette troisième version qui tourne aujourd’hui sur &lt;a href=&quot;https://kilorep.com&quot;&gt;kilorep.com&lt;/a&gt;. Itérer, itérer, itérer jusqu’à quelque chose de correctement utilisable, puis tester à fond pour vérifier que ça l’est vraiment.&lt;/p&gt;
&lt;p&gt;&lt;img src=&quot;https://ilyasturki.com/blog/kilorep-v2-claude-design.jpg&quot; alt=&quot;Le premier redesign, dans Claude Design&quot;&gt;&lt;/p&gt;
&lt;p&gt;&lt;img src=&quot;https://ilyasturki.com/blog/kilorep-v3-claude-code.jpg&quot; alt=&quot;La version finale, celle de kilorep.com&quot;&gt;&lt;/p&gt;
&lt;h2&gt;Ce site aussi&lt;/h2&gt;
&lt;p&gt;Celui que vous lisez n’y échappe pas. Son inspiration principale, c’est &lt;a href=&quot;https://wondermake.xyz/&quot;&gt;Wondermake&lt;/a&gt;, le site d’une agence de design que j’ai trouvé superbe et que j’ai refait à ma façon.&lt;/p&gt;
&lt;p&gt;&lt;img src=&quot;https://ilyasturki.com/blog/wondermake-home.jpg&quot; alt=&quot;La page d&#39;accueil de Wondermake: monochrome, typographie énorme, une grille apparente&quot;&gt; Le monochrome est un choix: efficace, pas besoin de s’embêter avec les couleurs, et intemporel, donc il tiendra dans le temps. Et il y a des morceaux vibecodés ici aussi, surtout côté design. Ce n’est pas parfait, mais ça reste correct, ça ne me gêne pas tant que ça, et je ne crois pas que ça saute aux yeux.&lt;/p&gt;
&lt;h2&gt;Le problème, c’est la flemme&lt;/h2&gt;
&lt;p&gt;Le problème n’a jamais été de vibecoder, ni de laisser l’IA dessiner. Le problème, c’est la flemme: livrer la première sortie du modèle sans jamais réitérer, alors qu’il le faut. C’est comme ça qu’on se retrouve avec dix apps identiques, et au passage pleines de bugs, ce qui est chiant.&lt;/p&gt;
&lt;p&gt;L’IA ne fera pas ce qui est mauvais, mais elle ne fera pas non plus ce qui est exceptionnel. La moyenne, elle vous la donne. L’exceptionnel, il faut aller le chercher.&lt;/p&gt;
</content:encoded>
        </item>
        <item>
            <title>L&#39;open source ne rend pas l&#39;IA gratuite</title>
            <link>https://ilyasturki.com/fr/ecrits/locataires/</link>
            <guid isPermaLink="true">https://ilyasturki.com/ecrits/locataires/</guid>
            <pubDate>Thu, 04 Jun 2026 00:00:00 GMT</pubDate>
            <description>Le plan le plus cher est passé de 20 à 300 dollars en deux ans et demi. J&#39;ai installé Ollama pour voir: le compute se paie toujours, mais sans la taxe du propriétaire.</description>
            <enclosure url="https://ilyasturki.com/blog/cover-locataires.svg" length="1810" type="image/svg+xml" />
            <content:encoded>&lt;p&gt;L’abonnement à 100 euros par mois est devenu le nouveau 20 euros. Aujourd’hui on signe à 200. Et je ne vois pas ce qui arrêterait la pente: la suite, c’est 500, puis 1000. On s’est bien fait avoir, et le pire, c’est qu’on dit merci.&lt;/p&gt;
&lt;p&gt;&lt;img src=&quot;https://ilyasturki.com/blog/prix-plafond.svg&quot; alt=&quot;Le prix du plan grand public le plus cher du marché: 20 dollars début 2023, 200 fin 2024, 300 mi-2025, puis une projection en pointillés vers 500 et 1000&quot;&gt;&lt;/p&gt;
&lt;p&gt;&lt;em&gt;De 20 à 300 dollars en deux ans et demi. Les pointillés, c’est mon pari.&lt;/em&gt;&lt;/p&gt;
&lt;p&gt;Et pour ce prix, on ne sait même pas ce qu’on achète. Modèle privé, données privées, code privé. Au moment où j’écris, Opus 4.8 vient de sortir, et beaucoup sont persuadés qu’Opus 4.5 avait baissé en qualité les semaines précédentes: A/B testing, reasoning_effort réduit en douce, chacun a sa théorie. Peut-être qu’ils ont raison, peut-être que non, et c’est exactement le problème: la boîte est fermée, il ne reste que l’impression. Pendant ce temps, les limites se vident un peu plus vite à chaque mise à jour du modèle. Le loyer monte, l’appartement rétrécit, et il n’y a jamais d’état des lieux.&lt;/p&gt;
&lt;p&gt;&lt;img src=&quot;https://ilyasturki.com/blog/meme-anakin.jpg&quot; alt=&quot;Meme Anakin et Padmé: « On a amélioré le modèle » « Et je peux vérifier ? », silence, « Et je peux vérifier ? »&quot;&gt;&lt;/p&gt;
&lt;p&gt;Qu’on soit clairs: j’aime Claude. J’y passe mes journées et je le préfère à tout le reste. Le problème n’a jamais été le produit. Le problème, c’est d’être locataire.&lt;/p&gt;
&lt;h2&gt;J’ai testé la sortie de secours&lt;/h2&gt;
&lt;p&gt;Du coup j’ai installé Ollama. Aucune galère à raconter: ROCm, un override de version GFX dans ma config Nix pour ma RX 7900 GRE, et ça tourne. gpt-oss:20b, gemma3:12b, qwen3.5:9b, deepseek-r1:8b. En local, gratuit, sans internet, sans rien renvoyer à personne.&lt;/p&gt;
&lt;p&gt;Ce sont des modèles middle tier. Ça fait le taf, mais ce n’est pas de l’Opus 4.8, et personne ne troque de l’Opus contre un 20b très longtemps. Les modèles vraiment intéressants demandent une machine que le PC moyen n’est pas. Sur le laptop, laissez tomber: il fait tourner des versions encore plus petites, et ça se sent.&lt;/p&gt;
&lt;p&gt;&lt;img src=&quot;https://ilyasturki.com/blog/ollama-transcript.svg&quot; alt=&quot;Session Ollama sur mon laptop: qwen3.5:4b réfléchit cinq minutes, se présente comme un assistant Google, puis répond trois phrases de jargon d&#39;entreprise&quot;&gt;&lt;/p&gt;
&lt;p&gt;&lt;em&gt;qwen3.5:4b sur mon laptop, sortie authentique. Cinq minutes de réflexion, une crise d’identité, et une réponse de plaquette commerciale.&lt;/em&gt;&lt;/p&gt;
&lt;p&gt;Chez moi, Ollama ne se lance même pas au boot. &lt;code&gt;systemctl start ollama&lt;/code&gt; quand j’en ai besoin, et j’en ai rarement besoin. C’est un backup. Une sortie de secours, pas une porte d’entrée: on est très contents qu’elle existe, on n’a pas envie de vivre dedans.&lt;/p&gt;
&lt;h2&gt;Le compute se paie toujours&lt;/h2&gt;
&lt;p&gt;Il faut tuer un mythe au passage: l’open source ne rend pas l’IA gratuite. Les poids sont libres, le compute ne l’est jamais. Soit vous achetez le GPU, soit vous louez celui de quelqu’un d’autre, et dans les deux cas la facture arrive.&lt;/p&gt;
&lt;p&gt;Regardez &lt;a href=&quot;http://z.ai&quot;&gt;z.ai&lt;/a&gt;. GLM est open weights, vous pouvez télécharger le modèle ce soir. Leur Coding Plan, lui: 18, 80 et 168 dollars par mois. Les mêmes paliers que Claude Code, chez le champion de l’open source.&lt;/p&gt;
&lt;p&gt;&lt;img src=&quot;https://ilyasturki.com/blog/glm-coding-plan.png&quot; alt=&quot;Les trois offres du GLM Coding Plan de z.ai: Lite à 18 dollars, Pro à 80 dollars et Max à 168 dollars par mois&quot;&gt;&lt;/p&gt;
&lt;p&gt;&lt;em&gt;Les tarifs du GLM Coding Plan. Ça ne vous rappelle rien?&lt;/em&gt;&lt;/p&gt;
&lt;p&gt;Et pourtant, à palier équivalent, c’est moins cher: 80 au lieu de 100, 168 au lieu de 200. Cet écart a un nom: la marge du propriétaire. La taxe Anthropic, la taxe OpenAI. Sur un modèle ouvert, elle disparaît, et il ne reste que le prix des cartes et du courant. Le loyer sans les frais d’agence.&lt;/p&gt;
&lt;p&gt;&lt;img src=&quot;https://ilyasturki.com/blog/meme-compute.jpg&quot; alt=&quot;Meme expanding brain: payer 20 dollars par mois pour une IA, puis 100, puis 200, et enfin acheter un GPU à 600 balles pour faire tourner une IA gratuite&quot;&gt;&lt;/p&gt;
&lt;h2&gt;Les seuls qui peuvent casser les prix&lt;/h2&gt;
&lt;p&gt;Posséder le modèle, c’est pouvoir vendre l’abonnement moins cher que ce que les autres paient à l’API. C’est pour ça que Claude Code et Codex sont imbattables sur le prix: OpenAI et Anthropic vendent à prix coûtant ce que tout le reste du marché achète au détail.&lt;/p&gt;
&lt;p&gt;OpenCode essaie de jouer le même jeu sans posséder de modèle, et ça se voit. Les abonnements sont moins généreux, et je ne parie pas un centime sur leur marge le jour où les gens se mettront à les rentabiliser sérieusement.&lt;/p&gt;
&lt;p&gt;&lt;img src=&quot;https://ilyasturki.com/blog/meme-pigeon.jpg&quot; alt=&quot;Meme « Is this a pigeon? »: une startup IA désigne un accès API en demandant si c&#39;est un moat&quot;&gt;&lt;/p&gt;
&lt;p&gt;Un wrapper, au fond, c’est de la sous-location. Vous encaissez vos sous-locataires, vous reversez le gros du loyer au proprio, et vous priez pour qu’il ne se mette pas à louer en direct.&lt;/p&gt;
&lt;h2&gt;Je veux quand même que l’open source gagne&lt;/h2&gt;
&lt;p&gt;Alors oui, on est locataires, et le loyer va monter. Oui, le compute se paie, open weights ou pas. Mais je veux que l’open source gagne, et pas par nostalgie de bidouilleur. C’est mieux pour nous: une boîte qu’on peut ouvrir et faire tourner chez soi. C’est mieux pour la transparence: personne ne baisse le reasoning_effort en douce d’un modèle dont vous avez les poids. Et c’est mieux pour la facture: même cher, ça reste moins cher, parce que la taxe du propriétaire est la seule ligne qu’on peut encore refuser de payer.&lt;/p&gt;
&lt;p&gt;Restez locataires si le loyer vous va. Je paie le Max 20x tous les mois, et je le paierai probablement encore à 500. Mais je garde un double des clés sur mon disque: quatre modèles ouverts et un &lt;code&gt;systemctl start ollama&lt;/code&gt;, juste pour vérifier de temps en temps que la serrure tourne encore.&lt;/p&gt;
</content:encoded>
        </item>
    </channel>
</rss>
