Blog
Jujutsu in practice—Jujutsu is a version control system, an alternative to Git. This blog post
is not a tutorial, but practical examples of how I use it.
We need more zero config tools—Recently, I’ve become fond of tools that just work, out of the box.
This blogpost is an ode to them.
Emacs Config From Scratch, Part 3: LSP & Tree-sitter—In this third part of my Emacs Config From Scratch series, I configure LSP and Tree-sitter.
DIY Music Streaming with NixOS, Jellyfin and Manet—In this post I describe how I’m hosting my own music streaming service with
NixOS and Jellyfin on Hetzner for €6 / month.
I Lived 7 Days without a Smartphone—I left my smart phone at my desk for 7 days and instead used my Apple Watch
Ultra 2. This is how it went.
2023
Emacs Config From Scratch, Part Two: Projects and Keybindings—In this second post in my Emacs from Scratch series, we’ll
set up a way to manage projects, quickly find files, set up
custom keybindings, interact with Git and open a terminal inside Emacs.
Emacs Config From Scratch, Part 1: Foundations—The first post of my Emacs from Scratch series is all about the initial setup and defaults.
Archive Your Old Projects—In this post I describe how I wish I had archived all my old projects and my approach going forward.
Why You Should Write Your Own Static Site Generator—I rewrote my personal website using basic libraries and the flexibility is incredible.
Static OG (Open Graph) Images in Astro—A guide to set up build-time Open Graph images in Astro using Satori, sharp and Astro endpoints.
2022
Plex on NixOS—In this post I describe how I set up Plex on NixOS, including a virtual file system for Backblaze B2 and Nginx for HTTPS.
2020
2019
Automate #1: Spotify Podcast Mirror—How I created an Automator application, which records the latest episode of a Spotify podcast, fills out metadata and generates a file for metadata for a podcast client to subscribe to.
Announcing the Automate Series—The start of a series of blog posts, all related to one of my yearly themes: automation.
2018
I18n in Node.js—Node.js uses ICU (International Components for Unicode) for i18n and only includes English data by default.
On Hexagonal Architecture—Why a hexagonal architecture can be better than traditional MVC-style architecture, with a real-world example.