Thoughts on Zig

Zig is a programming language designed by Andrew Kelley. The official website lists three principles of the language:

  • No hidden control flow.
  • No hidden memory allocations.
  • No preprocessor, no macros.

For someone like me coming mostly from Rust, Go and TypeScript, this is different—and different is interesting, so I wanted to know what it feels like to write code in it.

Here are my thoughts after 3 nights of using Zig to rewrite the static site generator I use for the Fire Chicken Webring. Note that this is a limited use case and only scratches the surface of the language.

Continue reading...

DIY Music Streaming with NixOS, Jellyfin and Manet

In this post, I describe how I’m hosting my own music streaming service with NixOS, Jellyfin and Manet on Hetzner for €6 / month.

If you know your way around servers, this is neither a novel nor a complicated setup—quite the opposite; the beauty of this configuration lies in its simplicity.

Continue reading...

I Lived 7 Days without a Smartphone

I’m addicted to my phone. You are probably too.

And I’m trying to fix this: I don’t have TikTok or Instagram, I only use YouTube in Safari with Shorts blocked, and I use one-sec for apps that I don’t want to waste my time on. But still, time-sinks keep creeping in after a week or two.

So, I did what I wanted to do for years: I put my iPhone at my desk and left it there for 7 days. Here’s how it went.

Continue reading...

Yearly Themes 2024

Instead of setting a fixed goal as my New Year’s resolution, only to then not even make it through January, I’m setting Yearly Themes. CGP Grey has a great video on them, here’s a quote:

For some things, precision matters, for others, it doesn’t and when trying to build yourself into a better version of yourself, exact data points don’t matter. All that matters, is the trend line.

Yearly Themes act as a signpost to give your year a direction—the idea is to keep them in mind when making decisions, no matter how small.

Continue reading...

Emacs From Scratch, Part 1: Foundations

Welcome to my new series Emacs From Scratch. I’m far from an Emacs expert, so join me in my quest to figure out how to create a useful Emacs setup from nothing.

In this part, we’ll install Emacs, set up sane defaults, packaging and do some basic UI tweaks to build a solid foundation.

Continue reading...