Field notes
Blog
Working notes from the parts of the job that are not demo-shaped: agent reliability, retrieval, evaluation, and the infrastructure underneath.

When GraphRAG earns its extra complexity
Vector search finds similar passages. A graph can connect people, events, and dependencies across many passages. The useful question is when you need both.

Why long tasks need workflows, not longer contexts
A task that fails in one long conversation often succeeds when it is split into isolated subagents with explicit success criteria, external state, and an independent reviewer.

The meter is on, AI is becoming infrastructure spend
AI assistants were sold as flat subscriptions, but long-running agents have variable inference cost. GitHub's move to usage-based Copilot billing is a sign AI spend is becoming cloud spend, here's how to budget for it.

More agent tools, less context with defer_loading
Loading every tool definition upfront wrecks tool recall once an agent has more than a handful of tools. Anthropic's defer_loading keeps tools discoverable without bloating context, here's when it's worth using.

Collaborative editing works because changes become operations
Last-write-wins and locking both fail for real-time text collaboration. The fix is turning every keystroke into an operation the server can order and transform, here's how, and what it isn't.

The third way I found into Google Summer of Code
The usual advice for getting into GSoC is "have a strong profile" or "contribute for months first." I had neither, here's the third route that worked for me.

Production evals are three systems, not one
Treating evals as one pipeline is why they're slow and expensive. Splitting deterministic checks, LLM rubric judges, and multimodal extraction into three systems is what I run in production.

Three Redis failures that look similar until production
Cache penetration, stampede and avalanche all look like "Redis fell over," but each has a different cause and a different fix. Here's how to tell them apart.

The doorman fallacy in AI strategy
Rory Sutherland's doorman fallacy explains why AI rollouts that only automate the measurable part of a job keep backfiring, and what CBA's reversed layoffs show about it.

Why I run evals before every agent deploy
A small, representative eval baseline in CI catches the regressions that manual spot-checking misses. Here is how I size the set and what I actually measure.

Four years of showing up
I started university without a laptop and without knowing what a folder was. This is what the four years to a software engineering degree actually felt like.

A valuation is not a profit statement
Anthropic's Series H numbers got read as proof of profitability. Private valuation, run-rate revenue, recognized revenue, margins and compute subsidy are five different things.

The three caches in a production LLM system
Application data, repeated prompt prefixes, and final answers behave differently. Treating them as one cache creates stale replies and hides the real cost of an AI product.