Writing
Notes from the build.
First-person, plain-technical writing about the things I actually ship.
Featured
Engineering·Oct 11, 2026
Before you code, build the harness
A CLAUDE.md is context, not enforcement. claude-code-harness adds the parts that can fail: a check runner that ties every pass to the exact source it ran on, and a Stop hook that sends failures back to Claude Code.
Engineering·Sep 17, 2026
The model changed and nothing failed
A pinned model can move under you without throwing a single error. modeldrift fingerprints what a model does today, commits that as a baseline, and fails CI when the behaviour moves.
Notes·Jul 16, 2026
The context layer: why smart models still fail at work
Notes on a talk by Prukalpa Sankar of Atlan. Performance is intelligence plus context, and the missing infrastructure for production AI agents is a context layer.
Open Source·Jul 15, 2026
Founder OS: a Claude Code skill set for startup owners
Eleven open-source skills that turn Claude Code into a founder operating system: investor updates, pricing, MVP scoping, outreach, hiring, launches. Free, MIT.
Engineering·Jul 12, 2026
I built a prompt-injection firewall for LLM apps
dynarq-shield sits in front of a model and decides what to allow, flag, or block. Here is how the detectors and the scoring work.
Notes·Jul 11, 2026
What shipping five small AI repos taught me
Depth over quantity. Five runnable, tested repos beat twenty empty ones, and here is what each one is actually proving.
Automation·Jul 12, 2026
ai-radar: a digest that writes itself every morning
A scheduled GitHub Action that fetches the newest arXiv and Hugging Face releases, renders a dated digest, and commits the diff. Keyless, stdlib only.
Product·Jul 10, 2026
Inside Poplygo: making a room feel live
Anonymous Q&A and instant polls that everyone joins in seconds. The hard part was never the UI. It was making it feel instant.
Engineering·Jul 9, 2026
Fine-tuning small models on a laptop with LoRA
You do not need a cluster to learn fine-tuning. A tiny model, prompt masking, and a CPU smoke test go a long way.