<?xml version="1.0" encoding="utf-8" standalone="yes"?>
<rss version="2.0" xmlns:atom="http://www.w3.org/2005/Atom">
  <channel>
    <title>Leo Mata</title>
    <link>https://leomata.com/</link>
    <description>Recent content on Leo Mata</description>
    <generator>Hugo</generator>
    <language>en-us</language>
    <lastBuildDate>Sat, 27 Jun 2026 10:00:00 +0000</lastBuildDate>
    <atom:link href="https://leomata.com/index.xml" rel="self" type="application/rss+xml" />
    <item>
      <title>Testing Email Delivery for Passwordless Sign-In</title>
      <link>https://leomata.com/blog/passwordless-auth-email-delivery/</link>
      <pubDate>Sat, 27 Jun 2026 10:00:00 +0000</pubDate>
      <guid>https://leomata.com/blog/passwordless-auth-email-delivery/</guid>
      <description>We were adding passwordless sign-in to a client&amp;rsquo;s mobile and web app. Instead of a password, the user receives a sign-in link or a short code by email and enters it. It removes a stored credential and is usually fewer steps than a social login.&#xA;The approach depends on the email being delivered. The code has to reach the user&amp;rsquo;s actual mailbox. A send that the mail provider accepts is not the same as a message the user receives, and if the code does not arrive, the user cannot log in.</description>
    </item>
    <item>
      <title>BROCS: The OS for Enterprise AI</title>
      <link>https://leomata.com/blog/brocs/</link>
      <pubDate>Sat, 23 May 2026 10:00:00 -0400</pubDate>
      <guid>https://leomata.com/blog/brocs/</guid>
      <description>I was sitting with a friend who runs engineering at a healthtech startup, big name, redacted. PHI on the line, audit obligations, the kind of company where a wrong move means a press release no one wants to write. He had been working through the AI tooling market for a few weeks, evaluating what was available against what his organization actually needed. Each option solved a piece. None gave him a coherent answer for the whole.</description>
    </item>
    <item>
      <title>It Shipped: Cynefin Diagrams in Mermaid</title>
      <link>https://leomata.com/blog/cynefin-shipped/</link>
      <pubDate>Wed, 06 May 2026 12:00:00 +0000</pubDate>
      <guid>https://leomata.com/blog/cynefin-shipped/</guid>
      <description>PR #7535 merged today. Mermaid now has a Cynefin framework diagram type, the first text-based DSL for Cynefin diagrams anywhere.&#xA;This post wraps up the series. Eight months, eight posts, two diagram implementations, one merged PR, and a lot of lessons about how open source actually works.&#xA;If you&amp;rsquo;re not familiar with the Cynefin framework, I wrote a full introduction earlier in this series. The short version: it&amp;rsquo;s a sense-making model that helps you decide how to decide, by categorizing problems into five domains based on the relationship between cause and effect.</description>
    </item>
    <item>
      <title>Cynefin: A Framework for Thinking About Thinking</title>
      <link>https://leomata.com/blog/cynefin-101/</link>
      <pubDate>Sun, 05 Apr 2026 10:00:00 +0000</pubDate>
      <guid>https://leomata.com/blog/cynefin-101/</guid>
      <description>At the end of the last post, I said I was building Cynefin diagram support for Mermaid next. Before I get into the implementation, I want to talk about the framework itself, because it deserves a proper introduction.&#xA;How I Found Cynefin Years ago at the Wikimedia Foundation, my Director introduced me to the Cynefin framework. He used it to map and manage the complexity of the ecosystems we operated in: infrastructure serving billions of requests, volunteer communities with their own dynamics, legacy systems interacting with bleeding-edge deployments.</description>
    </item>
    <item>
      <title>Building Wardley Maps for Mermaid: A Race I Didn&#39;t Know I Was Running</title>
      <link>https://leomata.com/blog/wardley-maps-the-race/</link>
      <pubDate>Thu, 26 Mar 2026 20:00:00 +0000</pubDate>
      <guid>https://leomata.com/blog/wardley-maps-the-race/</guid>
      <description>I spent the better part of three weekends building a complete Wardley Map diagram type for mermaid-js, the popular text-to-diagram library. It was thorough. It was modular. It was tested. And by the time I opened the PR, someone else had already merged theirs.&#xA;Here&amp;rsquo;s what happened, and why I&amp;rsquo;d do it all again.&#xA;Why Wardley Maps? If you&amp;rsquo;re not familiar, Wardley Maps are strategy diagrams created by Simon Wardley. They plot components of a value chain along two axes: visibility (how visible something is to the user) and evolution (how mature something is, from genesis to commodity).</description>
    </item>
    <item>
      <title>IDEA → Live Product. Everything Else Is Noise.</title>
      <link>https://leomata.com/blog/what-is-a-software-factory/</link>
      <pubDate>Wed, 25 Mar 2026 10:00:00 +0000</pubDate>
      <guid>https://leomata.com/blog/what-is-a-software-factory/</guid>
      <description>There is one metric that matters in software: did the idea ship as a live, running product?&#xA;Not a prototype. Not a demo. Not a repository with a promising README. A working system, deployed, used. Everything else is work in progress.&#xA;This sounds obvious. It isn&amp;rsquo;t. Most of the industry is optimizing for the wrong things — generating code faster, writing tests automatically, producing documentation on demand. These are useful. They are not the goal.</description>
    </item>
    <item>
      <title>What&#39;s Next: Regions, Cynefin, and Beyond</title>
      <link>https://leomata.com/blog/wardley-mermaid-next-steps/</link>
      <pubDate>Tue, 25 Nov 2025 10:00:00 +0000</pubDate>
      <guid>https://leomata.com/blog/wardley-mermaid-next-steps/</guid>
      <description>The Wardley Map PR is in draft, working through code review. Here&amp;rsquo;s what&amp;rsquo;s on the roadmap once the core implementation lands.&#xA;Immediate Priority: Regions The most requested Wardley Map feature. Regions let you group components into market segments, organizational boundaries, or areas of focus:&#xA;wardleyMap title Platform Strategy region &amp;#34;Core Platform&amp;#34; [0.3, 0.4, 0.8, 0.9] region &amp;#34;Partner Ecosystem&amp;#34; [0.1, 0.2, 0.7, 0.4] component api &amp;#34;API&amp;#34; [0.5, 0.7] component db &amp;#34;Database&amp;#34; [0.</description>
    </item>
    <item>
      <title>Deep Dive: Anatomy of a Mermaid Diagram Type</title>
      <link>https://leomata.com/blog/wardley-mermaid-deep-dive/</link>
      <pubDate>Sat, 22 Nov 2025 10:00:00 +0000</pubDate>
      <guid>https://leomata.com/blog/wardley-mermaid-deep-dive/</guid>
      <description>For those curious about the internals, here&amp;rsquo;s how a Mermaid diagram type comes together. This is the architecture I followed to build Wardley Map support.&#xA;The Stack Input (DSL) → Langium Grammar → Parser → AST → Database → Renderer → SVG Each layer has a specific job. Data flows one direction. No layer reaches back into a previous one. Let&amp;rsquo;s walk through them.&#xA;Layer 1: Grammar The grammar file defines what&amp;rsquo;s valid syntax.</description>
    </item>
    <item>
      <title>Building the PR</title>
      <link>https://leomata.com/blog/building-the-pr/</link>
      <pubDate>Mon, 17 Nov 2025 10:00:00 +0000</pubDate>
      <guid>https://leomata.com/blog/building-the-pr/</guid>
      <description>Time to actually build Wardley Map support for Mermaid. Here&amp;rsquo;s the journey from &amp;ldquo;I should do this&amp;rdquo; to a working PR.&#xA;Understanding the Codebase Mermaid is a mature project—70k+ stars, hundreds of contributors, years of history. Before writing code, I spent time understanding:&#xA;How existing diagram types are structured: Each diagram type lives in packages/mermaid/src/diagrams/{type}/ The Langium-based parser architecture: Grammar files in packages/parser/src/language/ The rendering pipeline: Parse → Database → Renderer → SVG The test patterns: Unit tests, integration tests, visual regression tests The Pie, Packet, and Architecture diagrams all follow the modern Langium pattern.</description>
    </item>
    <item>
      <title>Why Mermaid</title>
      <link>https://leomata.com/blog/why-mermaid/</link>
      <pubDate>Wed, 12 Nov 2025 10:00:00 +0000</pubDate>
      <guid>https://leomata.com/blog/why-mermaid/</guid>
      <description>I could have built a standalone Wardley Map library. Or a VSCode extension. Or yet another web app.&#xA;I chose to contribute to Mermaid instead. Here&amp;rsquo;s why.&#xA;GitHub Native Mermaid is built into GitHub markdown rendering. Write a fenced code block with mermaid, and it just renders. No extensions. No build steps. No external services.&#xA;```mermaid flowchart LR A[Start] --&amp;gt; B[End] That&amp;#39;s the dream: strategic diagrams that live in your README, your ADRs, your planning docs.</description>
    </item>
    <item>
      <title>The Missing Diagram</title>
      <link>https://leomata.com/blog/the-missing-diagram/</link>
      <pubDate>Fri, 07 Nov 2025 10:00:00 +0000</pubDate>
      <guid>https://leomata.com/blog/the-missing-diagram/</guid>
      <description>So I wanted Wardley Maps in my workflow. Native. Version-controlled. In markdown. Living alongside my code and documentation.&#xA;The options were&amp;hellip; limited.&#xA;What Exists Today I spent a weekend evaluating every Wardley Map tool I could find:&#xA;OnlineWardleyMaps: The gold standard for web-based mapping. Great UI, good export options. But it&amp;rsquo;s a separate app—you create maps there, export images, paste them into docs. They become stale immediately. No version control. No diffs.</description>
    </item>
    <item>
      <title>Wardley Mapping: Strategy Made Visual</title>
      <link>https://leomata.com/blog/wardley-mapping-101/</link>
      <pubDate>Sun, 02 Nov 2025 10:00:00 +0000</pubDate>
      <guid>https://leomata.com/blog/wardley-mapping-101/</guid>
      <description>I&amp;rsquo;ve been using Wardley Maps to think through strategy for Calliope AI, and I&amp;rsquo;m convinced more people should know about this tool. It&amp;rsquo;s changed how I approach technical strategy, and I want to bring it to more engineers.&#xA;What is a Wardley Map? Created by Simon Wardley, it&amp;rsquo;s a visual way to map out your value chain and understand where things are headed. The map has two axes:&#xA;Y-axis (Visibility): From infrastructure at the bottom to user-facing needs at the top.</description>
    </item>
    <item>
      <title></title>
      <link>https://leomata.com/drafts/linkedin-cynefin-shipped/</link>
      <pubDate>Mon, 01 Jan 0001 00:00:00 +0000</pubDate>
      <guid>https://leomata.com/drafts/linkedin-cynefin-shipped/</guid>
      <description>Cynefin diagrams now have a text-based DSL in Mermaid, for the first time!&#xA;A friend introduced me to the Cynefin framework as a tool to map and manage complexity. I&amp;rsquo;m in no way an expert, but the bits I&amp;rsquo;ve picked up have changed how I think about problems, and I became a big fan.&#xA;The Cynefin framework, created by Dave Snowden, is a conceptual sense-making model used to help identify the nature of a situation and determine the most appropriate approach to problem-solving.</description>
    </item>
    <item>
      <title></title>
      <link>https://leomata.com/drafts/linkedin-passwordless-email-delivery/</link>
      <pubDate>Mon, 01 Jan 0001 00:00:00 +0000</pubDate>
      <guid>https://leomata.com/drafts/linkedin-passwordless-email-delivery/</guid>
      <description>Passwordless sign-in is only as reliable as your email delivery.&#xA;We&amp;rsquo;ve been adding email-based sign-in to a client&amp;rsquo;s app: a link or a code instead of a password. It is a good user experience, and it moves your login reliability onto one thing, email actually being delivered. If the message does not arrive, the user cannot get in.&#xA;For the major mailbox providers we can test directly, because we keep accounts and can open them.</description>
    </item>
  </channel>
</rss>
