<?xml version="1.0" encoding="UTF-8"?>
<rss version="2.0" xmlns:atom="http://www.w3.org/2005/Atom">
  <channel>
    <title>Jonas Hansen</title>
    <link>https://sasin91.xyz</link>
    <description>Software developer</description>
    <language>en</language>
    <lastBuildDate>Tue, 4 Aug 2026 00:00:00 +0000</lastBuildDate>
    <atom:link href="https://sasin91.xyz/rss.xml" rel="self" type="application/rss+xml" />
    <item>
      <title>Where to start with self-hosting</title>
      <link>https://sasin91.xyz/blog/running-things-on-your-own-hardware/</link>
      <guid>https://sasin91.xyz/blog/running-things-on-your-own-hardware/</guid>
      <pubDate>Tue, 4 Aug 2026 00:00:00 +0000</pubDate>
      <description>I set up Kubernetes to learn it, then packaged the second cluster so it would launch in an afternoon. What the kit costs, what it uses before your own code runs, and where k3s is genuinely stronger than the simple options.</description>
    </item>
    <item>
      <title>K3s starter kit on Hetzner cloud</title>
      <link>https://sasin91.xyz/blog/k3s-platform-kit/</link>
      <guid>https://sasin91.xyz/blog/k3s-platform-kit/</guid>
      <pubDate>Tue, 4 Aug 2026 00:00:00 +0000</pubDate>
      <description>A fork-and-edit k3s platform for Hetzner Cloud: GitOps delivery, encrypted secrets, certificates, per-tenant isolation and observability. What is in it, what it costs to run, and the one thing it does that three FreeBSD boxes or Docker Swarm cannot.</description>
    </item>
    <item>
      <title>What a game world server actually needs</title>
      <link>https://sasin91.xyz/blog/what-a-game-world-server-needs/</link>
      <guid>https://sasin91.xyz/blog/what-a-game-world-server-needs/</guid>
      <pubDate>Tue, 4 Aug 2026 00:00:00 +0000</pubDate>
      <description>Hosting a WoW emulator: the world daemon&#39;s tick runs on one thread, so clock speed buys you everything and core count buys you almost nothing. What that means for what you buy, why the gaming chip is the wrong pick, and the routing gotcha that catches everyone.</description>
    </item>
    <item>
      <title>One box, two jails and a five second deploy</title>
      <link>https://sasin91.xyz/blog/athletos-freebsd/</link>
      <guid>https://sasin91.xyz/blog/athletos-freebsd/</guid>
      <pubDate>Sun, 26 Jul 2026 00:00:00 +0000</pubDate>
      <description>AthletOS runs on a single €7 FreeBSD box. Two jails that are always up, Caddy handling certificates on its own, and a rolling deploy that never leaves zero healthy backends. What the boring choices bought, measured rather than estimated.</description>
    </item>
    <item>
      <title>FreeBSD on a Hetzner Cloud VPS</title>
      <link>https://sasin91.xyz/blog/freebsd-on-hetzner/</link>
      <guid>https://sasin91.xyz/blog/freebsd-on-hetzner/</guid>
      <pubDate>Sun, 26 Jul 2026 00:00:00 +0000</pubDate>
      <description>Hetzner has no FreeBSD image, and the installer everyone recommends never verifies what it downloads before handing it root. In this article I install 15.1 on root-on-ZFS the honest way, and walk through the five things that broke on the way there.</description>
    </item>
    <item>
      <title>Trongate mx-transition attribute</title>
      <link>https://sasin91.xyz/blog/trongate/mx-transition/</link>
      <guid>https://sasin91.xyz/blog/trongate/mx-transition/</guid>
      <pubDate>Mon, 3 Mar 2025 00:00:00 +0000</pubDate>
      <description>MX transition provides an easy and intuitive way to add animations to items and the whole page.</description>
    </item>
    <item>
      <title>Trongate PHP</title>
      <link>https://sasin91.xyz/blog/trongate/</link>
      <guid>https://sasin91.xyz/blog/trongate/</guid>
      <pubDate>Sat, 14 Sep 2024 00:00:00 +0000</pubDate>
      <description>Trongate is often misunderstood and gets a bad reputation because it breaks with common standards and takes a journey back to its roots. In this article, I will explore and highlight this rough diamond that deserves a spot in the limelight.</description>
    </item>
  </channel>
</rss>