I kept losing count of pressure cooker whistles. So I built an app that counts them for me, entirely with Claude Code. 3 whistles for potato, 13 for chole, miss the count and dinner is either raw or mush. I'd start the cooker, walk off to do something else, and lose track by whistle three, every single time. A few evenings of vibe coding later: pick the dish, tap start, walk away. It listens through the mic, counts the whistles, and raises a full-screen alarm when it hits the number. No recording, nothing stored, nothing sent anywhere. The fun part was everything that went wrong. 🔴 First real cook: it counted 0 out of 5 whistles. But it did count my induction cooktop's power-off beep. 🔴 The clue: when I whistled with my mouth, it worked perfectly. The cooker, never. Turns out I'd built a pure tone detector. A mouth whistle is a clean note. A pressure cooker is turbulent steam and it sings at ~7,000 Hz, while my app was listening at 1,200 to 4,800 Hz. It heard every whistle and threw them all away. Recalibrated, re-tested: 3 whistles, 3 counted. 🔴 Bonus: I wired in Claude Haiku (via Claude API) for the dishes I don't cook often enough to remember. Type "soaked rajma" or "sweet potato", get the whistle count back, save it to my list. The actual takeaway for PMs: I couldn't have built this two years ago. I'm not an Android developer. But I could specify the problem precisely, spot that "mouth whistle works, cooker doesn't" was the real clue, and know when a test result was too clean to trust. That last one mattered most - my first validation used YouTube videos and gave confident, completely wrong answers. My kitchen disproved it in one cook. Turns out the PM skill that transfers to vibe coding isn't writing code. It's knowing what "done" means, and refusing to believe something works until you've actually seen it work. This task is something usually my mom would ask me to do when I am at home. Guess I used AI to replace me doing this task. 😄



