What you'll be able to do
- Get a clear, accurate explanation of code you didn't write
- Write debugging prompts that include the error, the code, and expected vs actual
- Generate unit tests and boilerplate you can trust after review
- Use AI as a first-pass code reviewer that catches obvious issues
- Learn an unfamiliar API or library fast — and verify the snippets it gives you
Inside the path
A focused set of five-minute lessons — each one ends with a hands-on exercise, not a quiz you can guess.
Explain code you didn't write 5 min
Prompt AI to walk through unfamiliar functions, flag side effects, and surface the parts that will bite you.
Debug with real context 6 min
The anatomy of a debugging prompt: the exact error, the relevant code, and what you expected vs what happened.
Tests and boilerplate on tap 5 min
Generate unit tests, fixtures, and scaffolding fast — then review them like any other pull request.
AI as a first-pass reviewer 5 min
Catch obvious bugs, edge cases, and smells before a human reviewer ever sees the diff.
Learn a new API without the guesswork 5 min
Get from docs to working code faster — and verify every snippet by actually running it.
Try a sample exercise
This is the kind of card you'd practice inside Iro — you do the thinking, then get feedback.
◆ Sample exercise · Prompt practice
Your Node function throws "TypeError: Cannot read properties of undefined (reading 'map')" and you want AI to help you fix it fast — not guess at code it can't see.
Your task: Pick the debugging prompt that will actually get you an accurate fix.
- "Fix my code."
- "Why is my JavaScript broken? It's throwing an error."
- "I'm getting `TypeError: Cannot read properties of undefined (reading 'map')` on line 12 of this function. Here's the function and the shape of the `data` argument I'm passing. I expected it to return an array of user names; instead it crashes when the API returns no users. What's the cause and the fix?"
- "Guess what's wrong with my app and rewrite the whole thing to be safe."
See why the detailed prompt wins
The winning prompt gives the model everything it needs to reason instead of guess: the exact error message, the relevant code and the shape of the input, and a clear statement of expected vs actual behavior (should return names; instead crashes on an empty API response). That last detail even points at the likely root cause — an unguarded `.map` on an undefined value. "Fix my code" and "why is it broken" force the model to invent context, so you get confident, generic answers that may not match your bug at all. And you never ask it to blindly rewrite everything — you get the cause, then verify the fix by running it. In Iro you'd build a debugging prompt like this and get feedback on the context you left out.
Why "fix my code" wastes your time
AI can't see your repo, your stack trace, or what you expected to happen. When you paste "fix my code," the model fills all of that in with assumptions — and returns a confident answer to a problem you may not have. The developers who move fast with AI give it what a good teammate would need: the exact error, the relevant code, the inputs, and a clear expected-versus-actual.
Context is the whole game. A debugging prompt with the error message, the failing function, the input shape, and what should have happened often gets the root cause on the first try. The same bug described as "it's broken" gets you a guessing game.
The highest-leverage uses for developers
- Explaining code: walk through an unfamiliar function or library, flag side effects, and surface the risky parts before you touch them.
- Debugging: supply the error, the code, and expected vs actual — and let the model reason instead of guess.
- Tests & boilerplate: unit tests, fixtures, config, and scaffolding you review like any pull request.
- Code review: a fast first pass for obvious bugs, edge cases, and smells before a human looks.
- Learning APIs: get from docs to a working snippet quickly — then run it to confirm it's real.
The one rule under all of it: run it, read it, verify it. AI writes confident code that's sometimes wrong.