The delete that didn't delete
Three Foxstash releases in four days: encryption at rest, a free lunch that wasn't, a delete that left the data on disk, and a position that wasn't an identity

Search for a command to run...
Three Foxstash releases in four days: encryption at rest, a free lunch that wasn't, a delete that left the data on disk, and a position that wasn't an identity

Two months of building FoxWatch, a PC health monitor that stays silent unless there's something to do, and the five times a quiet result hadn't earned it

An accessibility pass on my company site: a measuring tool that read every colour as black, the sanity check that caught it, and what was actually wrong

The first run of my company's audit found a paused product still running a critical vulnerability, CI that had failed silently for 24 days, and three wrong numbers of my own

A forced model swap in Mousing, nine benchmark runs, and why the expensive model's lead mostly belonged to the answer key

Tezcatl, an open-source C and C++ metrics tool, and what cross-checking it against lizard and gcovr turned up

First published in my LinkedIn newsletter. Corsac is still a work in progress; this describes it as it was then. The annoying part of a workflow runtime isn't running code. It's knowing what code is s

First published in my LinkedIn newsletter. Corsac is still a work in progress; this describes it as it was then. At the end of Corsac Phase 1, the project had crossed an important line. It was no long

First published in my LinkedIn newsletter. Mousing has since moved to Go in production. Last year I started a Go/Lambda rewrite of my SaaS API. Got it about 60% feature-complete. Then parked it. The t
