<?xml version="1.0" encoding="UTF-8"?>
<rss version="2.0" xmlns:atom="http://www.w3.org/2005/Atom">
  <channel>
    <title>Mir Ashif — Notes</title>
    <link>https://mirashif.com/notes</link>
    <description>Source-backed observations from building interfaces, data paths, and systems on the web.</description>
    <language>en</language>
    <atom:link href="https://mirashif.com/rss.xml" rel="self" type="application/rss+xml" />
    <item>
      <title>Optimistic UI needs a rollback plan</title>
      <link>https://mirashif.com/notes/optimistic-ui-needs-a-rollback-plan</link>
      <guid isPermaLink="true">https://mirashif.com/notes/optimistic-ui-needs-a-rollback-plan</guid>
      <pubDate>Fri, 24 Jul 2026 00:00:00 GMT</pubDate>
      <description>An instant interface is only trustworthy when pending, rejected, and retried work all have a clear path.</description>
    </item>
    <item>
      <title>What belongs at the edge?</title>
      <link>https://mirashif.com/notes/what-belongs-at-the-edge</link>
      <guid isPermaLink="true">https://mirashif.com/notes/what-belongs-at-the-edge</guid>
      <pubDate>Fri, 24 Jul 2026 00:00:00 GMT</pubDate>
      <description>The right execution point follows the whole data path, not the word “edge” on an architecture diagram.</description>
    </item>
    <item>
      <title>Shape a D1 model around its query paths</title>
      <link>https://mirashif.com/notes/data-models-under-uncertainty</link>
      <guid isPermaLink="true">https://mirashif.com/notes/data-models-under-uncertainty</guid>
      <pubDate>Fri, 24 Jul 2026 00:00:00 GMT</pubDate>
      <description>A small schema stays adaptable when its constraints, indexes, and migrations describe work the product already performs.</description>
    </item>
  </channel>
</rss>
