1. Courses
  2. AI Engineering
  3. Vibe Coding: Build Apps with AI
  4. Stop 1

30 minBeginner

What AI coding tools can and cannot do

AI coding tools can turn a plain description into a working screen in minutes. They can also hand you a beautiful app that saves nothing and shows every customer's data to everyone. This lesson explains how the tools work, the three kinds you can choose from, what they are good and bad at, and how to pick one for the reorder app you will build in this course.

By the end you can

  • Say what vibe coding means, and how the careful version in this course is different
  • Explain in plain words how an AI tool decides what code to write, and why it can be confidently wrong
  • Compare browser app builders, AI code editors and coding agents: what each sees and controls, where your code lives and how you leave
  • Pick a tool for a clickable prototype, a real app with sign-in, or a change to existing code
  • Write a first prompt for a prototype of Ravi's "my usual order" screen and check the result

The everyday picture

Imagine you want a new kitchen and you can't build one yourself. You have three ways to get help. A showroom will build a full kitchen inside its own building by the end of the day; you walk around it, ask for changes, and later they ship it to your home. A carpenter can come to your house and build what you point at, one cupboard at a time, while you watch. Or you can give a contractor your house keys and a list, and come back in the evening to see what they did.

All three are fast and skilled. None of them knows what you did not say: that your family is tall, that the tap must connect to the old water pipe, that the left cupboard holds medicine and needs a lock. Each fills the gaps with the most common choice, and the result looks finished either way. A showroom kitchen can have a beautiful tap that is connected to no water at all. AI coding tools are these three helpers. This course teaches you to choose the right helper, say what matters, and check that the water runs.

What vibe coding means

On 2 February 2025, Andrej Karpathy, a well-known AI researcher and a co-founder of OpenAI, posted about a new way of working he called . You describe what you want, accept whatever the AI writes, paste error messages back when something breaks, and, in his words, "forget that the code even exists". He said it was fine for throwaway weekend projects. The term spread fast, and Collins Dictionary named it its word of the year for 2025.

People now use the term for two different things. The programmer Simon Willison draws the line clearly. Vibe coding is building software with an AI without reviewing the code it writes. Using AI while you still read, test and understand the result is AI-assisted programming. Both are useful. The first is fine for a toy you will throw away. It is risky for anything that holds other people's data or money.

This course teaches a careful version. You can remember it as describe, check, keep control:

You do not need to write code to work this way. You need to know what to ask for, what to check, and when to stop and call an engineer.

Quick check

Which of these is vibe coding in the original sense?

How the tools work, in plain words

Every tool in this lesson runs on a . A model reads text and predicts the most likely text to come next, one small piece at a time. It learned this from a huge amount of public text and code. When you ask for "a screen with a list of products and a plus button", it writes code that looks like the thousands of similar screens it has seen.

The model only sees what is sent to it with each request. This is called its : your message (the ), earlier messages in the same chat, and the files the tool chooses to show it. Some tools also let it run commands and read what comes back. Three things follow from this, and they explain most AI mistakes:

  • It does not know your business. Nobody told it that Ravi buys on 30 days' credit, or that rice is sold only in full bags. It fills the gap with the most common answer it has seen.
  • It can be confidently wrong. A prediction comes with no warning label. Code that uses a feature that does not exist looks exactly like code that works, and an explanation of a bug can sound sure and still be a guess. People call this a .
  • It forgets what it was not shown. A new chat starts empty. In a long chat, early details may be summarised or dropped to make room (how this works varies by tool). If a rule matters, write it in a file the tool reads every time, or repeat it.

So the quality of what you get depends on two things you control: what you describe, and what the tool can see. That is why the next lesson is about writing a spec. Developers who want the deeper version, with completion, chat and agents inside a team's workflow, instruction files and reviewing AI pull requests, can read Working with AI coding assistants. Designing AI features explains the models themselves.

Your prompt Files it sees context Language model predicts likely code writes New code Unseen unless you add it Ravi's rules earlier chats live stock
The model writes code from its context: your prompt plus the files the tool shows it. Anything outside that box, such as Ravi's credit rules, yesterday's chat or today's real stock, does not exist for the model. It fills those gaps with the most likely answer and gives no warning.

Quick check

Imran shows an AI tool the order screen, but not the part of the project that saves orders. He asks why orders are not saved, and it gives a confident, detailed answer. What should he take from that?

Three kinds of tools

Tools change every few months, but in 2026 they fall into three groups. The names below are examples to help you recognise them, not recommendations. Most have a with a daily or monthly limit, and paid plans for one person commonly start at around $10 to $25 a month at the time of writing. Prices, credits and limits change often, so check each tool's current pricing page before you start.

Browser app builders, such as Lovable, Bolt, v0 and Replit. You type what you want into a chat on a website. The builder creates the whole app and shows a live next to the chat. Most can also the app on a public link and connect a . The builder sees your chat and the whole project, because it made it, and it controls everything, including where the app runs. Your code lives on the builder's servers. To leave, most can connect to or let you download the code; check how before you build anything you care about. Cost is usually credits per message, so a long afternoon of changes can use up a month's free allowance.

AI code editors, such as Cursor, Windsurf, or VS Code with GitHub Copilot. A is an app on your computer for working with code files, and the AI sits in a side panel. It sees the files you open or point to, and it suggests changes that you accept or reject. Most editors also have an agent mode that makes larger changes and runs commands, usually after asking you. Your code lives in a folder on your laptop, and you can send a copy to GitHub. You install things and run the app yourself, which later lessons show step by step.

Coding agents, such as Claude Code, OpenAI Codex CLI and Gemini CLI. These work in your project folder through the . You give a task in plain words. The agent reads the files it needs, edits several of them, runs commands (install a package, start the app, run checks), reads the result and tries again. It can do a lot in one go, so it needs the most supervision: work on a copy you can throw away, and read its summary of what changed. Many agents now also run inside editors or on the web, so the lines between the three groups keep blurring.

KindWhat it seesWhat it controlsWhere code livesHow you leave
Browser app builderYour chat and the project it madeEverything, including hostingThe builder's serversGitHub sync or download, if offered
AI code editorFiles you open or point toFile changes you acceptA folder on your laptopYou already have the files
Coding agentAny file in the project folderFiles and terminal commandsA folder on your laptopYou already have the files
App builder AI code editor Coding agent writes edits edits Builder's servers Your project folder on your laptop export or sync push Your GitHub copy
Where your code lives decides how you leave. A browser builder keeps the code on its own servers until you export or sync it. Editors and agents change files in a folder on your laptop, which you push to GitHub. Either way, a copy on GitHub that you own is your exit door.

Quick check

You build a prototype in a browser app builder. Where is the code, and how do you make sure you keep it?

Good at, bad at

The tools are strong where the internet has thousands of examples and where a mistake is easy to spot:

  • Screens and forms: a product list, a sign-up form with required fields, a confirmation screen.
  • Standard work, such as adding an item to a usual order, changing its quantity or removing it.
  • Wiring well-known services together, such as a common sign-in service or a payment provider's test mode, following that service's public instructions.
  • Explaining code in plain words, line by line.
  • Fixing errors you paste in, when the error message points at the problem.

They are weak where the answer is not written anywhere they can see, or where a small error costs real money:

  • Business rules nobody wrote down. A tool can't know that Ravi's order must stay under his credit limit, or that a shop can only order full cartons, unless you say so.
  • Security and access rules. Who may see and change which data is easy to leave out, and the app still looks finished. Data and security basics covers and access rules.
  • Data that must be exactly right, like money and stock. Rounding a price, adding up an order, or taking stock off twice can go wrong in ways a screen never shows.
  • Big changes in one go. "Rebuild the order flow with a new design" changes so much at once that you can't check it. Small steps are easier to check and to undo.
  • Keeping a big project consistent. The tool sees only part of a large project at a time, so it may add a second way of doing something that already exists.
  • Knowing what is current. The model learned from text up to a certain date. It may suggest an old version of a tool or a setting that has since changed.

The pattern behind both lists: an AI tool produces what is likely, and you check what is true. The more an error would cost, the more you check. This is not only theory. In 2025 a security researcher scanned 1,645 apps from one popular builder's public showcase and reported that 170 of them let anyone read personal data from their databases. Their screens worked. Their access rules were missing.

Quick check

Which request is an AI tool most likely to get right the first time?

Picking a tool, and the risks you own

Choose by the job in front of you. Most beginners meet three jobs:

JobGood first choiceWatch out for
A clickable to show RaviA browser app builder: fastest from words to something on a phone, nothing to installUse sample data only, label it as a prototype, and remember that nothing is saved
A real app with sign-in and a database, used by a few real shopsAn app builder or an AI editor, with the code in GitHub from day oneThe parts that look done and aren't: saving, access rules, secrets. Have an engineer review before real data goes in
Changing an existing project someone else builtAn AI editor or a coding agent, working on a separate copy of the code where you see every changeMost builders can't open an existing project. Never let an agent change the live app directly

Whatever tool you use, four risks stay yours. The tool's company does not own them, and neither does the AI.

  • Secrets. An works like the key to a building. Never paste one into a chat, and never let it end up in code that runs in the browser, where anyone can read it. Data and security basics shows where keys belong.
  • Other people's data. Build with sample data. Real shop names, phone numbers and orders go in only after access rules are checked. Also read what the tool's company keeps from your chats and files, and don't paste a company's private data into a tool the company has not approved.
  • Licences. Code and packages the AI adds come with a that sets the rules for reuse. Ask the tool to list every package it added and its licence, and check the list before you share the app.
  • Cost overruns. Credits, hosting and AI usage can all grow quickly. Set a spending limit where the tool allows one, and look at the bill every week in the first month.

Quick check

The builder asks for a payment provider's secret key so it can "make payments work". What do you do?

Build it

Set up a tool and make a first clickable prototype of Ravi's "my usual order" screen, then check it like a careful reviewer.

  1. Pick a tool and make an account

    For a first prototype, pick any browser app builder with a free tier. Before you type anything, find two things in its help pages: how to connect GitHub or download the code, and how many free messages or credits you get. Write both down. If you are a developer and prefer an editor or agent, that works too; the prompt below is the same.

  2. Write a short, specific first prompt

    Say who it is for, what is on the screen, the sample data, and what is out of scope. Paste this, or your own version of it:

    Markdown
    Build a clickable prototype of one phone screen called "My usual order".
    It is for Ravi, who owns a small corner shop and reorders the same items every week.
    
    Show:
    - The title "My usual order" and the shop name "Ravi's Corner Store".
    - A list of 6 items. Each row shows name, pack size, price per pack and quantity:
      Rice 5 kg bag, $6.50, qty 4
      Cooking oil 1 L, $2.80, qty 6
      Sugar 1 kg, $1.10, qty 10
      Tea 100 bags, $2.40, qty 3
      Instant noodles 30-pack, $7.20, qty 2
      Dish soap 500 ml, $1.30, qty 5
    - A minus and a plus button next to each quantity. Quantity never goes below 0.
    - The order total at the bottom, updated when any quantity changes.
    - A big "Send order" button that opens a second screen saying the order was sent.
    
    Rules:
    - Prototype with sample data only. No sign-in, no database, no payments.
    - Show a small "Prototype - sample data" label on both screens.
    - Large text and buttons that are easy to tap on a small phone.
    - Only these two screens.
  3. Run it and compare with what you expect

    Send the prompt and wait for the preview. Your screen will look different from anyone else's, even with the same prompt, because the model predicts a fresh answer each time. The behaviour should match this:

    Output
    Screen 1 "My usual order": 6 rows, minus and plus buttons, label "Prototype - sample data"
    Starting total: $81.90
    Tap + on Rice: quantity 5, total $88.40
    Tap - on Tea four times: quantity 0, total $81.20 (the fourth tap does nothing)
    Tap "Send order": screen 2 says the order was sent
    Reload the page: quantities go back to the sample data (nothing is saved, as asked)
  4. Check the result with a checklist

    Go through every line yourself on a phone, or in the preview at phone size. Write down each line that fails.

    Markdown
    Prototype check
    - [ ] Every item, price and starting quantity matches the prompt
    - [ ] The total is right at the start ($81.90) and after each change
    - [ ] Quantities cannot go below 0
    - [ ] The prototype label shows on both screens
    - [ ] No sign-in, database or payment was added that I did not ask for
    - [ ] I can name what is fake: sample data, and a Send button that saves nothing
    - [ ] I know how to get the code out (GitHub or download) and I have tried it once
  5. Fix one thing with a small follow-up

    Pick the first failed line and ask for that one fix only, for example: "The total does not change when I tap minus on Tea. Fix only that, and tell me what you changed." Check the whole list again afterwards, because a fix in one place can break another.

Bring it to your team

Ask these before anyone builds on an AI-made prototype.

  • Where does the code live today, and do we have a full copy in a GitHub account we control?
  • Which parts are fake: sample data, buttons that only change the screen, sign-in that lets anyone in?
  • Which business rules are in it, who decided them, and where are they written down?
  • What does the tool's company keep from our chats and files?
  • What will this cost per month at the pace we are building?

Red flags

  • A demo where "Send" shows a success message and nobody has looked at where the order went.
  • Real customer or shop data in a prototype.
  • An API key in a chat message or in the app's browser code.
  • "The AI said it's secure" as the only security check.
  • No one has tried exporting the code.

Practice

Pick the tool for three situations

For each situation, pick a kind of tool (browser app builder, AI code editor or coding agent) and explain your choice in two or three sentences. Name one thing you would check or protect in each.

  1. Tomorrow at 10 am Imran visits Ravi and two other shop owners. He wants something they can tap on a phone to react to the reorder idea. No real data is needed.
  2. After good feedback, five partner shops will use the app for real for four weeks. Each shop signs in, its usual order is saved, orders reach a sales rep's list, and one shop must never see another shop's orders.
  3. Tomás has a small existing web page, stored in a GitHub repository, that lists phone orders by sales rep. He wants a filter by city added without breaking what is there.
  • Situation 1 uses a browser app builder, with sample data and a prototype label
  • Situation 2 keeps the code in GitHub and names access rules (one shop cannot see another's orders) and secrets as things to check, with an engineer's review before real data
  • Situation 3 uses an AI editor or a coding agent on a separate copy of the code, and says how the change is checked before it reaches the live page
  • Each answer explains the choice by what the tool sees, controls or where the code lives, not by brand
Show a model answer

1. A browser app builder. It is the fastest way from a description to something on a phone, and nothing needs to be saved. I would use sample data only, put a "Prototype" label on every screen, and tell the shop owners that the Send button does nothing yet.

2. An app builder or an AI editor is fine for the screens, but the code goes into GitHub from the first day so we own a copy. The parts that matter are invisible on screen: orders must really be saved, and the database must only let each shop read its own orders. I would test that with two test shops, keep keys out of the browser code, and ask an engineer to review before any real shop signs in.

3. An AI editor or a coding agent, because the code already exists in a repository and a builder can't open it. Work on a separate copy, ask for only the city filter, read the summary of what changed, and have Tomás test the page with real-looking data before the change goes live.

Write the prompt for a second screen

Write a first prompt, 10 to 20 lines, for a prototype of Ravi's "Past orders" screen: his last four orders, each with a date, the number of items and the total, and a "Reorder this" button on each. Then write three checks you will do on the result.

  • The prompt says who it is for and that it is a phone screen
  • It gives concrete sample data (dates, item counts, totals in dollars)
  • It says what is out of scope: no sign-in, database or payments, and a prototype label
  • The three checks can be tested by tapping, including what "Reorder this" should do
Show a model answer
Markdown
Build a clickable prototype of one phone screen called "Past orders".
It is for Ravi, who owns a small corner shop and reorders most weeks.

Show his last 4 orders, newest first. Each row: date, number of items, total.
  12 Oct: 6 items, $81.90
  5 Oct: 6 items, $79.40
  28 Sep: 5 items, $64.20
  21 Sep: 6 items, $81.90
Each row has a "Reorder this" button. It opens the "My usual order" screen
with that order's quantities filled in. Nothing is sent from this screen.

Rules:
- Sample data only. No sign-in, no database, no payments.
- Show a "Prototype - sample data" label.
- Large text and buttons for a small phone.

My checks:
1. The four orders show newest first with the dates and totals above.
2. "Reorder this" on 28 Sep opens the order screen with 5 items, not 6.
3. Nothing on this screen sends an order.

Check yourself

Imran's prototype shows "Order sent!" and Ravi loves it. Imran wants to tell Ken that sending works. What should he do first?

Yesterday, in a long chat, Imran told the builder that partner orders get 5% off above $200. Today he opens a new chat and asks it to "add the discount rule". It adds 10% off every order. What best explains this?

Which of these jobs needs the most checking by a person, even when the AI's result looks right?

Flashcards

Open my review

Key takeaways

  • Vibe coding means accepting AI code without reviewing it. This course teaches the careful version: describe, check, keep control.
  • The model predicts likely code from what it is shown. It does not know your business, it can be confidently wrong, and it forgets what is not in its context.
  • Browser builders are fastest for prototypes and keep the code on their servers; editors and agents work on a folder you own. Know how you will leave before you start.
  • AI tools are good at screens, forms, standard CRUD and explaining code, and weak at unwritten rules, access rules, exact money and stock, and big changes.
  • Secrets, other people's data, licences and cost stay your responsibility. Follow the data before you call anything done.

Sources and further reading

Episode transcriptThe beautiful app that saved nothing · about 12 minutes · tap any line to play from there
  1. NadiaImran, last Friday you built an app in one afternoon. Tell people what happened.
  2. ImranI typed a few sentences into a browser app builder. Forty minutes later I had a reorder app for partner shops. Ravi's usual items, plus and minus buttons, a running total, and a big green Send order button. It looked better than some apps we pay for.
  3. NadiaAnd then I asked one question.
  4. ImranWhere did the order go? The answer was nowhere. The items were sample data written into the screen, and the button only showed a message that said Order sent.
  5. NadiaSo this episode is about what AI coding tools can do, what they can't, and how to pick the right one. You don't need to write code to follow it.
  6. ImranSome context. About fifteen hundred partner orders a week still come in by phone to roughly forty sales reps, and about one in twelve is corrected after delivery. I wanted a small prototype to test with a few shops before asking Lagoon Digital, the Partner app agency, for anything.
  7. NadiaHere's the picture I keep in my head. You want a new kitchen and you can't build one yourself. A showroom can build a full kitchen in its own building by tonight. A carpenter can come to your house and build what you point at. Or you give a contractor your house keys and a list.
  8. ImranAnd all three are fast and skilled.
  9. NadiaThey are. But none of them knows what you didn't say. That your family is tall. That the tap must connect to the old water pipe. Each fills the gaps with the most common choice, and the result looks finished either way.
  10. ImranSo a showroom kitchen can have a gorgeous tap that isn't connected to any water. That was my Send button.
  11. ImranBefore the tools, where does the name vibe coding come from?
  12. NadiaAndrej Karpathy, a well-known AI researcher, used it in a post in February twenty twenty-five. He described building software by talking to an AI, accepting whatever it writes, pasting errors back when things break, and forgetting the code exists. He said it was fine for throwaway weekend projects.
  13. NadiaThe term spread so fast that Collins Dictionary made it its word of the year for twenty twenty-five.
  14. ImranSo is this whole course teaching me to not read the code?
  15. NadiaNo. The programmer Simon Willison draws a useful line. Vibe coding, in the original sense, means you don't review what the AI writes. If you read it, test it and understand it, that's AI-assisted programming. The first is fine for a toy. It's risky for anything with other people's data or money.
  16. ImranAnd what we teach is in between?
  17. NadiaA careful version. Three words. Describe, check, keep control. Describe what you want in writing before you ask. Check every change yourself, like a user would. And keep control: small steps you can undo, your own copy of the code, and your own decisions on data, money and security.
  18. ImranSo how do these tools actually decide what code to write?
  19. NadiaUnderneath every one of them is a large language model. It reads text and predicts the most likely text to come next. It learned that from a huge amount of public text and code. Ask for a screen with a product list and a plus button, and it writes something that looks like thousands of screens it has seen.
  20. NadiaAnd it only sees what is sent with each request. That's called its context. If you can see your screen, the first diagram shows your prompt and the files it can see flowing into the model. Underneath, in a dashed box, are the things it never sees: Ravi's rules, earlier chats, live stock.
  21. ImranSo three things follow. It doesn't know our business. It doesn't know Ravi buys on thirty days' credit, or that rice only comes in full bags.
  22. NadiaSecond, it can be confidently wrong. A prediction comes with no warning label. Code that uses something that doesn't exist looks exactly like code that works. People call that a hallucination.
  23. ImranAnd third, it forgets what it wasn't shown. A new chat starts empty.
  24. NadiaYes. And in a long chat, early details can get summarised or dropped, depending on the tool. If a rule matters, write it down somewhere the tool reads every time.
  25. ImranWhich is why the next lesson is about writing a spec.
  26. NadiaExactly. Now the three kinds of tools. First, browser app builders. Lovable, Bolt, v0 and Replit are examples, not recommendations. You chat on a website, it builds the whole app and shows a live preview. It can often host the app and connect a database too.
  27. ImranThat's what I used. Fast, and nothing to install.
  28. NadiaSecond, AI code editors, like Cursor, Windsurf, or VS Code with GitHub Copilot. An app on your computer for working with code files, with the AI in a side panel. It sees the files you open, and suggests changes you accept or reject.
  29. NadiaThird, coding agents, like Claude Code, OpenAI Codex CLI and Gemini CLI. They work in your project folder through the terminal, the text window where you type commands. You give a task, and the agent reads files, edits several, runs commands, reads the result and tries again.
  30. ImranThat sounds like the contractor with the house keys.
  31. NadiaIt is. So it needs the most supervision. Work on a copy you can throw away, and read its summary of what changed. And the lines between these groups keep blurring. Most editors now have an agent mode too.
  32. ImranWhat about cost? My free credits were mostly gone by the end of Friday.
  33. NadiaMost tools have a free tier with a daily or monthly limit. Paid plans for one person commonly start around ten to twenty-five dollars a month right now. But prices and limits change often, so check the pricing page before you start.
  34. NadiaThe question people forget to ask is where the code lives. The second diagram shows it. A builder keeps your code on its own servers. Editors and agents change files in a folder on your laptop. Both arrows end in one green box at the bottom: your own copy on GitHub.
  35. ImranGitHub being the website that stores code projects and every version of them.
  36. NadiaYes. With a builder, you leave by syncing to GitHub or downloading the code. Find out how on day one, and try it once.
  37. ImranOkay. What are they actually good at?
  38. NadiaThings with thousands of examples online, where a mistake is easy to spot. Screens and forms. Standard CRUD, which means create, read, update and delete records, like adding an item to a usual order. Wiring well-known services together. Explaining code in plain words. Fixing an error you paste in.
  39. ImranAnd bad at?
  40. NadiaBusiness rules nobody wrote down. Security and access rules. Data that must be exactly right, like money and stock. Big changes in one go. Keeping a big project consistent. And knowing what's current, because the model learned from text up to a certain date.
  41. ImranWhich brings us back to my Friday. Because after the Send button, I asked the builder to save orders in a database and add sign-in.
  42. NadiaTell them what you found.
  43. ImranI signed in as two test shops. I sent an order from the first one and opened the order list as the second. Shop B could see shop A's order. And every other order.
  44. NadiaBecause the orders table had no rule saying a shop may only read its own orders. The app asked for all orders, and the database gave it all of them.
  45. ImranI assumed that was a rare glitch.
  46. NadiaIt isn't. In twenty twenty-five a security researcher scanned one thousand six hundred and forty-five apps from one popular builder's showcase, and reported that one hundred and seventy let anyone read personal data. The screens worked. The access rules were missing.
  47. ImranSo the tool built exactly what I described. Screens. Saving and privacy were rules I never wrote down.
  48. NadiaThat's the whole lesson in two sentences. An AI tool produces what's likely. You check what's true. The more an error costs, the more you check.
  49. ImranSo how do I pick a tool?
  50. NadiaBy the job. For a clickable prototype to show Ravi, a browser builder, with sample data and a prototype label. For a real app with sign-in and a database, a builder or an editor, with the code in GitHub from day one and an engineer reviewing access rules before real data goes in.
  51. NadiaAnd for changing an existing project someone else built, an editor or an agent, working on a separate copy where you see every change. Never let an agent change the live app directly.
  52. ImranAnd whatever I pick, some risks stay mine.
  53. NadiaFour of them. Secrets, like an API key, which is a secret code that lets a program use a service. Never paste one into a chat or into code that runs in the browser. Other people's data: build with sample data. Licences on the code and packages the AI adds. And cost overruns, so set a spending limit.
  54. ImranLet me say the build in words. You pick a builder with a free tier, and first you find out how to export the code and how many credits you get. Then you write a short prompt for Ravi's my usual order screen: six sample items with prices and quantities, plus and minus buttons, a total, and a Send button.
  55. NadiaAnd you say what's out of scope. No sign-in, no database, no payments, and a prototype label on both screens. Then you check it. The starting total in the lesson's sample is eighty-one dollars ninety. Tap plus on rice, and it should read eighty-eight forty.
  56. ImranAnd when you reload, everything goes back to the sample.
  57. NadiaRight. Nothing is saved, because you asked for that. The point is that you know exactly what's fake.
  58. ImranFor my team, I'll ask three things before anyone builds on a prototype. Where does the code live, and do we have a full copy we control? Which parts are fake? And which business rules are in it, and who decided them?
  59. NadiaGood. Now a question for the listener. The builder asks for your payment provider's secret key so it can make payments work. What do you do? Take a second.
  60. NadiaYou stop. A key pasted into a chat can be stored or written straight into code anyone can read, and deleting the message doesn't undo that. A prototype doesn't need real payments.
  61. ImranLet me sum up. One, vibe coding means accepting code without reading it, and we teach describe, check, keep control. Two, the model predicts from what it sees, so it doesn't know our rules. Three, pick the tool by the job, and know where your code lives.
  62. NadiaOne nuance on the second. Telling the tool your rules helps a lot, but it still doesn't prove anything. Follow the data. Send an order, then look for it somewhere else.
  63. ImranAnd next time?
  64. NadiaNext episode, we write the spec I wish you'd had on Friday: users, screens, data and rules for Ravi's reorder app, written so an AI can follow it.
Finished reading?Mark it complete to fill in its stop on your course line.

Use it at work

Unit-test starter

A function with a test file: the happy path, the edges and the errors, grouped and named clearly.

Open in the Code Lab
Next stopA spec the AI can follow
Was this lesson helpful?
Questions and discussion

Loading the discussion…