Shipping an iOS app in a week
Notes from building Ultimate Kami almost entirely by voice, on a phone, with a newborn asleep on my chest.
This is a placeholder post, here only to show how the site behaves with more writing in it. It will be removed. The rest of the text is filler, written to look like a real post so the layout has something realistic to hold.
Real-time audio has one rule above all the others: the callback must finish on time, every time. Miss the deadline and the listener hears it immediately, as a click or a dropout. That rule shapes everything else, from how memory is allocated to how threads talk to each other.
What worked
- keeping every task small enough to review in a minute
- one branch, one worktree, one agent
- testing on a real device the same day
- writing down what the app is not going to do
What didn’t
Graphics has a softer deadline but a wider surface. A frame that arrives late is a stutter rather than a click, but there are far more ways to be late: too many draw calls, too much overdraw, a texture upload at the wrong moment, or a shader that is quietly doing far more work than it needs to.
- Long, vague prompts.
- Letting two agents edit the same file.
- Skipping the boring parts of the App Store listing.
The interesting part is always the same. You start with a clean idea, you meet the hardware, and the idea changes shape. What survives is usually simpler than what you started with, and faster for it.