BUILT IN CLASS, Swiss Academy for Digital Skills

What is vibe coding? Meaning, process and limits

Vibe coding describes how software is built with an AI agent. Read how it works in practice, what you still decide yourself and where the term is often misunderstood.

A person sits at a laptop checking a contact list they have built with an AI agent.

Vibe coding means developing software with the help of AI: you describe in plain language what an application should do, and an AI agent such as Claude Code or Codex writes and changes the code for it. The work doesn't disappear, it shifts. The brief, the testing and the decisions stay with you.

This article explains what that looks like day to day, what you as a person still have to contribute, and which assumptions about vibe coding often don't hold.

What exactly does vibe coding mean?

The term sounds casual, and that fits the way of working. ‘Vibe’ stands for steering rather than typing: you state an intention, look at the result and correct the course. Instead of writing one line after another yourself, you work back and forth with a tool that generates the code.

The difference between a chat window that shows you a code example and an AI agent matters. An agent usually works directly in your project: it reads existing files, proposes changes and makes them. You see what has changed and decide whether to keep it.

How is software built with an AI agent?

An example: you want to keep a list of contacts for a small company, showing who is due a follow-up. With an AI agent, it goes roughly like this:

  1. You describe the goal: who uses the app, which contacts appear, what people should be able to do with them.
  2. You break the task into small steps, for example the contact list first, then a detail view, then the status changes.
  3. You give the agent one step as a task. It writes or changes the code.
  4. You start the app and check whether the step does what you described.
  5. If it doesn't, you describe exactly what differs and have it fixed.
  6. Only when the step is right do you move on to the next one.

That sounds simple, and the first steps often are. It gets harder once several parts interact. If you add a filter for overdue follow-ups, the agent may change something in the list along the way that worked before. If you work in small steps and check after each one, you notice early. If you ask for a lot at once, you'll spend a long time searching later.

What stays with the human

An AI agent writes code quickly. But it doesn't know what your app is for, and it takes no responsibility for the result. Three tasks therefore remain yours.

The brief

The more precisely you describe what should happen, the better you can judge the result. Acceptance cases help here: short sentences that capture a testable behaviour. For example: ‘When I mark a contact as done, it no longer appears under open follow-ups.’ A sentence like that is both an instruction for the agent and a test criterion for you.

The testing

An app that starts isn't necessarily an app that works correctly. Testing means deliberately running through the awkward cases too:

  • What happens if someone leaves a required field empty or enters an invalid email address?
  • How does the app behave if an interface returns an empty response, reports an error or takes a long time to answer?
  • Who is allowed to see or change which data?
  • Are access keys or other secrets sitting somewhere in the code where they don't belong?

The agent won't raise many of these cases on its own. You have to ask about them and test the result yourself.

The decision

There are often several ways to go. The agent might suggest rebuilding a function that has worked until now. Whether you want that is your decision. This also includes recording what the AI contributed and what you changed yourself. That way you can explain later why the app is built the way it is, and name its limits.

Common misconceptions about vibe coding

‘I don't need to understand anything.’ You don't need to be able to write every line yourself. But you do need to understand what the app should do, how you test that, and roughly where a change has happened. Without that understanding, you can neither spot errors nor describe them.

‘If it runs, it's finished.’ An interface that looks good can crash on wrong input or save data incorrectly. A feature is only finished when it passes the agreed cases, including the failure cases.

‘The AI knows what I mean.’ An agent fills gaps in your brief with assumptions. Some fit, some don't. An unclear brief leads to a result that is hard for you to judge.

‘I can use my learning project with real company data straight away.’ A practice application that stores data in the browser is built for learning. Real customer data needs additional thought about access, storage and data protection.

‘If something goes wrong, I'll just ask the AI.’ That's often a good first step. For the answer to be useful, though, you have to narrow down the error: what did you do, what did you expect, what actually happened.

What you need to get started

To get started the way the course intends, you don't need a special computer, but you do need a suitable setup:

  • a laptop or desktop running Windows, macOS or Linux
  • permission to install software
  • Node.js version 20 or later, and Git
  • your own access to Claude Code or Codex, the cost of which comes on top of the course price

You can read how to set everything up step by step in the freely available Mission 0 on tools, even without booking the course.

How the Vibe Coding Foundation course fits in

Vibe Coding Foundation is the entry programme from BUILT IN CLASS for adults with no programming experience. Foundation stands for the guided implementation of a clearly defined task. Using Claude Code or Codex, you build a contact and follow-up app for a small company with sample data, working through exactly the tasks described above that stay with the human.

In Mission 1, you turn an idea into a clear brief. In Missions 2 and 3, you build the contact list, detail view, input validation, status changes and filters. In Mission 4, you connect the app to a simulated interface and practise handling empty responses, errors and waiting times. Mission 5 is about debugging and access cases, Mission 6 about documentation that lets others start and understand the app. Finally, you extend the app with a CSV export of overdue follow-ups. You'll find all missions in the course overview.

Each mission has criteria in the form of tests. On your computer, a command checks whether they are met; what counts is the check on the academy's server in an isolated environment. Alongside this, you keep an AI log. The course process shows how it all fits together.

At the end there is a written project exam with questions about your own project and a transfer question. An AI prepares the assessment, and a human examiner makes the decision. Details are in exam process and rules, and costs and what's included are under price.

Frequently asked questions

Is vibe coding the same as no-code?

No. With no-code tools, you click together prebuilt components. With vibe coding, an AI agent writes real code that runs on your computer and that you can read, test and change.

Do I need to know English to learn vibe coding?

The course language of the Vibe Coding Foundation is German. Code and many messages from the tools are in English, though, so a basic reading knowledge helps.

How much time does getting started with vibe coding take?

The Vibe Coding Foundation is planned at around 30 hours, for example six weeks at about five hours per week. Access runs for three months, and you learn at your own pace with no fixed dates.

Is the Vibe Coding Foundation certificate a state-recognised qualification?

No. It is a private academy certificate from BUILT IN CLASS, awarded after passing the project exam. It states the programme level, the skills assessed and the date, and can be verified via a verification link.

This article in other languages: DeutschFrançaisItalianoРусский