Date: 2026-02-03

Simplifying my life

Over most of 2025, I have been on a journey to simplify more things in my life, especially on the digital side.

As the first post of re-vamping my blog here, I wanna just list a few thoughts and insights I had over the last year while trying to minimize the things I need to worry about.

Personal Setup

Let's start with my personal setup. For decades I have been either driving my own (now unmaintained) window manager, or an extensive XMonad setup, for the last few years mostly EXWM and at the end stumpwm.

However, due to this I often found myself tinkering and configuring until late in the night. Don't get me wrong, I love that stuff, it's fun. But it also gets in the way of actually getting other things done. Sure, an elaborate setup for stumpwm might be great, but how often do I need that mix of tiling and stacking and frames? Not often. I have already simplified other aspects, so the only things I need are a terminal, Emacs and a browser for most of my work.

But I also want to be able to quickly understand if something does go wrong. So although maybe not as powerful as other solutions, I just went with dwm, st and dmenu. That's all I really need. The code is literally small enough that it can be quickly perused and fixed if needed.

Operating System

Operating systems have for a long time been an absolute rollercoaster for me. Back when I had a crappy old Core2Duo laptop that required every single ounce of optimization I could throw at it, I went down the rabbit hole of full Gentoo stage 1 installs.

Once my hardware got a bit more tolerable, I started distro-hopping for what felt like ages. For a long time I settled with Debian, then Arch for a while and ended up with NixOS for a few years until roughly the end of 2024 I'd say.

I fully jumped on the NixOS train. Immutability, declarative style, yada yada. The finer points of the pros and cons here might be material for another blog post at some point.

The basic gist is that it felt like I didn't really understand what exactly was deployed and installed anymore. Sure, it's super easy to stand up a mail-server in NixOS: basically just enable the module, fine tune a setting here or there, and Bob's your uncle.

But…what exactly got installed and configured now? What if the module has a bug or misconfigures something internally. Definitely not easy to debug then.

I wanted a system that ticks all these boxes:

  • easy to understand
  • good documentation
  • stable
  • secure
  • fun

And, I couldn't really find that in the Linux world. And before you jump at me for daring to say that: I'm not bashing or mocking it. Linux as of late just doesn't spark joy anymore for me.

I found my solace in OpenBSD and FreeBSD.

Emacs

Yes, the endlessly configurable and Cthulhu-esque behemoth that also happens to include a text editor is my way of simplifying my life. Sure, I could achieve similar functionality with the likes of VS Code or NeoVIM, but then I end up with a clusterfuck of different configurations.

Lua for NeoVIM and then configuring tons of external tools that the plugins rely on. Or VS Code and its electron and npm madness in the background.

With my Emacs setup I learn one configuration language, Emacs Lisp, and can do 95% of my workload within the same environment.

Got snippets or abbreviations? One plugin or customization that I can then apply to all my workflows.

Getting that setup, especially on the org-mode side, configured to my exact needs and liking took some initial up-front investment time-wise, but it has been paying dividends ever since.

Homelab

I will probably write a longer blog post about my homelab setup at a later stage. Anyway, what do you mean "simplify your life with a homelab"!? How on earth does that make sense?

I'll tell you how. Yes, it does require some maintenance and I am tryin to also simplify that aspect this year. But it allowed me to move away and be less dependent on the big companies and their offerings. And by doing that I also had to take a hard look at what I actually need and what I don't. Doing so helped tremendously.

Languages

Same as Linux distributions, I kept hopping from language to language. I can barely list how many I have been through. I think in chronological order it must have been:

  • Assembly (on a ZX80)
  • Basic (don't remember which exact dialect)
  • C
  • TurboPascal
  • C++
  • Visual Basic
  • Delphi
  • Java
  • JavaScript
  • Shell
  • Tcl
  • Perl
  • Ruby
  • Haskell
  • Prolog
  • Common Lisp
  • C#
  • F#
  • Erlang
  • Scala
  • Elixir
  • Rust
  • Zig
  • … and some more that I probably have forgotten

But now that I want to simplify, I want to filter down to a small subset of languages that I will give more attention and dive into the deepest crevices of specs, details, expertise.

Common Lisp

My precious, my beloved…my eternal loved language. This is the language you can pry out of my cold, dead hands. If I need anything that is more than a shell line, or if I am exploring a new problem space, or just playing around with ideas: Common Lisp is my forever goto language.

The interactivity is par none. And instead of adjusting the problem to the language, I can adjust the language to the problem.

So this one will stay in my grab-bag and will be always be at the ready. At least for personal stuff, as work doesn't use it unfortunately. One can dream though.

But this is basically my more enjoyable stand-in for Python and the likes.

sh

Well, duh, this one has to stay. I do nowadays though try to limit myself to using plain sh instead of bash. I have seen way too many scripts that assume that /bin/bash actually exists on a system.

Restricting myself to plain sh instead of bash-isms or zsh-isms allows me to write my scripts more portable, again simplifing things.

C

I know, way more modern things like Rust or Zig exist, but this one just keeps on chugging along and staying around. Especially with my increased interested in actually participating in FreeBSD and OpenBSD, this language has earned its keep in my roster.

Rust

Nowadays I don't really use it much anymore for personal projects. When it first came out, I was an early adopter, around version 0.4 I think.

I even wrote my own window manager, that I had used for many years, in it. And I love its stability and the compiler and tooling are absolutely chef's kiss. For any bigger, serious project, this will always be at the ready. For one-off stuff though, the compiler gets in the way more than is currently comfortable for me.

Stays in the roster, but used professionally more than personally.

Syntax Highlighting

A fairly recent one, but this has been the easiest timesaver I think. No theme is ever perfect for me. Prot's modus themes have been very, very close to perfect for me. So for a long time, I stuck with the modus themes, specifically modus-vivendi-tritanopia.

Lately though I have been paying more attention to where my focus shifts. I caught myself several times, more than would be comfortable for me, to get distracted or annoyed by how my code looked visually due to highlighting. "Oh, those colors don't align nicely", and other thoughts of that kind. I also seemed to just glance over code I was reading, instead of giving it 100% attention.

I jumped in and removed all color from all my themes. From my editor, from my terminals, everything. Makes me almost wish I had a laptop with an e-Ink screen now to massively save on battery life, but I digress. The jury is still out on the terminal. I might at least bring red back in one form or the other to quickly spot errors when they zip by. But generations before us have lived without color, so it should be doable.

20260203-simplify-desktop.png

Then I started reading around on the web on how other people who decided to ditch syntax highlighting felt about it after a while.

One interesting article was this one here from Tonsky. Instead of completely eliminating syntax highlightling, at least comments are highlighted. So I adjusted a theme to my liking and kept some of the very subtle highlights for comments and strings.

20260203-simplify-comments.png

Time will tell if I stick with it or go back to a colorful world of christmas tree looking code. But at the moment I am very much enjoying it. I seem to get less distracted while working on text and code. Heck, it even kicked my willingness off to start to blog again. And I hope that I will now stick to a more regular schedule of writing new posts. I will also have to go and restore my older posts in the new setup.