Blog
AI agents, RAG, LLMs, and hard-won lessons from shipping production software.
12 Aug 2026 · 8 min
Shipping AI Agents That Actually Do the Work
Everyone's shipping 'agents' now, and most are a prompt in a for-loop. Here's what actually separates a flashy demo from something you'd trust in production.
30 Jul 2026 · 9 min
RAG in Production: Retrieval Is the Hard Part
Retrieval-Augmented Generation is easy to demo and hard to trust. The model usually isn't hallucinating because it's dumb — it's because you fed it the wrong chunks.
15 Jul 2026 · 6 min
Choosing an LLM in 2026: Stop Asking Which Is Biggest
The 'best model' question is the wrong one. In 2026 the winners route between a fast, cheap model and a frontier one, and let evals — not benchmarks — decide.
1 Jul 2026 · 7 min
MCP: Giving Your LLM Hands (Carefully)
The Model Context Protocol turned 'tool use' from bespoke glue into a standard. Here's what it is, why it caught on so fast, and where the sharp edges hide.
24 Jun 2026 · 6 min
Vector Databases: Do You Actually Need One?
Every RAG tutorial reaches for a shiny vector database. Most apps would be perfectly happy with pgvector and the Postgres they already run.
19 Jun 2026 · 7 min
Evals or It Didn't Happen: Testing LLM Features
You wouldn't ship an API without tests. LLM features are no different — except 'correct' is fuzzy, so you need evals, not just asserts.
18 Jun 2026 · 6 min
Why I Deploy on Fridays (and Live to Tell It)
Hot take: Friday deploys are fine when your pipeline actually trusts you back. A love letter to boring, bulletproof CI/CD.
2 May 2026 · 8 min
FastAPI + Django: Two Great Tastes
When to reach for FastAPI, when Django earns its keep, and how I let them coexist in one product without starting a civil war.
11 Apr 2026 · 7 min
Kubernetes Broke My Brain, Then Fixed My Deploys
A brutally honest tour of the k8s learning curve — the YAML tears, the aha moments, and whether you actually need it (spoiler: maybe not).
5 Mar 2026 · 5 min
The Art of the 3AM Bug: A Field Guide
Every senior dev has a 3am war story. Here is my system for staying calm, reading logs like tea leaves, and not making it worse.
14 Feb 2026 · 6 min
React Server Components, Explained Like I Was Confused Too
I finally get RSCs, so let me save you the six tabs of confusion. What runs where, and why your fetch is in the wrong place.
20 Jan 2026 · 4 min
Docker Layer Caching: The Speedrun
Your builds are slow because your Dockerfile is lying to the cache. Reorder five lines, reclaim minutes on every push.