The peculiar event sourced deadlock []

THE UNDEAD LOCK OF DETH

One thing that always surprises me is how casually serious problems are phrased by business people in their blissful ignorance. “Hey why am I seeing the down for maintenance screen?” “Oh try it now, the pack uploading has finished”, Said the QA engineer to the

Summerhouse Paradis Aruba []

This post tracks the progress of a rental property I bought on Aruba. The goal is to rent it out short term to tourists. This video gives a rough overview of the current status:

Summerhouse paradis on aruba vlog: Colors, mold and a hole

Why do I still write this blog? []

My motivation for blogging has changed over time. I’d like to revisit my initial reason, and discuss how this changed while maintaining the blog. After all I keep posting articles on here, something has to keep me going right?

We can read my original motivation. The initial goal was

Zurich hack 2022 Denotational Design []

zurich hack logo, uwu

This blog post and after action report is three months overdue, but I participated in Zurich hack 2022. Zurich hack is a voluntary hackaton organized in Rapperswil-Jona 1, with as theme improving the Haskell ecosystem and

Restoring mysql innodb on windows. []

Over the weekend a company had a power outage, causing corruption to the on premise hosted mysql innodb database. This means the company can’t do any work, so I had to fix this fast before they opened again on Monday. It’s not trivial because the system runs on windows, which

Failing in Haskell []

I’m a Haskell failure, don’t tell anyone!

Recently I encountered some dubious error handling code. Not only was it failing, it was failing WRONG 1. This frustrates me because doing failing correctly in Haskell is quite easy, so why was it implemented wrongly? I believe no-one has addressed failing

Installing a NixOS desktop tracked with git []

A few years ago I wrote a post on installing NixOS on encrypted btrfs. I recently went trough that guide to install NixOS once more. It is good, but it has some issues:

  1. btrfs: Which I no longer use due to performance concerns.
  2. git: This requires some special

A brief intro to MTL []

mtl-header

Recently a blog post came out which I quite like, it describes how to use the concrete base transformers. It’s very thorough and gives a concrete example for using transformers. Although it looks quite low level and I think you’ll get more out of transformers by using full

The Nix mutli-monolith machine (NMMM). []

a NMMM computer

I redid how my services are structured. Instead of running each project on a separate VM, they’re now all running on a dedicated Hetzner machine. This is what I call the nix multi monolith machine (hence forth called NMMM, pronounced like tasting something delicious prefixed with an

Using git for templates []

Over the past few years I’ve started using git as a template management tool1. For example, I clone my haskell template project, edit the names, edit the readme end re-setup the remotes:

git remote add template git@github.com:jappeace/haskell-template-project.git
git remote set-url origin git@github.com:jappeace/new-project.git

This allows me to keep