a clone of Pijul written in C, a patch-based VCS


small toy debugger (source), learning resource for a debugger in Hare (source)


session types for Rust, MsC thesis and paper

dactyl keyboard

building a keyboard (source)


clone of redshift in Rust (source)


Advent of Code Day 7 in Hare 2022-12-15

Tackling the day 7 puzzle in Hare was interesting, because it showcases a fair few of Hare's strengths: parsing an input stream of lines of bytes, managing some memory, string handling and tagged unions. So as an excuse to write about Hare, I'll write about my solution for this puzzle.

Interacting with Acme 2022-10-31

Interacting with Acme through the terminal is pretty rad. This is basically a poor rehash of acme(4) plus ideas for a Git integration.

Taking Acme for a spin 2022-09-30

I've been inspired to take the Acme for a more serious spin. This page is kind of a living documentation page where I put updates when I learn something new, and various tips and tricks.

Fun with ARM64, Raspberry Pi and QEMU 2022-02-23

I recently had a need to use a 64-bit ARM machine, running something like the Raspberry Pi OS. Not only that, I needed to run Docker on it to build a small base image of arm64v8/debian:bullseye-slim with the ca-certificates package installed.

A: Top-posting 2021-09-08

Q: What is the most annoying thing in e-mail?

Hello World as init in Linux with QEMU 2021-08-12

Inspired by the Rob Landley talk on building the Simplest Possible Linux, this post takes us on a journey where we learn how to have "Hello World!" be our PID 1 and all that our OS will do.

cat /dev/screen | topng > screencap.png 2020-08-14

If you've never heard of Plan 9 from Bell Labs maybe this post isn't for you (or maybe it is). If you have any interest in Unix-like operating systems, then Plan 9 might be worth checking out.