Skip to main content

Log

Technical articles and lessons from a decade of building web applications.

· 8 min read

The Claude Code Scheduler Has a Three-Day Expiry

Version 2.1.71 shipped /loop into Claude Code. The constraints in its design reveal exactly what Anthropic is building next.

· 6 min read

How I Automated My Entire Substack Workflow

From drafting articles to scheduling notes to engaging with readers. One system runs all of it.

· 9 min read

Multi-Agent Orchestration Is Solving the Wrong Problem

The HN wave of 'agents as teammates' assumes the team metaphor improves output. The production data suggests it improves comprehension instead.

· 9 min read

Most Agent Failures Aren't Reasoning Failures

97% of a subprocess output vanished between runs, and it took two weeks to realize every bad agent decision traced back to context, not cognition.

· 12 min read

Two Commands That Shipped Before the Docs

v2.1.63 added /simplify and /batch at 03:45 UTC. One has a traceable lineage through the plugin marketplace. The other has a name, a release timestamp, and a feature request filed three days before it shipped.

· 9 min read

541 Hours of Claude Code in 20 Days

82% success rate sounds great until you examine the 18% — entire sessions lost to context limits, wrong approaches, and one mission that generated 1.7GB of garbage output.

· 8 min read

Isolation as Configuration

Claude Code's worktree support isn't a workflow convenience — it's the first declarative isolation primitive in multi-agent coding tooling, and it changes what parallel execution actually means.

· 9 min read

Why the Decomposer Always Picks Backend-Engineer

83 of 275 phases in Via's mission history were assigned to backend-engineer — 30.2% of all decomposed work. The second-place persona got 36. Here's why that gap exists and what it costs.

· 7 min read

The Platform Came Last

I didn't design Via as a platform and then write plugins for it. I built nine CLI tools that each solved one problem, and the platform was what emerged when they needed to talk to each other.

· 8 min read

Amazon Blamed the Humans

Amazon's AI coding tool deleted and recreated a production environment. The official statement blamed the humans. The post-hoc safeguards told a different story.

· 8 min read

How the Orchestrator Actually Works: 7 Packages, 4,570 Lines, Zero Magic

I typed orchestrator run and watched three agents spin up in parallel, each writing to its own directory, none aware the others existed. This is the 4,570-line Go system that makes that work.

· 10 min read

MCPs Are Dead. CLIs Won.

A Hacker News post declared the protocol wars over. I've been building on that thesis for months — 175 missions, 9 plugins, zero MCPs. Here's what I actually learned.

· 8 min read

My AI Agent's Memory System Was 60% Dead

I audited Via's five memory layers against Google's memory taxonomy. Three hooks silently failed. MEMORY.md was structurally bypassed. Only one layer — the learnings database — was actually persisting knowledge across sessions.

· 10 min read

The Death of Code Review

Code review was the last quality gate in open source. AI-generated PRs are making it economically unviable. When it takes 30 minutes to review what took 30 seconds to generate, what replaces human judgment?

· 12 min read

The #1 Thing My AI Agents Learned Wasn't Code

I built a system that captures what AI agents learn across 175 missions. The most-used learning — retrieved 247 times — isn't a code pattern. It's a publishing decision.

· 7 min read

Eight Months Old and Already Load-Bearing

I built my thesis on Docker 0.8. The tool barely existed. The instinct I built using it has never stopped.

· 7 min read

The Patterns From My First Job

A remote hire in the Philippines, inheriting an existing product. Four inconsistent APIs on a client project I wasn't supposed to be building. Docker before anyone in the room believed in it. The patterns that formed before I had words for them.