Try the describe, run, check loop
You can try vibe coding today with nothing installed. Open an app builder such as Lovable in your browser, make a free account and type what you want into the prompt box. A prompt is the instruction you give the AI, written in ordinary words.
Pick something small that you would use this week. The prompt below is our own sample, not a vendor's. It says who the app is for, what it does and what to leave out, and that covers most of what a tool needs from you on the first try.
Then go round the loop. Each pass takes a few minutes, and you will make many of them.
Build a page that splits a restaurant bill.
Who uses it: me and three friends, on our phones, at the table.
What it does: I type the total and the tip percentage, tick who was there,
and it shows what each person owes, rounded to the cent.
Leave out: logins, saved history and payments.- Describe one small thing. Say who uses it, what they do and what they should see. Leave logins and databases out of the first version. Lovable's own quick start ends its sample prompt with "No login or database yet", because a first version without them has less to go wrong.
- Let it build, then open the preview. The preview is the running app, drawn next to the chat. In Lovable it sits to the right of the chat panel, and every button in it works.
- Use it the way a stranger would. Press every button. Type a letter where a number belongs. Switch to the phone view, since most people will open your link on a phone.
- Report what you saw, one change per message. "The tip box accepts negative numbers. It should refuse them." gives the AI a fact to fix. "Make it better" gives it a guess.
- Keep a version you can go back to. Lovable saves every change in its version history, and Cursor saves checkpoints while its agent works. Note which version worked before you ask for something big.
A loop that stalls usually has a vague report in it. If a bug survives two rounds, describe it as steps: what you clicked, what you expected and what happened instead. The AI can retrace those steps, which it cannot do with "still broken".
Where the name came from
Andrej Karpathy, whom Collins Dictionary calls an AI pioneer, coined the term in that post. The rest of it, which Simon Willison reproduced in full on his blog, is a frank list of habits. Karpathy talks to his editor by voice, pastes error messages back with no comment and writes "I "Accept All" always, I don't read the diffs anymore." A diff is the list of lines a change adds and removes. When a bug will not go away, he asks for random changes until it does. His own verdict was mild: "It's not too bad for throwaway weekend projects."
Six weeks later Willison, a programmer and blogger, pinned the meaning down. Vibe coding, for him, is "building software with an LLM without reviewing the code it writes." An LLM, or large language model, is the kind of AI behind all of these tools. If you review the code, test it and could explain every line to someone else, he calls the work software development, even when the AI typed all of it.
That line is the useful part for you. The question is never whether an AI wrote the code. It is whether anyone checked it, and how much a mistake would cost. A party planner with a bug costs you an awkward evening. A shop that leaks card numbers costs far more.
The word spread fast. Collins named vibe coding its Word of the Year 2025 and describes it as "the use of artificial intelligence prompted by natural language to write computer code."
There's a new kind of coding I call "vibe coding", where you fully give in to the vibes, embrace exponentials, and forget that the code even exists.
Karpathy's post on X
He names vibe coding and calls it fine for throwaway weekend projects.
Source: Andrej Karpathy on X (read November 5, 2026)
Willison draws the line
Unreviewed code is vibe coding. Reviewed, tested and understood code is software development.
Source: Simon Willison's blog (read November 5, 2026)
Word of the Year
Collins names vibe coding its Word of the Year 2025.
Source: Collins Dictionary blog (read November 5, 2026)
Karpathy looks back a year on
He calls the reviewed, professional version of the work "agentic engineering".
Source: Andrej Karpathy on X (read November 5, 2026)
Karpathy's first post as X's own embed showed it on 5 November 2026, time in UTC, with the rest of the post behind Show more. The picture links to the post on X.
App builders, AI editors and terminal agents
Every vibe coding tool runs the same loop. They differ in where the code lives and how much of it you see. That difference decides which one fits a first project.
An app builder runs in your browser and hosts what it makes. Lovable is one. You type, it builds, and its Publish button puts the app on a web address you can share. You never have to open a file, though the code is there if you ask for it.
An AI editor is a program on your computer that changes the files in a folder you open. Cursor is one, and so is VS Code with GitHub Copilot. You get the files and a record of every change. You also get the job of running the app and putting it online yourself. Cursor and Copilot's agent each get a lesson in this course.
A terminal agent works in the terminal, the text window where you type commands. Claude Code, which has its own course starting at installing Claude Code, is one. It reads and edits the same files an editor would, so it suits people who already like typing commands.
Moving between kinds is possible. Lovable can sync a project to GitHub, a site that stores code and its history, and any editor can open the copy from there.
For a first project, we'd start in an app builder. You see a working app before you have to learn what a folder of code looks like, and you can still move the code to an editor later.
| App builder | AI editor | Terminal agent | |
|---|---|---|---|
| In this course | Lovable | Cursor, VS Code with Copilot | Claude Code, in its own course |
| What you install | Nothing, it runs in the browser | A desktop app | A command-line program |
| Where the app runs | Lovable hosts it at a web address | On your computer until you put it online | On your computer until you put it online |
| When you see the code | Only if you open the Code tab | All the time, in the editor | All the time, in your folder |
How Karpathy and Willison see vibe coding a year later
Karpathy looked back on X on February 4, 2026, a year after his first post. In early 2025, he wrote, AI models were weak enough that vibe coding mostly suited fun throwaway projects and demos. A year on, professionals build more and more software through AI agents, but with more oversight. His favorite name for that careful version is "agentic engineering": agents write the code, and you direct them and check what they do.
Simon Willison drew a sharper line on his blog on May 6, 2026, writing up a podcast interview. For software other people use, he calls vibe coding "grossly irresponsible", because their information is at stake. For a personal tool, where a bug hurts only you, he says go ahead. He also admits the two ways of working are blurring in his own projects.
Use their split as a test before you start. If a bug would only cost you, the describe, run, check loop above is enough. If other people will type their data into the app, plan from day one for someone to check the code, which is where the next section picks up. In the video below, from June 2025, Karpathy gives his own account of vibe coding in a keynote.
Today (1 year later), programming via LLM agents is increasingly becoming a default workflow for professionals, except with more oversight and scrutiny.

A screenshot of X's own embed of the post, taken on 5 November 2026, with the time in UTC. X cuts the post short with Show more. Select it to open the post on X.
Where vibe coding goes wrong
The loop only checks what you can see. A broken button shows up in the preview. A database that lets any visitor read every row does not, and that gap is where the serious problems sit.
Secrets are the first trap. An API key is a password one program uses to reach another service, such as a payment or email provider. Code that runs in the visitor's browser cannot keep one hidden. Lovable spots any key you paste into the chat and steers you to a separate Secrets store, with the service called from server code instead.
Data access is the second. Row-level security is a set of database rules that decides which user can see or change which rows. Lovable's security page calls misconfigured rules "a common cause of data leaks" and runs a quick scan for them each time you publish. The same page is plain that its scans "do not replace a thorough security review."
The third is code nobody reads. Karpathy's own post admits the code grows "beyond my usual comprehension", and Cursor, which sells one of these tools, draws the same conclusion in its help page on vibe coding.
You do not have to read every line to shrink that risk. Ask the AI to explain each change in plain words before you keep it, and to list every place the app stores data. An answer that surprises you is the moment to stop and find someone who codes.
We don't recommend shipping software you don't understand to production.
- Asking for the whole product in one prompt. Build one screen, check it, then add the next.
- Pasting an API key into the chat or the page. Put it where the tool keeps secrets, and ask how the app will use it.
- Letting strangers sign up before anyone has read the access rules on the data they will store.
- Accepting every change without a look. Read at least the list of files that changed, so an edit you did not ask for gets noticed.
- Connecting a service that bills by use with no spending limit. Willison singles out usage billing as a place to vibe code with extra care.
Next: build an app with Lovable
Before the next lesson, write the brief for an app you want: who uses it, what they do, and how you will know it works. Under it, list what the app must never hold, such as passwords or customer records. If that list is empty, the idea is a good first vibe coding project. If it is not, build a version without those parts first.
In the Lovable lesson you take that brief, build the app, change it by pointing at the screen and publish it to a web address. All it needs is a free Lovable account.
Check yourself
By Simon Willison's definition, what turns AI-assisted work into vibe coding?
Show answer
B. Nobody reviews the code the AI writes Willison defines vibe coding as building software with an LLM without reviewing the code it writes.
What should a first prompt for a new app leave out?
Show answer
C. Logins and a database Lovable's sample first prompt asks for no login or database yet, because a first version without them has less to go wrong.
Where does an API key for an email service belong in a Lovable app?
Show answer
A. In the Secrets store, used from server code Code running in a visitor's browser cannot keep a key hidden, so Lovable keeps keys in Secrets and calls the service from the server.
You want files you keep on your own computer and can hand to a developer later. Which kind of tool fits?
Show answer
D. An AI editor such as Cursor An AI editor changes the files in a folder on your computer, so the code is yours from the first change.
Frequently asked questions
Can you vibe code with no coding experience at all?
Yes, for small apps. Cursor's help page names designers building prototypes and product managers standing up internal tools as people it opens software to. What you still need is the habit of testing each change and describing a bug exactly.
Is vibe coding safe for a business app?
Not on its own. Before customers use it, have someone who reads code check how it stores data, signs people in and keeps keys. Lovable itself suggests a professional security review for apps that handle sensitive data.
Do you need to pay for vibe coding tools?
Not to start. Lovable's free plan includes five build credits a day, up to 30 a month. Cursor has a Free plan with limited usage, and signing in to Copilot in VS Code without a plan enrolls an eligible account in Copilot Free. A bigger project soon runs past those allowances.
Which vibe coding tool should a beginner start with?
The one that matches what you want by the end of the week. A link to share points to an app builder, which publishes for you. Files you can keep and hand to a developer point to an AI editor, where you run the app yourself.
Sources
- Andrej Karpathy on X, February 2, 2025 https://x.com/karpathy/status/1886192184808149383
- Andrej Karpathy on X, February 4, 2026 https://x.com/karpathy/status/2019137879310836075
- Simon Willison: Not all AI-assisted programming is vibe coding https://simonwillison.net/2025/Mar/19/vibe-coding/
- Simon Willison: Vibe coding and agentic engineering are getting closer than I'd like https://simonwillison.net/2026/May/6/vibe-coding-and-agentic-engineering/
- Y Combinator on YouTube: Andrej Karpathy: Software Is Changing (Again) https://www.youtube.com/watch?v=LCEmiRjPEtQ
- Collins Dictionary blog: Word of the Year 2025 https://blog.collinsdictionary.com/language-lovers/collins-word-of-the-year-2025-ai-meets-authenticity-as-society-shifts/
- Cursor Help: What is vibe coding? https://cursor.com/help/ai-features/vibe-coding
- Cursor Help: Pricing and plans https://cursor.com/help/account-and-billing/pricing
- Lovable docs: Quick start https://docs.lovable.dev/introduction/getting-started
- Lovable docs: Security overview https://docs.lovable.dev/features/security
- Lovable docs: Sync your project with GitHub https://docs.lovable.dev/integrations/github
- VS Code docs: Set up GitHub Copilot https://code.visualstudio.com/docs/setup/copilot


