Kafka: Ideas about Events & Commands


I’ve been thinking about patterns for handling events & commands when you’re communicating with an event broker like kafka. I suppose I shouldn’t lock myself into a specific technology, but kafka imposes certain constraints that I think are worth exploring. For this, I’ll assume a baseline level of knowledge in kafka that you can get from watching these videos The scenario To give the discussion some context, I’m going to make up a fake scenario to ground things.…
Read more ⟶

The Simplest Possible Database


Introduction Recently, I’ve spent a lot of time thinking about different designs for databases. I’ve decided to repurpose my relatable database as something that is far lower-level than a SQL interpreter, which was the original goal. Instead, it should be a small primitive that abstractions can be built on top of. That begs the question though: What should that abstraction look like? What is the essence of a database? That is what I want to answer today.…
Read more ⟶

Application File Formats


On Application File Formats So a few weeks ago, I was talking to a friend of mine. They were talking about the D&D campaign they were starting in a few weeks, and all the pain they had to go through to DM. Keeping track of all the NPCs, generating encounters, choosing loot, etc. They wanted to build a small desktop app that could handle all of these concerns, allowing them to focus on worldbuilding and storytelling.…
Read more ⟶

A Very Relatable Database


Note A lot of the things recommended in this article are pretty bad ideas, if you know anything about databases. If you want to get some better ideas, send me an email & we can chat about other databases. If you don’t really care about how to store data on a disk, then a library like sled.rs might be for you. The problem I like to find ways to fill up my free time over winter breaks.…
Read more ⟶