Introducing Async Service

Distributed tasks with Postgres & Rabbitmq TL;DR: Check out the code here At my workplace, we needed a mechanism to: Have service A tell service B to start executing long-running tasks, with notifications upon completion ...

Initramfs with systemd & LUKS

TL;DR My old boot process looks like this: UEFI (with secure boot on) systemd-boot unified kernel.efi (initramfs + kernel params + kernel all rolled into one efi and signed) initramfs (busybox) encrypt hook: detects that ...

Interfaces in golang

TL;DR: An interface just defines a collection of methods. When you create an instance, it’s just a wrapper around a concrete type. In addition to the concrete type, the interface contains an extra array of ...

Secure DNS

TL;DR: Use a VPN if you really care. Hey, you over there! Want to take something that works perfectly well and make it more complicated? Sure ya do! Oh, need a little more convincing? Okay ...

Ad Blocking w/Raspberry Pi

I’ve used different technologies to block ads for a long time. I remember my first computer used Proxomitron to great success in the early web. (HTTPS wasn’t much of a thing back then which made ...

WordPress feature hacking

I’m using Koko analytics on my site to generally see if it’s getting traffic (it’s not :D). One thing I wanted to add was a site counter as a throwback to my original website which ...