Writing
Notes on engineering, leadership, and the craft.
Posts · Page 5 of 8

When Agents Can Write Their Own Skills, Retrieval Becomes the Product Boundary
Jun 2026·Wrong skill retrieval makes agent skill persistence risky. Treat skills as gated, versioned product surface with evals and tool limits.

Delete All GitHub Forks at Once
Jun 2026·Delete all your GitHub forks with the gh CLI: grant the delete_repo scope, list every fork with gh repo list --fork, and pipe them to gh repo delete --yes.

When Health Data Freshness Became a Pipeline Problem
Jun 2026·Health data freshness depends on device capture, API ingest, caching, and display timestamps, not just widget refresh speed.

When Claude Became a Shortcut Before the Problem Was Understood
Jun 2026·Claude in Chrome can mask delivery gaps unless ownership, access, and evidence are proven before an LLM starts building.

Turning UPI Transactions Into Savings Signals
Jun 2026·UPI transaction analysis fails when alerts stay messy. Build a read model that normalizes payees, detects recurrence, and exposes evidence.

Go as a primary language for solo practitioner tooling
Jun 2026·Dependency drift broke a tiny service. Go for solo tools keeps unattended jobs easier to deploy, debug, and maintain.

Ports and Adapters, Earned Not Cargo-Culted
Jun 2026·Ports and adapters architecture can rot into ceremony. Use two adapters, typed errors, DTOs, and parity tests to keep seams useful.

One Policy Gate for an Autonomous Agent
Jun 2026·Letting an LLM open PRs is risky. Autonomous agent guardrails need one beforeToolCall gate, a per-project allowlist, and audit logs.

Postgres Is the Only Backend You Need
Jun 2026·Postgres job queue design for Slack agent tasks: claim rows with SKIP LOCKED, recover crashes, schedule safely, and skip Redis or SQS.

A Slack Mention Becomes a Pull Request
Jun 2026·Slack engineering agent flow from @mention to PR: resolve channel scope, enqueue work, run the agent, and capture review by reaction.