Protokolo

I released a new project

On-and-off over the past few months I wrote a new tool called Protokolo. I wrote earlier about how I implemented internationalisation for this project. This blog post is a simple and short introduction to the tool. Protokolo—Esperanto for ‘report’ or ‘minutes’—is a change log generator. It solves a very simple (albeit annoying) problem space at the intersection of change logs and version control systems: Different merge requests all edit the same area in CHANGELOG, inevitably resulting in merge conflicts. [Read More]

How to set up Python internationalisation with Click, Poetry, Forgejo, and Weblate

TL;DR—look at Protokolo and do exactly what it does. This is a short article because I am lazy but do want to be helpful. The sections are the steps you should take. All code presented in this article is licensed CC0-1.0. Use gettext As a first step, you should use gettext. This effectively means wrapping all string literals in _() calls. This article won’t waste a lot of time on how to do this or how gettext works. [Read More]

Decades where nothing happens and weeks where decades happen

Attrition in Dungeons & Dragons 5e

I don’t really like running Dungeons & Dragons 5e. There are a lot of reasons for this, but I could learn to live with or subtly work around most of those reasons. There is one core mechanic in the game, however, that drives me up the wall like nothing else, and I basically never see it discussed anywhere—the long rest. This article is my attempt to make a case for why the long rest isn’t very good. [Read More]

The sunk cost discount and the trip cost scaling problem

Cars are more expensive, but not when you already own one

You know how sometimes you see a common phenomenon, and you think there should logically already exist word for that phenomenon, but no matter how hard you search, you can find no such word? That’s what this article is about. I want to create new terms for two existing phenomena that, in my limited understanding, are not well-explored1 in spite of how common they are. I’m going to call them the sunk cost discount and the trip cost scaling problem. [Read More]

Cars as asbestos

Let's unironically ban cars

Since moving to Brussels1, I have been radicalised against the automobile. I came from the Dutch countryside, where cars are kind of necessary to get anywhere meaningful, but where other modes of transport do exist and are feasible. I spent six years cycling one hour to school and one hour back, and I spent a few more years doing a commute of 1h30 by two buses and a train to university. [Read More]