0Pricing
Vibe Coding · Lesson

Iterating on a Prompt

Refine, don't restart — steer the AI step by step.

Iterating on a Prompt is a free Vibe Coding lesson on CoddyKit — lesson 4 of 4. You can read the complete lesson below for free — then practise it hands-on in the browser with a built-in code editor and a 24/7 AI tutor. It is part of the Vibe Coding learning path, one of 4 lessons in the course, and your progress syncs across the web and the CoddyKit app.

The First Answer Is a Draft

Beginners often delete everything and start over when the AI's first try isn't perfect. Pros do the opposite: they iterate. They treat the first output as a draft and steer it with follow-up messages.

This is the rhythm of real vibe coding — refine, don't restart. This lesson teaches you how to nudge the AI toward exactly what you want, step by step.

The Iteration Loop

Every build follows a simple loop:

  • Prompt — ask for something
  • Run — preview the result in Bolt, v0, or your editor
  • React — note what's right and what's off
  • Refine — give a focused follow-up

You repeat this loop a few times per feature. Each pass gets you closer.

Refine, Don't Restart

The AI remembers the conversation. So you don't re-describe the whole app — you just say what to change. This keeps everything you already liked.

Restarting (wasteful):
  "Build the whole todo app again but with bigger buttons."

Refining (smart):
  "Make the Add button bigger and move it to the right of
   the input."

Change One Thing at a Time

When you ask for five changes at once, it's hard to tell which fix helped and which broke something. Iterate in small steps so you can see the effect of each one.

Step 1: "Change the theme color to purple (#7c3aed)."
   (check it looks right)
Step 2: "Now add a subtle hover effect to the buttons."
   (check again)
Step 3: "Now make it work on mobile widths."

Point to What's Wrong

Good iteration feedback names the specific thing that's off and what you want instead. 'It's bad' gives the AI nothing to work with.

Weak feedback:  "That's not right, try again."

Strong feedback: "The list items are cramped. Add more vertical
                  space between them and a thin divider line."

Keep What Works

When part of the output is great, say so and protect it. Telling the AI what to keep stops it from rewriting code you already liked during the next change.

"The layout and colors are perfect — keep those exactly.
 Only change this: when the list is empty, show the text
 'No tasks yet. Add one above!' centered in gray."

Iterating on Logic, Step by Step

Iteration works for behavior too. Start with a basic version, then layer on rules. Here's a greeting function after one refinement step — try running it.

// Step 1 result: a simple greeting
// Step 2 refinement: "also handle an empty name"
function greet(name) {
  if (!name) return 'Hello there!';
  return 'Hello, ' + name + '!';
}

console.log(greet('Sam'));
console.log(greet(''));

When to Restart Instead

Iteration is the default — but sometimes a fresh start is faster. Restart when:

  • The code has become a tangled mess after many edits
  • You realize the approach is fundamentally wrong
  • The AI is stuck in a loop, re-breaking the same thing

In that case, write a clean new prompt that includes everything you learned.

Roll Back Bad Steps

Sometimes a refinement makes things worse. Don't try to patch a patch — go back. Most tools let you undo: Cursor and Claude Code track edits, and Git lets you revert to a known-good version.

A clean rollback plus a sharper prompt beats five rounds of damage control.

"That last change broke the layout. Undo it and go back
 to how the page looked before. Then instead, just
 increase the font size of the headings to 24px."

Give Feedback in the AI's Language

Speed up iteration by reacting to concrete things: the live preview, an error message, or a screenshot. Many builders like v0 and Lovable let you click an element and say 'change this'.

The more precisely you point, the fewer rounds you need.

Fast iteration cues:
- "See the red error in the console? Fix that."
- "The button I just clicked — make it full-width."
- "Match the spacing to the screenshot I shared."

A Real Iteration Session

Here's how a few turns of refinement feel in practice. Each message is short because the AI remembers the rest.

You: "Build a tip calculator: bill input, tip % buttons, total."
AI:  (produces it)
You: "Add a 'split between N people' field."
You: "Round each person's share to 2 decimals."
You: "Keep all that — just make the total bold and bigger."

Quick Check

The AI's first version of your app is 90% right — the layout is great but one button is the wrong color. What's the best next move?

Recap: Steer, Don't Restart

Great vibe coding is a conversation, not a single command:

  • Treat the first answer as a draft
  • Run the prompt → run → react → refine loop
  • Change one thing at a time, point to what's wrong
  • Keep what works; roll back bad steps
  • Restart only when the approach is truly wrong

You've now mastered the core of prompting: structure, specificity, context and iteration. You're ready to build your first real app by talking to AI!

Frequently asked questions

Is the “Iterating on a Prompt” lesson free?

Yes — the full text of “Iterating on a Prompt” is free to read here on the web, and the Vibe Coding course includes 4 lessons in total. To practise it interactively (a built-in code editor and a 24/7 AI tutor) and unlock the rest of the Vibe Coding course, upgrade to CoddyKit PRO.

What will I learn in “Iterating on a Prompt”?

Refine, don't restart — steer the AI step by step. You practise Vibe Coding with hands-on code you run directly in the browser, and a 24/7 AI tutor answers your questions as you work through the lesson.

Do I need any experience to start Vibe Coding?

No prior experience is required. Vibe Coding on CoddyKit is structured for beginners through advanced learners; this is — lesson 4 of 4, so you can start here or from the beginning and move at your own pace.

How long does the “Iterating on a Prompt” lesson take?

Most CoddyKit lessons take about 5–10 minutes. Each one is bite-sized and interactive, so you make steady progress and pick up exactly where you left off across the web and the app.

Can I write and run code in this Vibe Coding lesson?

Yes. Every Vibe Coding lesson includes a built-in code editor, so you write and run real code right in your browser and get instant AI feedback — no local setup required.

All lessons in this course

  1. Anatomy of a Good Build Prompt
  2. Being Specific
  3. Giving the AI Context
  4. Iterating on a Prompt
← Back to Vibe Coding