Writing
Things I wish I'd read before I built them.
Agents, retrieval, and the occasional event-ops postmortem. Written while the details are still fresh enough to hurt.
What a builder club at HUST should look like
I've spent close to three years helping run rooms of 500+ developers and a year building agents with Claude Code. Here's the club I'd build on my own campus — one semester, four rituals, and a rule that nothing is finished until someone else can run it.
- Community
- Campus
- AI fluency
1,100 RSVPs and one spreadsheet: event logistics is a systems problem
What running check-in for Google I/O Extended Hanoi taught me about queues, backpressure and graceful degradation — the same words I use when building software, only louder and with more badges.
- Community
- Operations
- GDG
Why I gave Claude Code a memory (and what I got wrong about retrieval)
Every session started from zero. OpenMem is my attempt at a memory layer that survives the terminal closing — three layers, hybrid retrieval, and the ranking mistakes I had to make before it worked.
- MCP
- Go
- Retrieval
The hard part of an agent isn't the model. It's the permissions.
Evy started as a reminder bot for GDG Hanoi's organising team and turned into a lesson about tool design: deciding what an agent is allowed to touch, and how it asks before touching it.
- Google ADK
- Agents
- MCP