$ ls ~/writing
Writing
Thinking out loud about systems, tooling, and the occasional rabbit hole.
A GPU is a thread pool that hates if-statements
Oct 4, 2026CUDA explained in backend terms: thread pools, event loops, N+1 queries and network round trips. Most of what makes GPU code fast, you already know under another name.
The scraper that worked on my laptop and died in production
Aug 27, 2026Everything I got wrong about anti-bot systems before I joined a company that builds around them. Spoiler: the problem was never the User-Agent.
async def is a promise, not a performance flag
Aug 18, 2026The FastAPI bug that's invisible at one request per second and catastrophic at two hundred, and the boring rule that prevents it.
We cut the AWS bill by 80%. Kubernetes gets too much of the credit.
Aug 4, 2026A small-team migration story, with the honest breakdown of where the money actually went. Most of it wasn't where I expected.
Letting the marketing team talk to the database
Jul 21, 2026Building a natural-language query layer over influencer data, and why the guardrails ended up mattering far more than the model.
What fifteen freelance projects taught me before my first real job
Jul 8, 2026Voting platforms, quiz apps, a gym management tool. The code is long gone. The lessons weren't really about code.
