Engineering Notebook · 2026

I like building things I don't know how to build yet.

I'm Benji, a computer science graduate who likes figuring out how things work. I build things, take them apart, sometimes fix them, and occasionally get lost down a rabbit hole.

This is my engineering notebook: a collection of projects, experiments, and things I've learned along the way — from reverse engineering hardware and writing Linux software to learning new tools just to see what they're capable of.

Production work

  1. Noticing when a solver dies without saying anythingHow ScheduLearn's solver ended up stuck on "Solving" forever after an OOM kill, and the heartbeat and audit chain that now notice when a solve goes silent.
  2. Moving our biggest schedules to Google BatchWhy ScheduLearn's largest schools outgrew Cloud Functions and Cloud Run, what it took to run the solver on Google Batch, and two Batch defaults that give the solver much less of the machine than you're paying for.

Currently investigating

Recent investigations

View all →
  1. 02Learning VimRebuilding my editing workflow around Vim and finding out which parts of the hype actually hold up.
  2. 03More things I'm figuring outSmall experiments, technical rabbit holes, and projects that don't quite fit anywhere else.

Why I keep a notebook

The interesting part isn't always the finished project.

I learn best by trying to build something. The finished result is only one part of the process — the failed experiments, wrong assumptions, debugging sessions, and little discoveries along the way are often where I learn the most.

So I write them down. Partly to make sense of what I've learned, and partly because I think the process of figuring something out is worth sharing.