Build logs and hot takes on agentic systems, retrieval, and the unglamorous infrastructure that makes AI reliable.
The best class I took at Berkeley had me rebuild the thing under PyTorch, autodiff and layers and optimizers, from numpy up. It did not teach me deep learning so much as give me the foundation to understand everything I learned after.
Read the build log Jul 2026During live telehealth sessions, stroke patients wear a mixed-reality headset while an LLM judges each rep and writes the result into their clinical record. The newest fix in that repo is a one-line database change, and it is the whole 2026 agent-infrastructure conversation in miniature.
6 min read →I spent a summer at IMDEA writing a MILP that schedules DAG workflows across fog nodes provably optimally. Then I watched it fall over at a hundred tasks. Optimal and usable turned out to be different objectives.
8 min read →I built two agents this week and realized the model barely does anything - it returns JSON. The loop, the memory dict, and the tool schemas do the real work. That is the actual engineering.
6 min read →How I built evaluation pipelines for non-deterministic systems, and why vibes-based testing doesn't scale.
7 min read →Notes on queues, idempotency keys, and what it actually means to recover gracefully from failure.
6 min read →What changes when a demo becomes load-bearing. The cuts, the rewrites, and the thing nobody tells you.
5 min read →Building a single pipeline abstraction across AWS, GCP, and Azure, and why the queue lives in Postgres.
8 min read →Clinical and academic users break your assumptions. Notes on the UCSF Health × Stanford Medicine deployment.
4 min read →LLMs are stateless and frozen. Short-term memory is just context-window management: what you keep, what you summarize, what you drop.
Coming soonMy notebooks ran on mock dictionaries. Here is what every mocked piece becomes in a real system: retries, timeouts, persisted state, observability.
Coming soonFixed, semantic, recursive, structure-based, LLM-based. Recursive is the sane default, but the failure modes are where the real decisions live.
Coming soon