<?xml version="1.0" encoding="UTF-8" ?>
<rss version="2.0">
<channel>
  <title>Riadh Mnasri · Tech Lead Freelance</title>
  <link>https://riadhmnasri.fr/fr/blog</link>
  <description>Tech lead freelance : architecture, IA appliquée au développement, systèmes complexes. Articles, portfolio de projets et notes.</description>
  <language>fr</language>
  <atom:link xmlns:atom="http://www.w3.org/2005/Atom" href="https://riadhmnasri.fr/fr/rss.xml" rel="self" type="application/rss+xml" />
    <item>
      <title>Agents qui tournent seuls : automatiser une tâche récurrente avec un agent planifié</title>
      <link>https://riadhmnasri.fr/fr/blog/agents-planifies-automatiser-une-tache-recurrente</link>
      <guid>https://riadhmnasri.fr/fr/blog/agents-planifies-automatiser-une-tache-recurrente</guid>
      <description>Faire tourner un agent sans supervision change la question qu&apos;on se pose : plus « est-ce que ça marche », mais « qu&apos;est-ce qui se passe le jour où ça ne marche pas ».</description>
      <pubDate>Thu, 13 Aug 2026 00:00:00 GMT</pubDate>
    </item>
    <item>
      <title>Construire son propre Skill : de l&apos;idée à la commande slash réutilisable</title>
      <link>https://riadhmnasri.fr/fr/blog/construire-son-propre-skill-claude-code</link>
      <guid>https://riadhmnasri.fr/fr/blog/construire-son-propre-skill-claude-code</guid>
      <description>Un skill mal écrit ne se déclenche jamais. Voici la méthode que j&apos;utilise pour transformer une habitude répétée en commande fiable.</description>
      <pubDate>Wed, 12 Aug 2026 00:00:00 GMT</pubDate>
    </item>
    <item>
      <title>Thread dump : utilité, comment faire, différence avec un heap dump</title>
      <link>https://riadhmnasri.fr/fr/blog/thread-dump-utilite-comment-faire-difference-avec-heap-dump</link>
      <guid>https://riadhmnasri.fr/fr/blog/thread-dump-utilite-comment-faire-difference-avec-heap-dump</guid>
      <description>Un thread dump ne montre pas ce que contient la mémoire, il montre ce que chaque thread est en train de faire, ou d&apos;attendre. C&apos;est l&apos;outil pour un blocage, pas pour une fuite.</description>
      <pubDate>Tue, 11 Aug 2026 00:00:00 GMT</pubDate>
    </item>
    <item>
      <title>Investiguer un blocage JVM avec un heap dump : générer, lire, résoudre</title>
      <link>https://riadhmnasri.fr/fr/blog/investiguer-un-blocage-jvm-avec-un-heap-dump</link>
      <guid>https://riadhmnasri.fr/fr/blog/investiguer-un-blocage-jvm-avec-un-heap-dump</guid>
      <description>Un composant qui se bloque n&apos;est pas toujours un problème de mémoire, et un heap dump n&apos;est pas toujours le bon outil. Voici comment savoir lequel utiliser, et comment le lire correctement une fois qu&apos;on l&apos;a.</description>
      <pubDate>Mon, 10 Aug 2026 00:00:00 GMT</pubDate>
    </item>
    <item>
      <title>Organiser un coding dojo : choisir un kata et le dérouler en TDD</title>
      <link>https://riadhmnasri.fr/fr/blog/organiser-un-coding-dojo-choisir-un-kata-et-le-derouler-en-tdd</link>
      <guid>https://riadhmnasri.fr/fr/blog/organiser-un-coding-dojo-choisir-un-kata-et-le-derouler-en-tdd</guid>
      <description>Un dojo n&apos;est pas une réunion pour livrer du code, c&apos;est une séance pour observer comment on code. Le format et le choix du kata déterminent si cette distinction tient ou s&apos;effondre.</description>
      <pubDate>Sun, 09 Aug 2026 00:00:00 GMT</pubDate>
    </item>
    <item>
      <title>Ce que mon MBA à Polytechnique m&apos;a appris sur la transformation numérique</title>
      <link>https://riadhmnasri.fr/fr/blog/ce-que-mon-mba-a-polytechnique-m-a-appris</link>
      <guid>https://riadhmnasri.fr/fr/blog/ce-que-mon-mba-a-polytechnique-m-a-appris</guid>
      <description>Vingt ans de code apprennent à construire un système. Le programme Stratège de la Transformation Numérique m&apos;a appris à décider lequel construire, et pourquoi.</description>
      <pubDate>Sat, 08 Aug 2026 00:00:00 GMT</pubDate>
    </item>
    <item>
      <title>Les appariements suisses : l&apos;algorithme derrière l&apos;équité d&apos;un tournoi</title>
      <link>https://riadhmnasri.fr/fr/blog/les-appariements-suisses-lalgorithme-derriere-lequite-dun-tournoi</link>
      <guid>https://riadhmnasri.fr/fr/blog/les-appariements-suisses-lalgorithme-derriere-lequite-dun-tournoi</guid>
      <description>Ni un round-robin qui ne finirait jamais, ni une élimination directe qui écarte la moitié des joueurs après une seule mauvaise partie : le système suisse résout un vrai problème d&apos;appariement.</description>
      <pubDate>Thu, 06 Aug 2026 00:00:00 GMT</pubDate>
    </item>
    <item>
      <title>Sealed classes : modéliser un ensemble fini de cas sans if/else en cascade</title>
      <link>https://riadhmnasri.fr/fr/blog/sealed-classes-modeliser-un-ensemble-fini-de-cas</link>
      <guid>https://riadhmnasri.fr/fr/blog/sealed-classes-modeliser-un-ensemble-fini-de-cas</guid>
      <description>Une sealed class ne remplace pas juste un enum : elle transforme un oubli de cas en erreur de compilation plutôt qu&apos;en bug découvert en production.</description>
      <pubDate>Wed, 05 Aug 2026 00:00:00 GMT</pubDate>
    </item>
    <item>
      <title>Apache Spark sur Kubernetes et Azure pour le calcul d&apos;indicateurs de risque</title>
      <link>https://riadhmnasri.fr/fr/blog/apache-spark-sur-kubernetes-et-azure-pour-le-calcul-de-risque</link>
      <guid>https://riadhmnasri.fr/fr/blog/apache-spark-sur-kubernetes-et-azure-pour-le-calcul-de-risque</guid>
      <description>Simuler des milliers de scénarios de marché sur tout un portefeuille, chaque nuit, avant l&apos;ouverture des marchés : le genre de contrainte qui justifie vraiment Spark sur Kubernetes.</description>
      <pubDate>Tue, 04 Aug 2026 00:00:00 GMT</pubDate>
    </item>
    <item>
      <title>Optimiser sa consommation de tokens avec Claude Code et Copilot : ce qui marche vraiment</title>
      <link>https://riadhmnasri.fr/fr/blog/optimiser-sa-consommation-de-tokens-avec-claude-et-copilot</link>
      <guid>https://riadhmnasri.fr/fr/blog/optimiser-sa-consommation-de-tokens-avec-claude-et-copilot</guid>
      <description>Le token n&apos;est pas qu&apos;une question de facture API : un contexte mal géré dégrade aussi la qualité des réponses. Les techniques qui font une vraie différence, au quotidien.</description>
      <pubDate>Mon, 03 Aug 2026 00:00:00 GMT</pubDate>
    </item>
    <item>
      <title>Kubernetes au quotidien pour un développeur Java : ce qui compte vraiment</title>
      <link>https://riadhmnasri.fr/fr/blog/kubernetes-au-quotidien-pour-un-developpeur-java</link>
      <guid>https://riadhmnasri.fr/fr/blog/kubernetes-au-quotidien-pour-un-developpeur-java</guid>
      <description>Pas une introduction à kubectl, mais les points où Kubernetes et la JVM se frottent l&apos;un à l&apos;autre, en GCP, Azure et AWS.</description>
      <pubDate>Sun, 02 Aug 2026 00:00:00 GMT</pubDate>
    </item>
    <item>
      <title>Faire du vrai TDD avec Claude Code : l&apos;étape qu&apos;il ne faut jamais sauter</title>
      <link>https://riadhmnasri.fr/fr/blog/faire-du-vrai-tdd-avec-claude-code</link>
      <guid>https://riadhmnasri.fr/fr/blog/faire-du-vrai-tdd-avec-claude-code</guid>
      <description>Le TDD n&apos;est pas &apos;écrire des tests d&apos;abord&apos;. C&apos;est un cycle précis, avec des techniques précises, que l&apos;IA rend à la fois plus facile à suivre et plus facile à trahir sans s&apos;en rendre compte.</description>
      <pubDate>Sat, 01 Aug 2026 00:00:00 GMT</pubDate>
    </item>
    <item>
      <title>Fixer son TJM : la méthode au-delà de la calculette</title>
      <link>https://riadhmnasri.fr/fr/blog/fixer-son-tjm-la-methode-au-dela-de-la-calculette</link>
      <guid>https://riadhmnasri.fr/fr/blog/fixer-son-tjm-la-methode-au-dela-de-la-calculette</guid>
      <description>Un TJM ne se choisit pas en regardant la moyenne du marché. Il se construit à partir de ce qu&apos;il doit couvrir, poste par poste.</description>
      <pubDate>Fri, 31 Jul 2026 00:00:00 GMT</pubDate>
    </item>
    <item>
      <title>VaR (Value at Risk) : ce qu&apos;elle mesure, et surtout ce qu&apos;elle ne mesure pas</title>
      <link>https://riadhmnasri.fr/fr/blog/var-value-at-risk-ce-quelle-mesure-et-ce-quelle-ne-mesure-pas</link>
      <guid>https://riadhmnasri.fr/fr/blog/var-value-at-risk-ce-quelle-mesure-et-ce-quelle-ne-mesure-pas</guid>
      <description>La métrique de risque de marché la plus utilisée en banque est aussi l&apos;une des plus mal comprises, y compris par certains de ceux qui la citent.</description>
      <pubDate>Thu, 30 Jul 2026 00:00:00 GMT</pubDate>
    </item>
    <item>
      <title>Schema registry : versionner un message Kafka sans casser les consommateurs existants</title>
      <link>https://riadhmnasri.fr/fr/blog/schema-registry-versionner-kafka-sans-casser</link>
      <guid>https://riadhmnasri.fr/fr/blog/schema-registry-versionner-kafka-sans-casser</guid>
      <description>Un topic Kafka découple les services, mais le format du message reste un contrat implicite. Le schema registry le rend explicite et vérifiable.</description>
      <pubDate>Wed, 29 Jul 2026 00:00:00 GMT</pubDate>
    </item>
    <item>
      <title>Comment j&apos;ai construit ce blog avec Claude Code</title>
      <link>https://riadhmnasri.fr/fr/blog/comment-jai-construit-ce-blog-avec-claude-code</link>
      <guid>https://riadhmnasri.fr/fr/blog/comment-jai-construit-ce-blog-avec-claude-code</guid>
      <description>Un exercice de transparence : ce site a été conçu, redesigné plusieurs fois et rempli de contenu en conversation avec Claude Code.</description>
      <pubDate>Tue, 28 Jul 2026 00:00:00 GMT</pubDate>
    </item>
    <item>
      <title>L&apos;architecture hexagonale en pratique</title>
      <link>https://riadhmnasri.fr/fr/blog/architecture-hexagonale-en-pratique</link>
      <guid>https://riadhmnasri.fr/fr/blog/architecture-hexagonale-en-pratique</guid>
      <description>Pourquoi isoler le domaine métier des frameworks change la façon dont on conçoit et teste un système.</description>
      <pubDate>Mon, 27 Jul 2026 00:00:00 GMT</pubDate>
    </item>
    <item>
      <title>L&apos;IA n&apos;est pas un générateur de code, c&apos;est un partenaire de réflexion</title>
      <link>https://riadhmnasri.fr/fr/blog/ia-partenaire-de-reflexion</link>
      <guid>https://riadhmnasri.fr/fr/blog/ia-partenaire-de-reflexion</guid>
      <description>Après plus de 20 ans de développement, ce n&apos;est pas l&apos;IA qui a changé ma façon de coder, mais la façon dont je la questionne.</description>
      <pubDate>Mon, 20 Jul 2026 00:00:00 GMT</pubDate>
    </item>
    <item>
      <title>Agent, harnais, skills, hooks : quatre concepts qu&apos;on confond</title>
      <link>https://riadhmnasri.fr/fr/blog/agent-harnais-skills-hooks</link>
      <guid>https://riadhmnasri.fr/fr/blog/agent-harnais-skills-hooks</guid>
      <description>On parle beaucoup d&apos;agents IA en ce moment, mais on mélange souvent quatre notions bien distinctes.</description>
      <pubDate>Wed, 15 Jul 2026 00:00:00 GMT</pubDate>
    </item>
    <item>
      <title>Développeur augmenté : ce que Claude Code change concrètement au quotidien</title>
      <link>https://riadhmnasri.fr/fr/blog/developpeur-augmente-claude-code</link>
      <guid>https://riadhmnasri.fr/fr/blog/developpeur-augmente-claude-code</guid>
      <description>Quatre pratiques concrètes pour utiliser un outil CLI d&apos;IA de façon structurée, sûre et efficace, plutôt que de faire du vibe coding à l&apos;aveugle.</description>
      <pubDate>Fri, 10 Jul 2026 00:00:00 GMT</pubDate>
    </item>
    <item>
      <title>La documentation vivante : un Skill Claude qui se met à jour tout seul</title>
      <link>https://riadhmnasri.fr/fr/blog/documentation-vivante-skill-claude</link>
      <guid>https://riadhmnasri.fr/fr/blog/documentation-vivante-skill-claude</guid>
      <description>Le problème n&apos;était pas la volonté de l&apos;équipe, mais le coût de la mise à jour manuelle. Voici comment un Skill Claude a changé ça.</description>
      <pubDate>Thu, 25 Jun 2026 00:00:00 GMT</pubDate>
    </item>
    <item>
      <title>Le risque de contrepartie, expliqué à un développeur</title>
      <link>https://riadhmnasri.fr/fr/blog/risque-de-contrepartie-explique-a-un-developpeur</link>
      <guid>https://riadhmnasri.fr/fr/blog/risque-de-contrepartie-explique-a-un-developpeur</guid>
      <description>Un concept de finance de marché qui se comprend mieux avec des mots de tech qu&apos;avec des formules.</description>
      <pubDate>Mon, 15 Jun 2026 00:00:00 GMT</pubDate>
    </item>
    <item>
      <title>Pourquoi le TDD n&apos;est pas une option quand on livre vite</title>
      <link>https://riadhmnasri.fr/fr/blog/tdd-sous-pression-de-deadline</link>
      <guid>https://riadhmnasri.fr/fr/blog/tdd-sous-pression-de-deadline</guid>
      <description>L&apos;intuition la plus répandue sur le TDD est aussi la plus fausse : qu&apos;il ralentit quand on est pressé.</description>
      <pubDate>Thu, 28 May 2026 00:00:00 GMT</pubDate>
    </item>
    <item>
      <title>Pourquoi Kotlin reste mon langage JVM de prédilection</title>
      <link>https://riadhmnasri.fr/fr/blog/pourquoi-kotlin-reste-mon-langage-jvm-prefere</link>
      <guid>https://riadhmnasri.fr/fr/blog/pourquoi-kotlin-reste-mon-langage-jvm-prefere</guid>
      <description>Trois projets différents (une app de révision, une lib de risque de contrepartie, un moteur de tournoi) partagent le même choix de langage, et ce n&apos;est pas un hasard.</description>
      <pubDate>Tue, 05 May 2026 00:00:00 GMT</pubDate>
    </item>
    <item>
      <title>La répétition espacée : ce que l&apos;algorithme de Leitner apprend sur la structure des données</title>
      <link>https://riadhmnasri.fr/fr/blog/repetition-espacee-leitner-structure-de-donnees</link>
      <guid>https://riadhmnasri.fr/fr/blog/repetition-espacee-leitner-structure-de-donnees</guid>
      <description>Kortex, Kafkex, Vocably, Lingopack : quatre apps différentes, un seul moteur de révision. Ce qui rend ce problème intéressant à modéliser.</description>
      <pubDate>Sun, 05 Apr 2026 00:00:00 GMT</pubDate>
    </item>
    <item>
      <title>Faire tourner Stockfish dans le navigateur : ce que WebAssembly change</title>
      <link>https://riadhmnasri.fr/fr/blog/stockfish-dans-le-navigateur-ce-que-wasm-change</link>
      <guid>https://riadhmnasri.fr/fr/blog/stockfish-dans-le-navigateur-ce-que-wasm-change</guid>
      <description>Sur OpeningBook, l&apos;analyse d&apos;échecs tourne entièrement côté client. Ce que ça implique concrètement, au-delà du buzzword WASM.</description>
      <pubDate>Sun, 01 Mar 2026 00:00:00 GMT</pubDate>
    </item>
    <item>
      <title>Event-driven avec Kafka : ce qu&apos;on gagne, et ce qu&apos;on perd</title>
      <link>https://riadhmnasri.fr/fr/blog/event-driven-avec-kafka-ce-quon-gagne-et-ce-quon-perd</link>
      <guid>https://riadhmnasri.fr/fr/blog/event-driven-avec-kafka-ce-quon-gagne-et-ce-quon-perd</guid>
      <description>Découpler des services via des événements résout de vrais problèmes de couplage, mais en introduit d&apos;autres, moins visibles au début.</description>
      <pubDate>Tue, 10 Feb 2026 00:00:00 GMT</pubDate>
    </item>
    <item>
      <title>Commencer et apprendre Terraform : ce qui n&apos;est pas dans le tutoriel</title>
      <link>https://riadhmnasri.fr/fr/blog/commencer-et-apprendre-terraform</link>
      <guid>https://riadhmnasri.fr/fr/blog/commencer-et-apprendre-terraform</guid>
      <description>Écrire un bloc de ressource est facile. Ce qui prend du temps à comprendre, c&apos;est le state et pourquoi il est le vrai sujet de Terraform.</description>
      <pubDate>Thu, 15 Jan 2026 00:00:00 GMT</pubDate>
    </item>
</channel>
</rss>