đŸ Welcome to Serious Vibes. This newsletter is for PMs and designers who want to build complex, maintainable applications with natural language. We're not prototyping. I'll show you how non-engineers are building scalable projects with real code, real users, and real revenue.
I'm Erik. I've been in product management for ~10 years, founded Homeroom, and was a Product Lead at Reforge. My goal: help you build that list of app ideas in your phone.
The Breaking Point
When I first started vibe coding, I remember staring at an error I'd seen five times that week. My AI assistant suggested 200 lines of Redis configuration to fix a button that needed one line changed.
After three months coding with AI assistants 6-8 hours daily, every app collapsed past a certain size. Same pattern: start clean, add features, watch contradictory architectural decisions tear it apart.
The AI wasn't the problem. At any given moment, I was expecting it to know whether I was exploring an idea, just getting something working or hardening for a production release. No wonder the code was schizophrenic.
The System That Changed Everything
Here's what I built last Monday.
Monday, 9am: "I need to know when specific companies on my clientâs target list announce new funding rounds."
Monday, 11am: Built three prototypes:
Email digest of TechCrunch headlines
Webhook listener for Crunchbase
Full dashboard with charts and analytics
The webhook approach was obviously right. Deleted the others.
Monday, 2pm: Shipped it. One React file. localStorage for data. Hardcoded webhook URL. Three features: add company, see alerts, mark contacted.
Tuesday: Three sales friends using it. All three added real target accounts.
Thursday: "Can you add LinkedIn post tracking?" Added in 2 hours. Still one file.
Friday: Friend texts: "My whole team would pay $99/month for this."
Now we're talking real money and real data. Spent the weekend rebuilding with auth, PostgreSQL, Stripe, rate limiting, and audit logs.
The Three Modes
In the above example, I efficiently aligned with my AI assistant on:
How clear I was on what I wanted to build
Who would be using it when
The risks of not getting it right
Discovery Mode
You don't know what to build yet. Build three versions, keep one, delete two.
That Monday morning with three prototypes? Discovery Mode. My AI assistant showed me options instead of optimizing prematurely.
Speed Mode
You know what to build. Ship it in one file with localStorage.
Monday afternoon through Thursday? Speed Mode. My AI assistant cut every corner possible. No database. No auth. No error handling. Just the core feature working.
Production Mode
Real users, real money, real responsibility.
Friday's rebuild? Production Mode. My AI assistant added error handling, suggested monitoring, and asked about edge cases I hadn't considered.
Why This Actually Matters
Without declaring your mode, every AI conversation is chaos.
Without modes: "Add payment processing"
Your AI suggests Stripe with webhooks, SCA compliance, subscription management, dunning emails, invoice generation... Three hours later, you have enterprise billing for your 5-person beta.
With modes: "Add payments. We're in Speed Mode."
Your AI gives you a Stripe Checkout link and 20 lines of code. Shipped in 30 minutes.
The Critical Rule
Your entire project has a mode. Features within that project can be in a lower mode, but never higher.
Think of it like a building:
If your building has two floors (Speed Mode), you can't add a penthouse (Production feature)
When that friend offered $99/month, I had to rebuild the foundation to support more floors
You can't put production payments on a localStorage backend. The whole building needs to level up.
Your Move Right Now
Open your current project.
Paste this into your instruction file (i.e. CLAUDE.md).
## Development Modes
When I mention a âmode,â Iâm referring to one of three development approaches:
**Discovery Mode**: Exploring what to build. Create multiple quick prototypes to test ideas. Prioritize learning over polish. Build 3 versions, keep 1, delete 2. No optimization, just exploration.
**Speed Mode**: Know what to build, ship it fast. Single file when possible. Use localStorage over databases. Hardcode over configuration. Cut every corner that doesnât affect core functionality. Zero architecture decisions.
**Production Mode**: Real users, real money, real responsibility. Proper error handling, monitoring, security, database, auth, rate limiting. Consider edge cases, scale, and maintenance.
**Critical Rule**: The project has an overall mode. Features can be in a lower mode than the project, never higher. A Speed Mode project canât have Production features - the whole foundation must level up first.
When I specify a mode, adjust your suggestions accordingly. Discovery = show options. Speed = ship now. Production = build right.
Then literally tell your AI assistant: "Weâre in Discovery Mode. I want to add XYZ feature.â
Watch how different the suggestions become.
Most projects die in Discovery. The ones that survive should live in Speed Mode until the market demands Production. Iâve learned this the hard way (many times)ânothing is more expensive than building the wrong thing the right way.