<?xml version="1.0" encoding="UTF-8" ?>
<rss version="2.0">
  <channel>
    <title>Ben Morin</title>
    <description>Writing and notes by Ben Morin on building products, interfaces and practice.</description>
    <link>https://bemorin.com/</link>
    <language>en</language>
    <lastBuildDate>Mon, 26 Oct 2026 13:25:33 GMT</lastBuildDate>
    <item>
      <title>A Practical Introduction to LLM Orchestration, Vector Databases, and AI Agents</title>
      <description>How orchestration, vector databases, retrieval, and agentic systems fit together when an LLM needs memory, tools, and reliable application logic.</description>
      <link>https://bemorin.com/writing/llm-orchestration-vector-databases-and-ai-agents</link>
      <guid isPermaLink="true">https://bemorin.com/writing/llm-orchestration-vector-databases-and-ai-agents</guid>
      <pubDate>Tue, 11 Aug 2026 00:00:00 GMT</pubDate>
    </item>
<item>
      <title>How to Build Reliable LLM Workflows</title>
      <description>A practical blueprint for decomposing LLM tasks, managing context, enforcing structured outputs, designing for latency, and building evals early.</description>
      <link>https://bemorin.com/writing/how-to-build-reliable-llm-workflows</link>
      <guid isPermaLink="true">https://bemorin.com/writing/how-to-build-reliable-llm-workflows</guid>
      <pubDate>Tue, 11 Aug 2026 00:00:00 GMT</pubDate>
    </item>
<item>
      <title>How I run this site without a CMS database or mail server</title>
      <description>A small publishing stack built around Astro, GitHub, Cloudflare Pages, Pages CMS, Cloudflare Email Routing, Gmail, and Resend.</description>
      <link>https://bemorin.com/writing/how-i-run-this-site-without-a-cms-database-or-mail-server</link>
      <guid isPermaLink="true">https://bemorin.com/writing/how-i-run-this-site-without-a-cms-database-or-mail-server</guid>
      <pubDate>Mon, 10 Aug 2026 00:00:00 GMT</pubDate>
    </item>
<item>
      <title>How the Notes page stays fast with hundreds of entries</title>
      <description>How I built an Almanack-style notes archive with windowed batches, placeholders, deep-linked reading modals, sticky search, and bounded DOM size.</description>
      <link>https://bemorin.com/writing/how-the-notes-page-stays-fast-with-hundreds-of-entries</link>
      <guid isPermaLink="true">https://bemorin.com/writing/how-the-notes-page-stays-fast-with-hundreds-of-entries</guid>
      <pubDate>Mon, 10 Aug 2026 00:00:00 GMT</pubDate>
    </item>
<item>
      <title>CHALLENGES: a personal framework for values</title>
      <description>Why I built the C.H.A.L.L.E.N.G.E.S. framework in 2016, the books and historical ideas behind it, and how I try to turn values into behavior.</description>
      <link>https://bemorin.com/writing/challenges-a-personal-framework-for-values</link>
      <guid isPermaLink="true">https://bemorin.com/writing/challenges-a-personal-framework-for-values</guid>
      <pubDate>Sat, 08 Aug 2026 00:00:00 GMT</pubDate>
    </item>
<item>
      <title>DuckPad: designing a local-first data workspace around DuckDB-Wasm</title>
      <description>The architecture and performance reasoning behind a browser-based workspace for inspecting unfamiliar data files locally.</description>
      <link>https://bemorin.com/writing/duckpad-local-first-data-workspace-duckdb-wasm</link>
      <guid isPermaLink="true">https://bemorin.com/writing/duckpad-local-first-data-workspace-duckdb-wasm</guid>
      <pubDate>Fri, 07 Aug 2026 00:00:00 GMT</pubDate>
    </item>
<item>
      <title>LocalCMP: what a local-first consent architecture actually changes</title>
      <description>A technical look at a consent-management prototype built around local signed choices, a public manifest, deterministic audits, and explicit limits.</description>
      <link>https://bemorin.com/writing/localcmp-local-first-consent-infrastructure</link>
      <guid isPermaLink="true">https://bemorin.com/writing/localcmp-local-first-consent-infrastructure</guid>
      <pubDate>Fri, 07 Aug 2026 00:00:00 GMT</pubDate>
    </item>
<item>
      <title>What remains after thought</title>
      <description>Simplicity is not the absence of thought. It is what remains after thought has done its work.</description>
      <link>https://bemorin.com/notes/2026-08-06</link>
      <guid isPermaLink="true">https://bemorin.com/notes/2026-08-06</guid>
      <pubDate>Thu, 06 Aug 2026 00:00:00 GMT</pubDate>
    </item>
<item>
      <title>A better way to build discipline (inspired by Franklin)</title>
      <description>Why visibility beats willpower: Franklin&apos;s 13 virtues, daily checkpoints, and practical guardrails for turning intention into a system.</description>
      <link>https://bemorin.com/writing/how-benjamin-franklin-built-a-virtue-system-for-real-life</link>
      <guid isPermaLink="true">https://bemorin.com/writing/how-benjamin-franklin-built-a-virtue-system-for-real-life</guid>
      <pubDate>Wed, 05 Aug 2026 00:00:00 GMT</pubDate>
    </item>
<item>
      <title>Challenge funnel: turn personal projects into qualified leads (without paid ads)</title>
      <description>How to design public challenges that showcase your projects, build trust, and convert attention into qualified leads.</description>
      <link>https://bemorin.com/writing/challenge-funnel-turn-personal-projects-into-leads</link>
      <guid isPermaLink="true">https://bemorin.com/writing/challenge-funnel-turn-personal-projects-into-leads</guid>
      <pubDate>Wed, 05 Aug 2026 00:00:00 GMT</pubDate>
    </item>
<item>
      <title>CSS container queries in production: patterns that survived the hype</title>
      <description>Practical patterns for @container: when to use them, how to avoid layout thrash, and how they pair with design tokens.</description>
      <link>https://bemorin.com/writing/css-container-queries-production</link>
      <guid isPermaLink="true">https://bemorin.com/writing/css-container-queries-production</guid>
      <pubDate>Wed, 05 Aug 2026 00:00:00 GMT</pubDate>
    </item>
<item>
      <title>Editorial system in Notion or Coda: from idea to published, every week</title>
      <description>A complete editorial operations framework in Notion or Coda for planning, writing, review, publishing, and analytics.</description>
      <link>https://bemorin.com/writing/editorial-system-notion-coda</link>
      <guid isPermaLink="true">https://bemorin.com/writing/editorial-system-notion-coda</guid>
      <pubDate>Wed, 05 Aug 2026 00:00:00 GMT</pubDate>
    </item>
<item>
      <title>Free custom domain email: Cloudflare Email Routing + your favorite inbox + Brevo or Resend</title>
      <description>Create a free professional email address on your domain using Cloudflare Email Routing and your preferred sender stack.</description>
      <link>https://bemorin.com/writing/free-custom-domain-email-cloudflare-routing-brevo-resend</link>
      <guid isPermaLink="true">https://bemorin.com/writing/free-custom-domain-email-cloudflare-routing-brevo-resend</guid>
      <pubDate>Wed, 05 Aug 2026 00:00:00 GMT</pubDate>
    </item>
<item>
      <title>Free web hosting options and why buying only your domain first can save real money</title>
      <description>Best platforms for free web hosting and how to buy only your domain name at the best price before choosing hosting.</description>
      <link>https://bemorin.com/writing/free-web-hosting-and-domain-only-pricing-strategy</link>
      <guid isPermaLink="true">https://bemorin.com/writing/free-web-hosting-and-domain-only-pricing-strategy</guid>
      <pubDate>Wed, 05 Aug 2026 00:00:00 GMT</pubDate>
    </item>
<item>
      <title>Google Search Console: first technical steps after you ship</title>
      <description>Verify ownership, submit sitemaps, and read coverage after launch — without drowning in vanity metrics.</description>
      <link>https://bemorin.com/writing/search-console-seo-basics</link>
      <guid isPermaLink="true">https://bemorin.com/writing/search-console-seo-basics</guid>
      <pubDate>Wed, 05 Aug 2026 00:00:00 GMT</pubDate>
    </item>
<item>
      <title>How Stoicism improves decision-making, discipline, and execution for creators and entrepreneurs</title>
      <description>A practical guide to applying Stoicism in modern creator and entrepreneur workflows: better decisions, stronger discipline, and consistent execution.</description>
      <link>https://bemorin.com/writing/how-stoicism-improves-decision-discipline-execution</link>
      <guid isPermaLink="true">https://bemorin.com/writing/how-stoicism-improves-decision-discipline-execution</guid>
      <pubDate>Wed, 05 Aug 2026 00:00:00 GMT</pubDate>
    </item>
<item>
      <title>How to connect Astro with Notion or Coda for blog publishing, sync, and analytics</title>
      <description>How to connect an Astro site on GitHub or Cloudflare Pages with Notion or Coda for blog sync, analytics, and editorial workflow.</description>
      <link>https://bemorin.com/writing/astro-notion-coda-sync</link>
      <guid isPermaLink="true">https://bemorin.com/writing/astro-notion-coda-sync</guid>
      <pubDate>Wed, 05 Aug 2026 00:00:00 GMT</pubDate>
    </item>
<item>
      <title>How to create an AI ad video for your business with Suno, Banana, and Runway or Luma</title>
      <description>Step-by-step guide to creating a high-converting AI ad video for your business using Suno, prompt engineering, Banana or alternatives for frames, and Runway or Luma for motion.</description>
      <link>https://bemorin.com/writing/how-to-create-an-ai-ad-video-for-your-business-with-suno-and-runway-or-luma</link>
      <guid isPermaLink="true">https://bemorin.com/writing/how-to-create-an-ai-ad-video-for-your-business-with-suno-and-runway-or-luma</guid>
      <pubDate>Wed, 05 Aug 2026 00:00:00 GMT</pubDate>
    </item>
<item>
      <title>How to create an AI song gift with Suno and prompt engineering (step-by-step)</title>
      <description>A practical guide to creating a personal AI-generated music gift with Suno, including prompt engineering for lyrics, style, and emotional tone.</description>
      <link>https://bemorin.com/writing/how-to-create-an-ai-song-gift-with-suno-and-prompt-engineering</link>
      <guid isPermaLink="true">https://bemorin.com/writing/how-to-create-an-ai-song-gift-with-suno-and-prompt-engineering</guid>
      <pubDate>Wed, 05 Aug 2026 00:00:00 GMT</pubDate>
    </item>
<item>
      <title>How to Find a Brand Name and Check Availability (Without Leaking Your Idea)</title>
      <description>A privacy-first workflow to brainstorm brand names, validate domain and social availability, and run legal checks before launch.</description>
      <link>https://bemorin.com/writing/domain-name-availability-without-leaking-your-idea</link>
      <guid isPermaLink="true">https://bemorin.com/writing/domain-name-availability-without-leaking-your-idea</guid>
      <pubDate>Wed, 05 Aug 2026 00:00:00 GMT</pubDate>
    </item>
<item>
      <title>How to run multiple projects at once without burning out</title>
      <description>A practical operating system to run several projects at once, protect deep work, and avoid founder burnout.</description>
      <link>https://bemorin.com/writing/how-to-run-multiple-projects-without-burnout</link>
      <guid isPermaLink="true">https://bemorin.com/writing/how-to-run-multiple-projects-without-burnout</guid>
      <pubDate>Wed, 05 Aug 2026 00:00:00 GMT</pubDate>
    </item>
<item>
      <title>How to start Stoicism when you are impatient: simple actions for beginners</title>
      <description>Beginner-friendly Stoicism guide for impatient minds: simple mental models, daily actions, and practical habits you can apply in minutes.</description>
      <link>https://bemorin.com/writing/how-to-start-stoicism-when-you-are-impatient</link>
      <guid isPermaLink="true">https://bemorin.com/writing/how-to-start-stoicism-when-you-are-impatient</guid>
      <pubDate>Wed, 05 Aug 2026 00:00:00 GMT</pubDate>
    </item>
<item>
      <title>How to stay positive when someone you love faces hard challenges (without denying reality)</title>
      <description>Practical tools to stay emotionally steady when a loved one is struggling: realistic positivity, Duchenne smile cues, and daily support tactics.</description>
      <link>https://bemorin.com/writing/how-to-stay-positive-when-someone-you-love-faces-hard-challenges</link>
      <guid isPermaLink="true">https://bemorin.com/writing/how-to-stay-positive-when-someone-you-love-faces-hard-challenges</guid>
      <pubDate>Wed, 05 Aug 2026 00:00:00 GMT</pubDate>
    </item>
<item>
      <title>How Viktor Frankl&apos;s logotherapy helps you build a meaningful life (not just a successful one)</title>
      <description>A practical guide to Viktor Frankl&apos;s logotherapy: meaning, responsibility, and resilient action for everyday life and work.</description>
      <link>https://bemorin.com/writing/how-viktor-frankl-logotherapy-helps-you-build-a-meaningful-life</link>
      <guid isPermaLink="true">https://bemorin.com/writing/how-viktor-frankl-logotherapy-helps-you-build-a-meaningful-life</guid>
      <pubDate>Wed, 05 Aug 2026 00:00:00 GMT</pubDate>
    </item>
<item>
      <title>Minimal publishing stack for Astro: fast, reliable, and scalable</title>
      <description>A complete guide to build a high-performance Astro publishing stack with quality workflows and automation.</description>
      <link>https://bemorin.com/writing/minimal-publishing-stack-astro</link>
      <guid isPermaLink="true">https://bemorin.com/writing/minimal-publishing-stack-astro</guid>
      <pubDate>Wed, 05 Aug 2026 00:00:00 GMT</pubDate>
    </item>
<item>
      <title>Observability for static sites: logs, errors, and real user metrics that actually help</title>
      <description>Logs, client errors, edge analytics, and RUM for static frontends — a practical guide without turning your site into a microservices maze.</description>
      <link>https://bemorin.com/writing/observability-static-sites-practical-guide</link>
      <guid isPermaLink="true">https://bemorin.com/writing/observability-static-sites-practical-guide</guid>
      <pubDate>Wed, 05 Aug 2026 00:00:00 GMT</pubDate>
    </item>
<item>
      <title>RSS feeds with Astro: static generation and cache-friendly updates</title>
      <description>Generate RSS at build time with stable URLs, proper dates, and cache-friendly deployment on edge networks.</description>
      <link>https://bemorin.com/writing/rss-feed-astro-static-generation</link>
      <guid isPermaLink="true">https://bemorin.com/writing/rss-feed-astro-static-generation</guid>
      <pubDate>Wed, 05 Aug 2026 00:00:00 GMT</pubDate>
    </item>
<item>
      <title>Why Email Authentication Matters: SPF, DKIM, DMARC and the 1980s Legacy Behind Spoofing</title>
      <description>Why old email standards allow spoofing and how SPF, DKIM, and DMARC protect your domain reputation.</description>
      <link>https://bemorin.com/writing/email-authentication-spf-dkim-dmarc-anti-spoofing-guide</link>
      <guid isPermaLink="true">https://bemorin.com/writing/email-authentication-spf-dkim-dmarc-anti-spoofing-guide</guid>
      <pubDate>Wed, 05 Aug 2026 00:00:00 GMT</pubDate>
    </item>
<item>
      <title>Why personal branding matters even if you never start a business (career growth, trust, and human psychology)</title>
      <description>A practical, psychology-backed guide to personal branding for employees, leaders, and C-suite profiles who want more opportunities and trust.</description>
      <link>https://bemorin.com/writing/personal-brand-career-growth-psychology-guide</link>
      <guid isPermaLink="true">https://bemorin.com/writing/personal-brand-career-growth-psychology-guide</guid>
      <pubDate>Wed, 05 Aug 2026 00:00:00 GMT</pubDate>
    </item>
<item>
      <title>Why writing every day rewires your brain and your career (Stephen King, Hemingway, Victor Hugo + a modern 30-day challenge)</title>
      <description>A psychology-backed guide to daily writing: why it changes cognition, confidence, and career outcomes, with a practical 30-day book challenge protocol.</description>
      <link>https://bemorin.com/writing/why-writing-every-day-rewires-your-brain-and-career</link>
      <guid isPermaLink="true">https://bemorin.com/writing/why-writing-every-day-rewires-your-brain-and-career</guid>
      <pubDate>Wed, 05 Aug 2026 00:00:00 GMT</pubDate>
    </item>
<item>
      <title>Your Domain Search Isn&apos;t Private: How Bots Snatch Ideas in Minutes</title>
      <description>Understand domain front-running, why public lookups are risky, and how to check and buy domains safely before bots snipe your idea.</description>
      <link>https://bemorin.com/writing/your-domain-search-isnt-private-how-bots-snatch-ideas-in-minutes</link>
      <guid isPermaLink="true">https://bemorin.com/writing/your-domain-search-isnt-private-how-bots-snatch-ideas-in-minutes</guid>
      <pubDate>Wed, 05 Aug 2026 00:00:00 GMT</pubDate>
    </item>
<item>
      <title>Clarity over busyness</title>
      <description>A personal website should clarify the work, not perform busyness.</description>
      <link>https://bemorin.com/notes/2026-08-05</link>
      <guid isPermaLink="true">https://bemorin.com/notes/2026-08-05</guid>
      <pubDate>Wed, 05 Aug 2026 00:00:00 GMT</pubDate>
    </item>
<item>
      <title>The boundary between product and engineering</title>
      <description>The boundary between product and engineering between product and engineering is crossed often.</description>
      <link>https://bemorin.com/notes/2026-08-04</link>
      <guid isPermaLink="true">https://bemorin.com/notes/2026-08-04</guid>
      <pubDate>Tue, 04 Aug 2026 00:00:00 GMT</pubDate>
    </item>
<item>
      <title>The shortest path</title>
      <description>The best workflow is rarely the one with the most automation. It is the one that removes the most waiting, copying, checking, and explaining while keeping the important decision visible.</description>
      <link>https://bemorin.com/notes/2026-08-03</link>
      <guid isPermaLink="true">https://bemorin.com/notes/2026-08-03</guid>
      <pubDate>Mon, 03 Aug 2026 00:00:00 GMT</pubDate>
    </item>
<item>
      <title>Interfaces should explain themselves</title>
      <description>If an interface needs a paragraph beside every control, the problem is usually not the copy. The structure has not finished doing its job.</description>
      <link>https://bemorin.com/notes/2026-08-02</link>
      <guid isPermaLink="true">https://bemorin.com/notes/2026-08-02</guid>
      <pubDate>Sun, 02 Aug 2026 00:00:00 GMT</pubDate>
    </item>
<item>
      <title>Build the boring bridge</title>
      <description>Interesting technology gets attention. The boring bridge between two systems is often where the actual value lives.</description>
      <link>https://bemorin.com/notes/2026-08-01</link>
      <guid isPermaLink="true">https://bemorin.com/notes/2026-08-01</guid>
      <pubDate>Sat, 01 Aug 2026 00:00:00 GMT</pubDate>
    </item>
<item>
      <title>Friction is a map</title>
      <description>Repeated friction is information. The place where people keep making the same workaround is usually pointing at the next system worth building.</description>
      <link>https://bemorin.com/notes/2026-07-31</link>
      <guid isPermaLink="true">https://bemorin.com/notes/2026-07-31</guid>
      <pubDate>Fri, 31 Jul 2026 00:00:00 GMT</pubDate>
    </item>
<item>
      <title>A dashboard is not a decision</title>
      <description>More data does not automatically create more clarity. A good dashboard makes the next decision easier; everything else is decoration.</description>
      <link>https://bemorin.com/notes/2026-07-30</link>
      <guid isPermaLink="true">https://bemorin.com/notes/2026-07-30</guid>
      <pubDate>Thu, 30 Jul 2026 00:00:00 GMT</pubDate>
    </item>
<item>
      <title>Keep the human checkpoint</title>
      <description>Automate repetition aggressively. Keep a human checkpoint where context, taste, money, trust, or irreversible action enters the workflow.</description>
      <link>https://bemorin.com/notes/2026-07-29</link>
      <guid isPermaLink="true">https://bemorin.com/notes/2026-07-29</guid>
      <pubDate>Wed, 29 Jul 2026 00:00:00 GMT</pubDate>
    </item>
<item>
      <title>Small tools deserve good UX</title>
      <description>A utility used for thirty seconds can still waste ten of them. Small tools deserve the same care around defaults, states, errors, and feedback as larger products.</description>
      <link>https://bemorin.com/notes/2026-07-28</link>
      <guid isPermaLink="true">https://bemorin.com/notes/2026-07-28</guid>
      <pubDate>Tue, 28 Jul 2026 00:00:00 GMT</pubDate>
    </item>
<item>
      <title>The cost of one more field</title>
      <description>Every extra field in a form asks a visitor to stop, interpret, and decide. Sometimes that cost is justified. Most of the time it was added because the builder wanted more data.</description>
      <link>https://bemorin.com/notes/2026-07-27</link>
      <guid isPermaLink="true">https://bemorin.com/notes/2026-07-27</guid>
      <pubDate>Mon, 27 Jul 2026 00:00:00 GMT</pubDate>
    </item>
<item>
      <title>Proof beats adjectives</title>
      <description>Fast, intelligent, modern, seamless: none of those words are evidence. A working demo, a before-and-after number, or a visible system is.</description>
      <link>https://bemorin.com/notes/2026-07-26</link>
      <guid isPermaLink="true">https://bemorin.com/notes/2026-07-26</guid>
      <pubDate>Sun, 26 Jul 2026 00:00:00 GMT</pubDate>
    </item>
<item>
      <title>Maintenance is product work</title>
      <description>A pipeline that worked once is a prototype. A pipeline that tells you when it fails, can be replayed safely, and survives changing inputs is a product.</description>
      <link>https://bemorin.com/notes/2026-07-25</link>
      <guid isPermaLink="true">https://bemorin.com/notes/2026-07-25</guid>
      <pubDate>Sat, 25 Jul 2026 00:00:00 GMT</pubDate>
    </item>
<item>
      <title>Make the default safe</title>
      <description>The best safeguard is often not another warning. It is a default state that makes the dangerous or expensive action slightly harder to do by accident.</description>
      <link>https://bemorin.com/notes/2026-07-24</link>
      <guid isPermaLink="true">https://bemorin.com/notes/2026-07-24</guid>
      <pubDate>Fri, 24 Jul 2026 00:00:00 GMT</pubDate>
    </item>
<item>
      <title>Search is part of the interface</title>
      <description>Once a collection becomes large, navigation alone stops being enough. Search is not an accessory to the information architecture; it becomes part of it.</description>
      <link>https://bemorin.com/notes/2026-07-23</link>
      <guid isPermaLink="true">https://bemorin.com/notes/2026-07-23</guid>
      <pubDate>Thu, 23 Jul 2026 00:00:00 GMT</pubDate>
    </item>
<item>
      <title>A system should leave less behind</title>
      <description>Good automation does not merely move work somewhere else. It removes handoffs, duplicated state, and the need to remember what happens next.</description>
      <link>https://bemorin.com/notes/2026-07-22</link>
      <guid isPermaLink="true">https://bemorin.com/notes/2026-07-22</guid>
      <pubDate>Wed, 22 Jul 2026 00:00:00 GMT</pubDate>
    </item>
<item>
      <title>Write the constraint first</title>
      <description>Before choosing the stack, write down the constraint: speed, cost, reliability, privacy, portability, or maintenance. Architecture is easier when the trade-off is explicit.</description>
      <link>https://bemorin.com/notes/2026-07-21</link>
      <guid isPermaLink="true">https://bemorin.com/notes/2026-07-21</guid>
      <pubDate>Tue, 21 Jul 2026 00:00:00 GMT</pubDate>
    </item>
<item>
      <title>The quiet version is usually stronger</title>
      <description>When two interface ideas solve the same problem, the quieter one often ages better. Fewer surfaces means fewer places for hierarchy to become confused.</description>
      <link>https://bemorin.com/notes/2026-07-20</link>
      <guid isPermaLink="true">https://bemorin.com/notes/2026-07-20</guid>
      <pubDate>Mon, 20 Jul 2026 00:00:00 GMT</pubDate>
    </item>
<item>
      <title>Data needs a destination</title>
      <description>Collecting data without deciding where it will be used creates a museum. Start with the decision, workflow, or person that needs it, then work backward.</description>
      <link>https://bemorin.com/notes/2026-07-19</link>
      <guid isPermaLink="true">https://bemorin.com/notes/2026-07-19</guid>
      <pubDate>Sun, 19 Jul 2026 00:00:00 GMT</pubDate>
    </item>
<item>
      <title>Do not automate uncertainty</title>
      <description>A broken manual process does not become a good process because it runs automatically. Clarify the rule first; automate it second.</description>
      <link>https://bemorin.com/notes/2026-07-18</link>
      <guid isPermaLink="true">https://bemorin.com/notes/2026-07-18</guid>
      <pubDate>Sat, 18 Jul 2026 00:00:00 GMT</pubDate>
    </item>
<item>
      <title>The last ten percent is states</title>
      <description>The happy path makes a tool look finished. Empty states, loading, partial results, retries, invalid input, and recovery are what make it feel finished.</description>
      <link>https://bemorin.com/notes/2026-07-17</link>
      <guid isPermaLink="true">https://bemorin.com/notes/2026-07-17</guid>
      <pubDate>Fri, 17 Jul 2026 00:00:00 GMT</pubDate>
    </item>
<item>
      <title>A website has one first job</title>
      <description>Before it can impress, a website has to answer a simpler question: what is this, who is it for, and what can I do here? Everything else depends on that clarity.</description>
      <link>https://bemorin.com/notes/2026-07-16</link>
      <guid isPermaLink="true">https://bemorin.com/notes/2026-07-16</guid>
      <pubDate>Thu, 16 Jul 2026 00:00:00 GMT</pubDate>
    </item>
<item>
      <title>Keep a trail of decisions</title>
      <description>A short note explaining why a system works the way it does can be more valuable six months later than another layer of abstraction. Memory is not documentation.</description>
      <link>https://bemorin.com/notes/2026-07-15</link>
      <guid isPermaLink="true">https://bemorin.com/notes/2026-07-15</guid>
      <pubDate>Wed, 15 Jul 2026 00:00:00 GMT</pubDate>
    </item>
  </channel>
</rss>