Manifesto
How I think about building with AI.
My approach comes from working as an engineer, architect, and delivery lead.
- 01
Start with who needs the software.
I've built software, designed platforms, and led delivery. That's where my AI work comes from. Before a build, I want to know who needs it and what constraints we're working with. Then I ask what could fail and how the team will check that the software works.
- 02
Resolve uncertainty before it turns into code.
AI writes code quickly, including code based on assumptions no one has checked. That makes clear direction worth the effort. I spend time defining the problem and settling decisions that would otherwise block the work. Some questions need investigation first. If what we learn changes the problem, I change the plan.
- 03
Explain the architecture choices.
Choosing a model is one decision. The system also needs rules for where data goes and how it handles failures. It has to be deployed, paid for, and maintained. I want someone taking over the system to understand why I made those choices and what tradeoffs came with them.
- 04
Use a process that fits the work.
Requirements, plans, and reviews need to help the team deliver. I link what the software should do to the tasks, code, and tests, then review whether the result holds up. How much process a project needs depends on its scope and the risk of getting it wrong.
- 05
I'm responsible for what I accept.
Agents write code, investigate problems, and review work within a process I set up. I'm responsible for the direction and architecture, and for deciding whether the result is good enough to accept. I publish the code and delivery records so people can inspect the work and read what I've learned.
An example: opening-dojo
I designed and directed the process for building this chess opening trainer with AI agents. I worked through the requirements and plan, then directed implementation and review. The agents wrote the code. The repo includes the PRD, plan, review records, traceability matrix, final verification, and postmortem.
The Method page explains how I use these ideas during a build.