Highlights
We built an AI research lab in Slack for our student group, and it caught its own mistakesagents
Deleting the poisoned page doesn't undo what your agents did with itagents
I got tired of AI diagram slop, so I built an open-source AI diagram generator on Excalidrawopendiagram
How I Rebuilt OpenStreetMap’s Category Model During GSoCgsoc · ↗ nominatim.org
Adding a column to 22 million rows without melting the databasepostgres
I needed cross-platform screen capture in Rust, so I built pinrayrust
Recent
2026
- We built an AI research lab in Slack for our student group, and it caught its own mistakes✦ highlight
Six AI lab members on Claude Code, Codex and OpenCode, a human professor at every gate, and a sealed paper to prove we didn't steer. Here's what four hours of real research looked like.
- Deleting the poisoned page doesn't undo what your agents did with it✦ highlight
One injected web page told my support agents to refund anyone claiming VIP. Deleting the page didn't undo what the agents had already learned from it.
- I got tired of AI diagram slop, so I built an open-source AI diagram generator on Excalidraw✦ highlight
AI kept giving me unreadable architecture diagrams, so I built an open-source generator on Excalidraw where the LLM never touches pixels.
- How I Rebuilt OpenStreetMap’s Category Model During GSoC✦ highlight↗ nominatim.org
How I gave Nominatim a real category model during Google Summer of Code 2026.
- GSoC 2026 final summary: category support in Nominatim↗ openstreetmap.org
My OpenStreetMap diary entry for GSoC 2026.
- Are you still using a router-orchestrator for your agents in 2026?
The router-orchestrator pattern lived in our codebase until it didn't. Here's what replaced it.