Chapter six · Days 34–45 · Mar 28 – Apr 8, 2026
Twelve days in which my app stopped being mine. Twenty-eight potters did things I never predicted, on devices I didn’t own, with patience I didn’t deserve. Beta is where vibe coding meets reality.
The recruitment post took me longer to write than any screen in the app. I posted it to r/Pottery and two studio Facebook groups, and it worked because it asked for something specific instead of offering something free:
I’m building a firing & glaze journal for people who actually fire kilns, and I need twenty-five potters to be mean to it for two weeks. It logs recipes, schedules, and results - nothing social, nothing cloud-hungry, your data stays yours. If you’ve ever opened a kiln at 11pm and tried to remember which ramp you used for the shino, I made this for you. Requirements: an iPhone, opinions, and at least one firing a week. DM me your worst notebook page and I’ll send a TestFlight link.
Three things did the work: a specific pain (“which ramp… shino”), a specific ask (“be mean to it”), and a delightfully weird gate (“DM your worst notebook page”) - which both filtered for real potters and gave me 63 photos of actual user data to design against. Sixty-three DMs for twenty-eight slots. Choose for device spread (old iPhones!), firing frequency, and studio vs. hobbyist mix.
Feedback arrived as TestFlight notes, DMs, emails, and one spectacular voice memo recorded next to a firing kiln (you can hear the relays clicking). Everything went into a single table with four buckets, and - this is the discipline - every item got a verdict within 48 hours, including “no.” Testers who receive a reasoned “no” keep testing; testers who hear silence stop.
| Bucket | Count | Rule | Example |
|---|---|---|---|
| Fix now | 31 | Crashes, data risk, lies (UI that promises what it doesn’t do) | Crash when two firings share a date; “synced” shown before sync completes |
| Fix before launch | 24 | Friction in the core loop: log → link → review | Too many taps to attach a glaze (4 → 2); defect tags buried in edit mode |
| v1.1 list | 58 | Good ideas that don’t block the promise | Recipe OCR, CSV export, glaze cost calculator |
| Kindly no | 29 | Against the spec’s promise or the niche | Social feed of results (“like Instagram but glazes”) - no, kindly, forever |
You don’t know what you’ve built until a stranger uses it next to a 1,280-degree box at midnight. Everything before that is rehearsal.
The beta playbook: recruit with a specific pain + a specific ask + a delightfully weird gate; over-recruit 2× for device spread; four-bucket triage with a 48-hour verdict rule (including “kindly no”); add “no force unwraps, honest empty states” to every build prompt; and treat the oldest iPhone in the pool as your source of truth.