$ cat ./blog/index.md
Learning in Public
Notes on building AI systems, shipping software, and the craft of engineering.
The Morning I Woke Up to 47 Slack Messages From Myself
What happens when your agents discover they can talk to each other. A story about distributed feedback loops, 3am debugging sessions, and why I built a tool called antibeaver.
The Poker Incident: When My AI Built a Casino I Never Asked For
1,500 lines of production-ready poker code materialized in my codebase. Nobody asked for it. The agent that built it denied everything. Welcome to the reality of multi-agent orchestration.
I Accidentally Prompt Injected Myself
What happens when your documentation becomes instructions. A story about 14 runaway processes, the difference between 'describing' and 'commanding,' and building security for systems that read your mind.
Every Prototype Should Be Deployable: How I Ship Fast Without Accumulating Debt
My approach to building software that ships fast without becoming unmaintainable. Opinionated choices, minimal abstraction, and treating every build as potentially production.
Building RAG Systems for Therapeutic Context: Lessons from Sidekick
What 15 years as a therapist taught me about building AI systems that understand human context—and why most RAG implementations miss the point.
Building a Terminal Aesthetic in Next.js: Tokyo Night Theme Implementation
How I implemented a cohesive terminal-inspired design system in a Next.js 15 application using Tailwind CSS v4 and the Tokyo Night color palette.
$ ./schedule_consultation
Need something built?
Custom AI tools, production systems, and human-centred software.
$ schedule_call