I'm Dan Henry

Hobby computer scientist writing about technology, life, and everything in between.

Recent Posts

low level

From Nand to Tetris - My Way

Building a computer. Starting from nand gates, all the way until a computer that can run tetris.

compiler design

Bytecode and the VM - The Guts of My Interpreter

Still working on the clox language from crafting interpreters. Actually executing code now, which is pretty cool

language design

Building an interpreter from scratch

Creating a programming language has always carried this uber-leet status to me, and now I finally get to explore it.

homelab

Why I don’t use Proxmox (and why CloudStack fits my lab)

Most people reach for Proxmox. I didn’t. This is about how I experiment, not about what’s “best.”

C

Procedural Cave Generation with C and SDL2

I am insanely obsessed with PCG, and I'm trying to get more comfortable with graphics programming. This is where we start.

homelab

Refactoring My Home Network

Completely redesigning my network and reconfiguring my core switch.

homelab

Your Homelab Isn't Teaching You Shit If You're Not Treating It Like Production

Is your homelab actually gonna help you get a job?

low level

Writing a Custom Memory Allocator

We all agree that malloc() is kinda trash, right?

homelab

Diving into Ceph: Building a Distributed Storage Cluster that Doesn't Suck

Notes from trying to stand up Ceph in a 3-node lab and why future-me expects pain.

low level

IDT and Interrupts: Making the CPU Actually Do Something Useful

Trying to figure out what IDT is, how to implement it, and how to use it to make the CPU actually do something useful.

low level

Why am I trying to write an OS again?

I love distributed systems until they love me back. Notes from trying to stand up Ceph in a 3-node lab and why future-me expects pain.

Game of Life

Wikipedia
Slow150msFast

Patterns