Writing

I write about building tools that let people and agents understand what they are working on—not just generate more code.

Essays

Notes

  • Long-term direction, conversational boundaries, and the limits of current models.

  • QuickBEAM 0.11 adds a JavaScript interpreter written in Elixir, so the BEAM can preempt, limit, and supervise it.

  • Reading existing code, understanding architecture, and checking for drift.

  • Models built to generate text are still bad at writing it, and continuing someone else’s fiction shows why.

  • Predictable habits, a plan the model keeps up to date, and prompts that keep getting shorter.

  • Why DuckDB

    Where DuckDB fits alongside Postgres, and what QuackDB adds for Elixir.

  • How I handle pull requests when AI makes them cheap to open and expensive to review.

  • Design-to-code needs abstractions that map both ways, not generated backends nobody can maintain.

  • Vibe puts Elixir eval, stateful sessions, and supervised subagents at the center of a coding agent.

  • On imitation of competence, hiring rituals, and the cleanup cycle that follows.

  • JSX, structured JSON, and Bash are steps toward one declarative language understood by humans and models alike.

  • Models learn the most from acting in constrained environments, which makes feedback on their actions the valuable data.

  • QuickBEAM gives every JavaScript runtime a supervision tree, native BEAM terms, and no Node.js on the machine.

  • Figma shipped a silent patch to kill figma-use, so I recreated the core of it as OpenPencil in a weekend.