<?xml version="1.0" encoding="UTF-8"?>
<rss version="2.0" xmlns:atom="http://www.w3.org/2005/Atom">
  <channel>
    <title>Stackblip Blog</title>
    <link>https://stackblip.com/blog/</link>
    <atom:link href="https://stackblip.com/rss.xml" rel="self" type="application/rss+xml"/>
    <description>Field notes on JWTs, cron, hashes, HTTP, DNS, secrets and conventional commits — written alongside the free browser tools. No fluff, no popups.</description>
    <language>en-us</language>
    <lastBuildDate>Thu, 06 Aug 2026 00:00:00 GMT</lastBuildDate>
    <generator>Hand-built</generator>

    <item>
      <title>URL encoding, explained — why your %20 keeps breaking</title>
      <link>https://stackblip.com/blog/url-encoding-explained.html</link>
      <guid isPermaLink="true">https://stackblip.com/blog/url-encoding-explained.html</guid>
      <pubDate>Thu, 06 Aug 2026 00:00:00 GMT</pubDate>
      <category>http</category>
      <description>The %20 vs + space confusion, the %2520 double-encoding bug, and which encode function to actually use.</description>
    </item>

    <item>
      <title>.env files — and why you never commit secrets</title>
      <link>https://stackblip.com/blog/env-files-and-secrets.html</link>
      <guid isPermaLink="true">https://stackblip.com/blog/env-files-and-secrets.html</guid>
      <pubDate>Wed, 05 Aug 2026 00:00:00 GMT</pubDate>
      <category>git</category>
      <description>What a .env file actually is, why git history makes leaked secrets permanent, and what to do if you've already committed a key.</description>
    </item>

    <item>
      <title>How DNS actually works — from URL to loaded page</title>
      <link>https://stackblip.com/blog/how-dns-works.html</link>
      <guid isPermaLink="true">https://stackblip.com/blog/how-dns-works.html</guid>
      <pubDate>Tue, 04 Aug 2026 00:00:00 GMT</pubDate>
      <category>http</category>
      <description>The root-to-authoritative journey, what TTL really controls, why "propagation" is a myth, and how to debug it with dig.</description>
    </item>

    <item>
      <title>Base64 vs base64url — the difference that breaks your JWT</title>
      <link>https://stackblip.com/blog/base64-vs-base64url.html</link>
      <guid isPermaLink="true">https://stackblip.com/blog/base64-vs-base64url.html</guid>
      <pubDate>Mon, 03 Aug 2026 00:00:00 GMT</pubDate>
      <category>crypto</category>
      <description>Two swapped characters and some missing padding — the whole difference between base64 and base64url, and why atob() chokes on your JWT.</description>
    </item>

    <item>
      <title>Conventional Commits cheat sheet</title>
      <link>https://stackblip.com/blog/conventional-commits-cheat-sheet.html</link>
      <guid isPermaLink="true">https://stackblip.com/blog/conventional-commits-cheat-sheet.html</guid>
      <pubDate>Mon, 03 Aug 2026 00:00:00 GMT</pubDate>
      <category>git</category>
      <description>The types you'll actually use, scope discipline, the 50-character rule, and copy-paste examples for your next PR.</description>
    </item>

    <item>
      <title>Semantic versioning — what 1.4.2 actually means</title>
      <link>https://stackblip.com/blog/semantic-versioning.html</link>
      <guid isPermaLink="true">https://stackblip.com/blog/semantic-versioning.html</guid>
      <pubDate>Sun, 02 Aug 2026 00:00:00 GMT</pubDate>
      <category>git</category>
      <description>MAJOR breaks, MINOR adds, PATCH fixes. The 0.x phase, what ^ and ~ bet on, and how Conventional Commits automate it.</description>
    </item>

    <item>
      <title>401 vs 403 (and the gateway trio), finally explained</title>
      <link>https://stackblip.com/blog/401-vs-403-and-the-gateway-trio.html</link>
      <guid isPermaLink="true">https://stackblip.com/blog/401-vs-403-and-the-gateway-trio.html</guid>
      <pubDate>Sun, 02 Aug 2026 00:00:00 GMT</pubDate>
      <category>http</category>
      <description>The auth twins, the gateway trio, and a who-to-blame table for the status codes that start incidents.</description>
    </item>

    <item>
      <title>JWT vs session cookies — how to actually choose</title>
      <link>https://stackblip.com/blog/jwt-vs-session-cookies.html</link>
      <guid isPermaLink="true">https://stackblip.com/blog/jwt-vs-session-cookies.html</guid>
      <pubDate>Sat, 01 Aug 2026 00:00:00 GMT</pubDate>
      <category>auth</category>
      <description>The whole debate reduces to one question — where do you keep your state? Revocation, scaling, and the refresh-token pattern.</description>
    </item>

    <item>
      <title>MD5 vs SHA-256: when each one is fine</title>
      <link>https://stackblip.com/blog/md5-vs-sha256.html</link>
      <guid isPermaLink="true">https://stackblip.com/blog/md5-vs-sha256.html</guid>
      <pubDate>Sat, 01 Aug 2026 00:00:00 GMT</pubDate>
      <category>crypto</category>
      <description>Checksums vs signatures, the password trap, and a decision table you can tape to a monitor.</description>
    </item>

    <item>
      <title>Regex cheat sheet — the patterns you'll actually use</title>
      <link>https://stackblip.com/blog/regex-cheat-sheet.html</link>
      <guid isPermaLink="true">https://stackblip.com/blog/regex-cheat-sheet.html</guid>
      <pubDate>Fri, 31 Jul 2026 00:00:00 GMT</pubDate>
      <category>git</category>
      <description>The dozen building blocks that cover 95% of real regex, plus a copy-paste recipe box and the traps to avoid.</description>
    </item>

    <item>
      <title>Cron expressions in 10 minutes, including the OR rule</title>
      <link>https://stackblip.com/blog/cron-expressions-in-10-minutes.html</link>
      <guid isPermaLink="true">https://stackblip.com/blog/cron-expressions-in-10-minutes.html</guid>
      <pubDate>Fri, 31 Jul 2026 00:00:00 GMT</pubDate>
      <category>sched</category>
      <description>The five fields, the four operators, and the day-of-month / day-of-week OR rule that pages people at 5am.</description>
    </item>

    <item>
      <title>How to decode a JWT — and what to actually look for</title>
      <link>https://stackblip.com/blog/how-to-decode-jwt.html</link>
      <guid isPermaLink="true">https://stackblip.com/blog/how-to-decode-jwt.html</guid>
      <pubDate>Fri, 31 Jul 2026 00:00:00 GMT</pubDate>
      <category>auth</category>
      <description>Anyone can paste a token into a decoder. The skill is knowing which claims bite — exp, nbf, iss, aud — and the alg:none trap.</description>
    </item>

    <item>
      <title>HTTP caching headers, explained — Cache-Control, ETag, and 304</title>
      <link>https://stackblip.com/blog/http-caching-headers.html</link>
      <guid isPermaLink="true">https://stackblip.com/blog/http-caching-headers.html</guid>
      <pubDate>Thu, 30 Jul 2026 00:00:00 GMT</pubDate>
      <category>http</category>
      <description>Freshness vs validation, the no-cache vs no-store confusion, the 304 dance, and copy-paste Cache-Control recipes.</description>
    </item>

    <item>
      <title>git rebase vs git merge — when to actually use each</title>
      <link>https://stackblip.com/blog/git-rebase-vs-merge.html</link>
      <guid isPermaLink="true">https://stackblip.com/blog/git-rebase-vs-merge.html</guid>
      <pubDate>Wed, 29 Jul 2026 00:00:00 GMT</pubDate>
      <category>git</category>
      <description>Merge preserves your history, rebase rewrites it. The golden rule, a concrete workflow, and interactive rebase explained.</description>
    </item>

    <item>
      <title>CORS, finally explained — why it works in Postman but not your browser</title>
      <link>https://stackblip.com/blog/cors-explained.html</link>
      <guid isPermaLink="true">https://stackblip.com/blog/cors-explained.html</guid>
      <pubDate>Tue, 28 Jul 2026 00:00:00 GMT</pubDate>
      <category>http</category>
      <description>CORS isn't blocking your request — your browser is. The Preflight, the headers that matter, and why Postman never sees it.</description>
    </item>

  </channel>
</rss>