1 min lesson
Fidelity discipline
Work through this case: "You're prototyping to find out whether a new inline-diff reveal animation feels good. What fidelity is appropriate and what should you deliberately skip?" Say what you would do and why.
Step 1 of 2
Fidelity disciplinematch fidelity to the question
Every prototype answers a question. Build only enough to answer it. Over-building is the most common prototyping mistake, because polishing feels like progress while it quietly burns the time you needed to test the idea.
- The question
- Does this motion feel good?
- Right fidelity
- One screen, real timing, fake data
- What to skip
- Routing, state, real backend
- The question
- Is this flow understandable?
- Right fidelity
- Clickable happy path, low visual polish
- What to skip
- Edge cases, error states, theming
- The question
- Will this scale to 10k rows?
- Right fidelity
- Throwaway perf harness, real data volume
- What to skip
- Visual design entirely
- The question
- Does the team buy the direction?
- Right fidelity
- Polished hero moment only
- What to skip
- Everything outside the demo path
| The question | Right fidelity | What to skip |
|---|---|---|
| Does this motion feel good? | One screen, real timing, fake data | Routing, state, real backend |
| Is this flow understandable? | Clickable happy path, low visual polish | Edge cases, error states, theming |
| Will this scale to 10k rows? | Throwaway perf harness, real data volume | Visual design entirely |
| Does the team buy the direction? | Polished hero moment only | Everything outside the demo path |
A prototype that answers its question and nothing else is a good prototype.
A prototype is an argument, not a foundation. Build it so you are willing to delete it. The moment you start protecting prototype code, you have stopped prototyping and started maintaining - and you will defend a worse idea because you are attached to the work.
Learn more
Full explanation
Prototype-to-production judgment
Prototype-to-production judgmentwhat to keep, what to rewrite
Sometimes a prototype earns a path to production. Knowing what survives that transition is its own craft. The interaction model and the timing usually keep; the implementation usually does not.
The validated interaction model and choreography
Tuned timing/easing values you proved by feel
The component API shape that felt right to use
Hardcoded data, faked latency, shortcut state
Accessibility and edge cases you deferred
Anything that skipped the design system
Learn more
Optional practice