Blog
I write about things I run into at work and in research: building voice agents, backend systems, the occasional deep dive into how the hardware underneath actually works, and lately, learning world models from scratch.
Learning World Models
A series of notes on world models: what they are, how to build a tiny one from scratch, and what broke when I took its tricks away.
All posts
-
Why evicting 90% of the KV cache frees so little memory
Dropping tokens from the cache does not give memory back on its own. Paged blocks, FlashAttention, and what it takes to actually free space.
-
Fuzzy-matching voice commands with edit distance
A 60-year-old algorithm that beats both exact matching and an ever-growing list of misspellings.
-
Multi-Tenant Architecture for AI Voice Agents: A Practical Guide
What it actually takes to serve many businesses from one real-time voice platform: the parts that aren’t the AI.
-
CPU vs. GPU: Two Philosophies of Speed
Why the two chips ended up so different, from a single line of code all the way up to the laws of physics.


