Iterative Design
Iterative Design
“If you’re not embarrassed by the first version of your product, you’ve launched too late.” — Reid Hoffman, LinkedIn founder
Learning Objectives
By the end of this module, you will be able to:
- Explain why iteration beats perfection
- Define a minimum viable product (MVP)
- Plan projects as a series of expanding versions
- Embrace feedback as fuel for improvement
- Resist the perfectionism that prevents shipping
The Trap of Perfection
You have a project idea. It’s exciting. You can see the finished product in your mind:
- Beautiful UI
- Every feature
- Handles every edge case
- Polished and professional
So you start building toward that vision.
Six weeks later: you’ve built half of one feature. It’s not quite right. You keep tweaking. The deadline approaches. Nothing is working. Panic.
This is the perfection trap. The vision was so clear that you couldn’t accept anything less. So you shipped nothing.
The Iterative Alternative
What if, instead:
Week 1: Build the simplest possible version. It works but it’s ugly. Week 2: Show it to someone. They have feedback. Add the most important feature. Week 3: More feedback. More improvements. Core features complete. Week 4: Polish what exists. Ship.
You end up with something:
- Actually working
- Informed by real feedback
- Focused on what matters most
- Delivered on time
It’s not everything you imagined. But it exists. And existence beats imagination.
The MVP: Minimum Viable Product
An MVP is the smallest thing you can build that:
- Works (actually functions)
- Solves the core problem
- Can be used by real people
- Provides feedback for what to build next
MVP Examples
Project idea: A task management app
Maximalist vision:
- Multiple boards, lists, cards
- Drag-and-drop
- Team collaboration
- Due dates, reminders, notifications
- Mobile app
- Calendar integration
- AI-powered task suggestions
MVP:
- A single list
- Add tasks
- Mark tasks complete
- Delete tasks
That’s it. A to-do list. Does it solve the core problem (tracking tasks)? Yes.
From there, you can add features based on what users actually need — not what you imagined they’d want.
The Instagram MVP
Instagram launched in 2010 with:
- Take a photo
- Apply a filter
- Post it
- See posts from people you follow
No DMs. No Stories. No Reels. No shopping. No ads.
The founders built the core experience, validated that people wanted it, then expanded from there. Now it’s worth billions.
They didn’t imagine every feature first. They shipped and learned.
Why Iteration Works
You Learn What Actually Matters
Your guesses about what users want are often wrong.
Build → Show to users → “Oh, that button is confusing” → Fix it → Repeat
Real feedback beats imagined requirements.
You Reduce Risk
If you spend six weeks building the wrong thing, you’ve wasted six weeks.
If you spend one week building an MVP, discover it’s wrong, you’ve lost one week. Pivot and try again.
Small iterations = small mistakes = quick corrections.
You Maintain Momentum
Shipping something — anything — creates energy:
- You see progress
- Others see progress
- Feedback gives direction
- Morale stays high
Endless building with no ship date creates:
- Doubt
- Feature creep (“while we’re at it…”)
- Burnout
- Eventual abandonment
You Ship
The goal is to deliver something useful. Iteration gets you there.
The Iteration Cycle
┌─────────────────────────────────────────────┐
│ │
▼ │
┌──────┐ ┌──────┐ ┌──────┐ ┌──────┐ │
│ Plan │ ──▶ │Build │ ──▶ │ Ship │ ──▶ │Learn │──┘
└──────┘ └──────┘ └──────┘ └──────┘
│
│ What's the smallest useful thing?
│
▼
┌──────┐
│ V1.0 │ MVP: Core functionality
└──────┘
│
│ Feedback: "I wish it could..."
│
▼
┌──────┐
│ V1.1 │ Add most-requested feature
└──────┘
│
│ Feedback: "This part is confusing"
│
▼
┌──────┐
│ V1.2 │ Improve UX based on feedback
└──────┘
│
│ Continue...
▼
Each cycle is short — days or a week, not months.
Iteration in Your Projects
For MISI projects, iteration is essential. You have four weeks. Here’s a framework:
Week 1: Define and Build MVP
- What is the absolute core of your project?
- What can you show by end of week 1?
- Aim for ugly but working
Week 2: First Feedback Loop
- Show the MVP to mentors, teammates, potential users
- Gather reactions: What works? What’s confusing? What’s missing?
- Add the highest-priority improvement
Week 3: Expand and Refine
- Add features based on feedback
- Each addition: build, show, learn
- Resist the urge to add everything — prioritize ruthlessly
- Feature freeze by end of week
Week 4: Polish and Ship
- No new features
- Fix bugs
- Improve what exists
- Prepare for presentation
Notice: you’re shipping something usable by end of week 1. Not perfect. But real.
Fighting Perfectionism
This section is specifically for high-ability students, because perfectionism hits you hardest.
The Perfectionism Mindset
- “It’s not ready until it’s perfect”
- “I’ll be judged on the quality”
- “I need to think through everything first”
- “What if someone finds a flaw?”
These thoughts feel responsible. They’re actually fear wearing a mask.
The Iteration Mindset
- “Done is better than perfect”
- “I’ll learn more from shipping than from planning”
- “Feedback will reveal what I couldn’t anticipate”
- “Flaws discovered are flaws fixable”
This mindset is actually braver. Shipping requires vulnerability.
Practical Tactics
Set a ship date and honor it. “By Friday, something goes live.” Whatever state it’s in. This forces hard prioritization.
Define “good enough.” Before building, write down: “V1 is good enough if it can ___.” Refer back when perfectionism whispers.
Show work early. The longer you hide your work, the more precious it becomes. Show drafts. Get feedback while it’s still malleable.
Celebrate shipping, not perfection. “We shipped!” is the win. “It’s not perfect” is expected and fine.
Remember: you can always improve later. The code isn’t carved in stone. V1.0 becomes V1.1. Ship now, improve tomorrow.
Case Study: The Four-Week Project
The Vision: A web app that helps students find study partners based on their courses and schedules.
The Perfection Trap Approach:
- Week 1: Design everything — all screens, all features, database schema
- Week 2: Start building, realize design doesn’t work
- Week 3: Redesign while building, falling behind
- Week 4: Frantically trying to finish, ship broken product
The Iterative Approach:
Week 1 MVP:
- A form where you enter your name and courses
- A page showing everyone’s names and courses
- That’s it — a bulletin board
Ship Friday.
Week 2: Feedback: “I want to contact people” and “Hard to find my course.” Add: Contact links + filter/search by course. Ship Friday.
Week 3: Feedback: “It looks rough.” Add: Better styling, clearer layout. Ship Friday. Feature freeze.
Week 4: Polish, test, fix bugs, prepare presentation. Ship final.
Result: A working product that solves the core problem, informed by real feedback, delivered on time.
Exercise: Plan Iteratively
Exercise 1: Define Your MVP
Take a project idea (yours or hypothetical).
Write down:
- The full vision (everything you’d want it to do)
- The MVP (what’s the one core thing it must do?)
- What can you cut and add later?
Exercise 2: Version Roadmap
For the same project, sketch:
- V1.0 (MVP): ___
- V1.1 (after first feedback): ___
- V1.2 (refinement): ___
- V2.0 (major addition): ___
What would trigger moving from one version to the next?
Exercise 3: Perfectionism Reflection
Think of a time you didn’t finish something because it wasn’t perfect enough.
- What would have happened if you’d shipped it “good enough”?
- What did you lose by not shipping?
- How would iteration have changed the outcome?
Key Insights
| Concept | Implication |
|---|---|
| MVP first | Build the smallest useful thing |
| Feedback beats imagination | Real users reveal what matters |
| Ship early, improve later | Existence beats perfection |
| Iteration reduces risk | Small bets, quick corrections |
| Perfectionism is fear | Shipping requires courage |
Reflection Questions
-
Why might an “embarrassing” first version lead to a better final product than a “perfect” first version?
-
You have limited time. Should you build three features at 60% quality or one feature at 100%? Why?
-
How does iteration change the relationship between planning and doing?
Next module: Timeless Principles — the wisdom that outlasts any framework.