<?xml version="1.0" encoding="UTF-8"?>
<rss version="2.0"><channel>
  <title>Zymura blog</title>
  <link>https://zymura.app/blog/</link>
  <description>Notes on scheduled automation and running a software business from India.</description>
  <language>en</language>
  <lastBuildDate>Wed, 19 Aug 2026 23:20:26 +0000</lastBuildDate>
    <item>
      <title>The build that succeeded at nothing</title>
      <link>https://zymura.app/blog/the-build-that-succeeded-at-nothing.html</link>
      <guid isPermaLink="true">https://zymura.app/blog/the-build-that-succeeded-at-nothing.html</guid>
      <description>A Cloudflare build command left empty meant every deploy went green while serving a stale bundle. Why succeed-at-the-wrong-thing bugs outlive failures.</description>
      <pubDate>Wed, 19 Aug 2026 09:00:00 +0000</pubDate>
    </item>
    <item>
      <title>How to run a script on a schedule without a server</title>
      <link>https://zymura.app/blog/run-a-script-on-a-schedule-without-a-server.html</link>
      <guid isPermaLink="true">https://zymura.app/blog/run-a-script-on-a-schedule-without-a-server.html</guid>
      <description>Cron on a VPS, scheduled functions, GitHub Actions or a scheduled automation service — an honest comparison of what each one actually costs you to keep alive.</description>
      <pubDate>Wed, 19 Aug 2026 09:00:00 +0000</pubDate>
    </item>
    <item>
      <title>The flow that ran and did nothing</title>
      <link>https://zymura.app/blog/the-flow-that-ran-and-did-nothing.html</link>
      <guid isPermaLink="true">https://zymura.app/blog/the-flow-that-ran-and-did-nothing.html</guid>
      <description>Automation failures are easy. The expensive case is the run that completes successfully while accomplishing nothing. Four ways it happens and how to catch it.</description>
      <pubDate>Wed, 19 Aug 2026 09:00:00 +0000</pubDate>
    </item>
    <item>
      <title>If it only runs while a tab is open, it is not automation</title>
      <link>https://zymura.app/blog/browser-automation-is-not-automation.html</link>
      <guid isPermaLink="true">https://zymura.app/blog/browser-automation-is-not-automation.html</guid>
      <description>Browser-based automation tools are genuinely private and genuinely limited. Background throttling, tab discarding, and the honest trade against server-side execution.</description>
      <pubDate>Wed, 19 Aug 2026 09:00:00 +0000</pubDate>
    </item>
    <item>
      <title>Testing row-level security for what should fail</title>
      <link>https://zymura.app/blog/testing-row-level-security-for-what-should-fail.html</link>
      <guid isPermaLink="true">https://zymura.app/blog/testing-row-level-security-for-what-should-fail.html</guid>
      <description>A too-permissive Postgres RLS policy does not raise an error — it returns rows. Why every RLS test suite needs assertions about what a user cannot reach.</description>
      <pubDate>Wed, 19 Aug 2026 09:00:00 +0000</pubDate>
    </item>
    <item>
      <title>Merchant of record vs payment gateway, for Indian software businesses</title>
      <link>https://zymura.app/blog/merchant-of-record-vs-payment-gateway-india.html</link>
      <guid isPermaLink="true">https://zymura.app/blog/merchant-of-record-vs-payment-gateway-india.html</guid>
      <description>Selling software abroad from India: who carries the foreign sales tax liability, why local pricing needs one product per currency, and what to check before onboarding.</description>
      <pubDate>Wed, 19 Aug 2026 09:00:00 +0000</pubDate>
    </item>
</channel></rss>
