Objective
Your mission
Write a complete 5-part spec for a small app, build from it, and evaluate whether the spec produced a close-to-right first attempt. Output: spec_and_build.md.
You need: Any AI coding tool. A text editor.
Time: 30 minutes.
Step 1: learn the 5-part spec framework (5 min)
Every good spec has 5 parts:
1. What It Is — One sentence. "A single-page landing page for my freelance web design business."
2. Who It's For — Who will use this. "Potential clients who are small business owners looking for a web designer."
3. Features (What It Does) — List every feature explicitly. If you don't list it, the AI will guess.
- Bad: "It should have a form"
- Good: "Contact form with fields: name, email, project type (dropdown: Website, Landing Page, E-commerce, Other), message. On submit, show a success message."
4. Style (What It Looks Like) — Be specific. Colors, layout, mood.
- Bad: "Make it look good"
- Good: "Clean, modern, white background with navy blue (#1e3a5f) accents. Sans-serif font. Generous whitespace. Mobile-first."
5. Constraints (What You Don't Want) — Explicitly state what to exclude.
- "No blog, no pricing table, no team page, no testimonials, no dark mode toggle. Single page only."
Specificity vs. verbosity
A good spec is specific, not verbose. "Tip buttons: 15%, 18%, 20%, 25% in a horizontal row of pills, selected one highlighted green (#10b981)" is specific. "The tip buttons should be nicely styled and easy to use with good colors and a modern look" is verbose but says nothing the AI can act on. Every sentence should tell the AI something it can implement. If a sentence doesn't change what the AI builds, delete it.
Step 2: write your spec (10 min)
Pick something you want to build — smaller than your Phase 00 project. Write the full 5-part spec.
Write in your file:
## My Spec
### What It Is
[one sentence]
### Who It's For
[who will use this]
### Features
1. [feature 1]
2. [feature 2]
3. [feature 3]
...
### Style
[specific colors, layout, mood, responsive needs]
### Constraints
[what NOT to include — be explicit]
Step 3: build from it (10 min)
Paste your spec into your AI coding tool. Let it build. Don't correct anything yet — you're testing the spec, not the AI.
Step 4: evaluate (5 min)
Compare the result to what you expected:
Write in your file:
## Evaluation
Did the spec produce a close-to-right first attempt? [yes/no/mostly]
What did the AI get right? [list]
What did the AI get wrong? [list]
Were the gaps in the spec or in the AI? [analyze]
What would I add to the spec to fix the gaps? [specific additions]
Your spec says "It should have a form." The AI builds one with the wrong fields. Where was the gap?
If a feature isn't spelled out, the AI guesses. "Contact form with name, email, project type (dropdown) and message; show a success message on submit" leaves nothing to guess.