Blog
Ramblings about software development, privacy, and whatever happens to strike my fancy.
Five Years of Design
· 5 min · 372 reads
A Corepack by Any Other Name
· 6 min · 1,294 reads
Ephemeral Permissions Considered Beneficial
· 5 min · 361 reads
Where Did My Colorful Home Manager Logs Go? Debugging Ghostty and Sudo
· 4 min · 1,863 reads
Performance Tales, Part 2: A Robust Web Font Loading Strategy
· 4 min · 929 reads
Performance Tales, Part 1: Why So Performant?
· 4 min · 352 reads
A Long Way to Nix
· 5 min · 953 reads
Setting Up My VPS with Docker Compose and Traefik
· 8 min · 8,037 reads
How I Deleted a Production Database Cluster
· 5 min · 659 reads
Tracking Subscriptions with Notion
· 3 min · 1,110 reads
How I Follow the News with RSS
· 3 min · 1,398 reads
Why I Use Eleventy
· 4 min · 2,018 reads
Redesign & Optimizations on v5
· 3 min · 457 reads
Reflections on Qt
· 3 min · 432 reads
Inside a Minecraft Launcher
· 8 min · 5,326 reads
Building a Unsplash Downloader with Deno
· 3 min · 553 reads
The Web Renaissance
· 4 min · 204 reads
Notion in Web Development
· 2 min · 278 reads
A Complete Guide to Rewrites on the Web
· 3 min · 1,430 reads
What is IIFE?
· 2 min · 231 reads
Responsive Images with Eleventy & Sharp
· 5 min · 758 reads
Vercel as a Framework
· 7 min · 1,055 reads
Data Fetching with Next.js
· 6 min · 1,685 reads