Love it. Here’s a lightly polished, tighter pass that keeps your voice, jokes, and rhythm—just cleans up flow, headings, and formatting.
Day 11 — Do the hard thing while you’re excited
Big idea today: when an idea pops up, go for it. Start with a vibe brainstorm session then dive in on the implementation. Do the complicated thing while the spark is hot. We leaned straight into two gnarly threads—prize mode and deeper Stripe integration—because future-me never has more energy than present-me.
I’ll keep saying it: for Squares, the UI *is* the product. Nail the feel and everything else (emails, backend, automation) lines up behind it. That’s why we shipped the multi-game invite selector and left the email as a polite placeholder. Pixels first; paragraphs later.
Refactor without guilt
When a control wants to live in more than one place (hello, Time Zone), pull it out and make it a component. Consistency is mercy.
My Ricky Gervais PhD in Time Zones
I’m basically writing a dissertation in “Optimal Human Time Selection.” Why are there so many time-zone IDs when there are only 24 hours? Because every city council since 1912 tried remixing daylight saving like a DJ with commitment issues. Now we have hundreds of IDs so computers can remember that one summer in 1977 when a mayor declared “extra sunlight for morale.” Ricky would shrug: “I don’t care.” Users do—so we make it painless.
How we vibe (even writing this)
This whole project—and this blog—is vibe-driven storytelling with just enough structure to ship.
- I brain-dump messy voice notes (bad spelling, worse metaphors) and ask AI to make it into a blog using what it know we did today.
- AI does a formal first pass. I roll my eyes, laugh, then steer it.
AI first pass (too stiff):
“Day 11 activities, emphasizing payment orchestration via Stripe Connect, UI refinements to the time zone selector, and preliminary specifications for prize-mode workflows. Subsequent iterations will address email templating and fulfillment operations.”
My reprompt (translation: vibe up, suit off):
“Way less detail. High-level, philosophical, funny. Keep the Ricky Gervais / PhD-in-time-zone-picker joke. Conversational. Short beats. Pixels first; backend later.”
I then vibe up the Cover Image Chat.
give me cover art for this blog post, keep my hair from yesterday mostly bald but put a bit on the front. Have the AI say „I Don’t care“ in one of the frames.
then about 10 iterations latter I settle. Vibing is not without its frustrations. Trying to get that UI to be perfect…might have to change courses, there are other options
What we ship:
You’re reading it—“Do the hard thing while you’re excited.” Pixels first, payouts next, jokes intact.
- We co-edit fast: keep the weird, trim the wobble, delete anything that smells like a status report.
- We hit publish while the idea’s warm. No over-polishing, no ceremony—Build → Feel → Adjust.
- Same loop for code: extract the gnarly piece, refactor without guilt, make it reusable.
- And yes, AI helps—but it’s a brilliant toddler. I’m the adult in the room setting boundaries and taste.
North star for the next lap
- #1 Stripe end-to-end (connect, charge, fee).
- Prize mode skeleton behind a flag—max prizes, simple categories; redemption later.
- Multi-game invites wired to real delivery once the screens settle.
Short version of Day 11: chase the spark, extract the gnarly bits, keep the jokes, and let the pixels lead.