Notes from the
build log.
- 2026-08-02AI · 7 min read
Prompt, context, loop, graph: the four eras of AI engineering
We went from crafting prompts to managing context to orchestrating loops. Now we're engineering graphs. Here's what changed at each step, and what graph engineering actually means.
- 2026-08-01Craft · 5 min read
I miss coding
We vibe-code everything now, and it ships faster than ever. So why do I miss the part where I actually wrote the code?
- 2026-07-28Backend · 4 min read
How I structure multi-tenant SaaS in ASP.NET Core
Row-level tenancy, EF Core global query filters, and the one mistake that leaks another customer's data.
- 2026-07-14Backend · 4 min read
Fixing the N+1 query problem in EF Core
How to spot the silent query storm that slows every list endpoint, and the three ways I fix it in Entity Framework Core.
- 2026-06-30Backend · 4 min read
Running background jobs with FastAPI, Celery, and Redis
How to move slow work out of the request cycle so your API stays fast, using Celery workers and Redis as the broker.
- 2026-06-16AI · 5 min read
Building an AI concierge that doesn't hallucinate
Retrieval-augmented generation, grounded prompts, and the guardrails that stop an LLM inventing answers about your business.
- 2026-05-29Data · 4 min read
The Postgres indexes I reach for first
A practical guide to B-tree, composite, and partial indexes in PostgreSQL, and how to read EXPLAIN to know if they work.
- 2026-05-12DevOps · 4 min read
Deploying a .NET API to Kubernetes without the headache
A minimal Dockerfile, a clean deployment manifest, and the health checks and limits that keep an ASP.NET Core service stable.
- 2026-04-27Frontend · 4 min read
Angular, React, or Blazor — how I actually choose
A working engineer's comparison of three frontend frameworks, based on shipping production apps in all of them.
- 2026-04-12Frontend · 1 min read
Animation as a language, not a layer
Treating motion as part of the typography system instead of a coat of polish you sprinkle on at the end.
- 2026-04-08Frontend · 4 min read
React Server Components, explained by what they remove
Server Components in Next.js make more sense once you see them as deleting the API layer you used to write by hand.
- 2026-03-19DevOps · 4 min read
A .NET CI/CD pipeline on Azure I'd actually reuse
Build, test, containerize, and deploy an ASP.NET Core app with GitHub Actions and Azure, with the gates that catch bad builds.
- 2026-03-02Backend · 4 min read
Redis caching patterns that actually reduce database load
Cache-aside, sensible TTLs, and how to invalidate without serving stale data — the caching patterns I use in production.
- 2026-02-08Backend · 1 min read
The typed API stack I keep coming back to
Why Postgres + tRPC + Zod earns its place on every greenfield project.
- 2025-11-21Craft · 1 min read
Why I ship on Fridays anyway
A short defense of the unfashionable habit of pushing to prod before the weekend.