Skip to content

Writing

Field notes, with receipts

What AI systems really cost, who owns that cost, and how to keep quality up when AI speeds up delivery. Long-form here; shorter essays on Medium.

Series

Human in the Loop

Field notes on managing AI-assisted software delivery: how I scope the work, what I check before anything ships, and the bugs that got through anyway.

See all 5 published parts

Tutorials

Engineering lessons from bugs I found and fixed in production, written as steps you can repeat on your own systems.

  1. Oct 17, 2026 · 14 min · Read The Games

    Teaching simulated footballers to play like real ones: three review loops

    Ten days of Read The Games: 11-a-side matches, a decision trainer, game review on the phone, motion capture, and boxing and sword fights in the headset. The part worth copying is how I checked the AI against reality: replayable seeded games, annotated reviews, and tracked match footage, each one closing a loop with a number.

  2. Sep 25, 2026 · 11 min · TrendVesting

    When a weekly rebalance runs every minute: debugging a live ETF agent

    A live ETF agent sold 9 shares of SGOV and bought them back once a minute, 183 times in a day. How I found the loop, the four bugs behind it, the fixes and tests, and the diagnostics call that now catches all of them.

On this site

  1. Nov 6, 2026 · 6 min

    Can you still finish when the assistant disappears?

    A structured handoff note for paused AI-assisted work, a stale-claim check, and a proposed synthetic test. No participant study has been run.

  2. Nov 5, 2026 · 11 min

    Juniors without tickets: growing engineers when agents take the starter work

    The well-specified ticket was how junior engineers learned, and agents now absorb it. What the research says about learning with an AI assistant, why answer-first beats reveal-first, and the starter work I'd give a junior instead, with the gates I built into my own study tools as the worked example.

  3. Nov 4, 2026 · 11 min

    Any app on your machine can rewrite your agent's rules

    Opening Postman's desktop app turned on Claude Code and Codex plugins and wrote a startup hook, without asking. I read the issue, checked my own machine, and built a small open-source tool that notices when anything changes what your coding agents do.

  4. Oct 31, 2026 · 11 min

    Architect of Intent: software engineering isn't ending, the typing is

    A viral preprint says software engineering is ending and the human becomes an intent architect. I read it: one author, a title softened in six days, and one benchmark number that explains the job better than the headline. What intent architecture looks like in a real repo, and what it changes downstream.

  5. Oct 26, 2026 · 8 min

    Hand the next owner a broken run

    Reassigning code owners shows who is responsible, not whether they can recover anything. A departure drill: give the next steward one known failed run, no access to the previous owner, and record where it stalls. A synthetic version with six levels of guidance, and what a pass can and can't prove.

  6. Oct 23, 2026 · 9 min

    The row that never reached the comparison

    A dual-write migration check that compares rows present in both stores can report a clean match while an order is missing entirely. A synthetic two-store demo with a real crash between commits, the audit that catches it, and a reconciler that repairs only from evidence.

  7. Oct 19, 2026 · 10 min

    What happens after you press Stop?

    A Stop button that ends in one word hides what actually happened. A small synthetic demo of a return summary: one confirmed write, one unknown, one never sent, the actions each one allows, and why a timeout must never turn unknown into failed.

  8. Oct 8, 2026 · 12 min

    Fitting a soccer pitch into your living room: a week of mixed reality on Quest

    A week building Overtrain, a mixed-reality soccer trainer for Meta Quest, plus a desktop mode and a phone app from the same code. Most of the hard work was spatial: getting the play area to sit on the real floor, inside the boundary you drew, and stay there. Here's what broke, how each fix worked, and what I'd do differently.

  9. Oct 7, 2026 · 8 min

    When the agent finishes yesterday's task

    What should a product do when an async agent's result arrives after the user changed or cancelled the goal? A deterministic demo with 11 synthetic schedules and three admission policies, the race a pre-check misses, and the wording for current, pending, cancelled and conflict states.

  10. Oct 2, 2026 · 8 min

    Riding to war on an indoor bike: three.js, WebXR, and a Rust/WASM renderer

    Outrider is a Meta Quest game where your indoor bike is the controller. Where to find its best moments, and what I learned when three.js spent too much CPU on draw calls: I wrote a lean draw loop in TypeScript and again in Rust/WASM, benchmarked all three, and the language mattered less than the leanness.

  11. Sep 15, 2026 · 11 min

    Who pays for the KV cache? Designing showback for shared LLM inference

    A guide for platform and FinOps leads who have to split shared AI spend: which meter to charge by, where idle capacity goes, how to give every dollar one path into the ledger, and what a joined ledger can answer. Backed by measurements from unalloc, my open-source cost-attribution tool.

  12. Sep 14, 2026 · 11 min · Part 9

    timurista.ai: rebuilding this website in a day, with sign-off at every step

    How I scoped, reviewed and shipped the rebuild of this site: a framing I pulled back within the hour, numbers I deleted because I couldn't source them, a form that showed my phone number to the wrong people, and a retired Worker route that quietly shadowed the new API.

  13. Sep 14, 2026 · 11 min · Part 10

    unalloc: checking a cost-attribution tool before anyone quotes its numbers

    How I scoped and checked unalloc, an open-source tool that joins Kubernetes and LLM provider bills: nine defects caught before release, a budget-capped H100 run with a verified teardown, a paper build that refuses silent typos, and a headline I softened because no meter is ground truth.

  14. Sep 13, 2026 · 11 min · Part 1

    TendForm: managing a solo SaaS build to production quality

    How I scoped, reviewed and validated a HIPAA-capable form builder I built alone: the rules I wrote down, the checks I trusted, the 14 bugs that got through anyway, and the process I'd change.

  15. Sep 13, 2026 · 11 min · Part 2

    TrendVesting: validating 2.5 years of production AI

    How I review and validate an AI trading system I own: change records with production numbers, invariant tests, reconciliation audits and calibration checks, and the numbers they overturned.

  16. Sep 13, 2026 · 11 min · Part 3

    TigerMill: quality gates for an AI content pipeline

    How I defined acceptance for a novel-to-webtoon pipeline: a gate after every stage, approvals that name who made them, spend behind a human trigger, and tests that guard the defects I already paid for once.

On Medium

All essays →

Questions or feedback?
I reply to every note.

Say hi