Vibe Coding
Vibe Coding Course
How to build software with AI without handing over the job: pick a tool, write a clear prompt, review the diff, run tests, and ship a Python project you can still explain.
What this course is
Vibe coding means directing an AI to write code in plain language, while you stay responsible for the result. This course is the playbook: which tool to open, how you sit down, what you type, what you attach, when you accept a diff, and how you ship a slice you can defend.
You will not only read about prompting. You will run a repeatable job: pick a tool that can edit your repo, pick one goal, give the agent the right files, demand a plan, review the patch, run tests yourself, then commit.
- Choose an editor or terminal agent (Cursor, VS Code + Copilot, Claude Code, and others) and stay with it.
- Write prompts that name the goal, files, constraints, and definition of done.
- Use a loop you can repeat: explore, plan, implement a small slice, review, test, commit.
- Give the model the right files and project rules instead of dumping the whole repo.
- Treat every generation like a pull request. If you cannot explain it, do not keep it.
- Use tests and Git as guardrails so a bad generation is easy to undo.
You do not need to be an expert. You do need to read the code the AI writes. Examples are in Python so you can follow along with the rest of StudyGrid. The method works in other languages if you can read them.
How you work here
The agent is a fast intern. You are the engineer: you choose the tool, the work, the review, the commands, and Git. The How You Work lesson is the session guide — keep it open on day one. The Tools lesson is the stack picker — open it before you install anything.
| In a session you… | You do not… |
|---|---|
| Open a real project folder in Cursor, VS Code, or a CLI agent | Paste a vague wish into a browser chatbot |
| State one goal and a done command | Ask for an app, a redesign, and a database at once |
| Attach two or three files | Attach the whole monorepo “just in case” |
| Read the diff, then run pytest yourself | Click Accept All because the summary sounded confident |
| Commit a green slice or revert | Leave a half-broken tree for tomorrow |
How to take this course
- Start in order.Open What Is Vibe Coding, then How You Work, thenTools, then Setup. Use Next at the bottom of each page.
- Pick one tool and make a practice folder.Tools shows Cursor, VS Code + Copilot, Claude Code, and the rest. Setup then builds a small repo, a virtualenv, pytest, and a short rules file. Do not practice on a work app until the loop feels boring.
- Do the 30-minute session.How You Work walks through explore → plan → tests → implement → review → pytest → commit on a tiny helper.
- Practice each later chapter on that same folder.After Prompts, rewrite a weak prompt. After Review, reject a bad extra file on purpose. After Git, undo a messy generation.
- Build the notes CLI in the project lesson, then keep the cheatsheet open whenever you stall.
Reading time is about two to three hours. The project is another focused hour if you actually run the prompts. Skimming without an editor teaches the words. The skill is in the loop.
Who this is for
- Beginners who can read Python — use the agent as a tutor and a typist, not as a substitute for understanding.
- Builders who already ship — steal the loop so boilerplate is fast and reviews stay strict.
- People who tried “just chat with the AI” — and got a 40-file mess. This course is the fix.
If you cannot yet read a short Python function, start with thePython tutorial, then come back. Speed without literacy is how secrets leak and bugs ship.
Tools you can use
You need an agent that can see the folder, edit files, and show a diff. A browser chatbot is a tutor, not a coding partner. The Tools chapter compares the options. For this course, pick one:
| Stack | Best when |
|---|---|
| Cursor | You want chat, @files, and diffs in one editor. |
| VS Code + GitHub Copilot | You already work in VS Code and want an agent on that folder. |
| Claude Code or Codex CLI | You prefer a terminal agent in the project root. |
| Continue, Windsurf, Zed, JetBrains AI | That is already your editor. The loop is the same. |
Git and pytest sit next to every stack. Without them you cannot undo a bad generation or prove a slice works.
Course chapters
Vibe coding is directing an AI to write software in natural language while you stay responsible for the result.
A session-by-session guide: what you type, attach, accept, reject, and commit from opening the editor to shipping a slice.
Pick an editor or terminal agent that can read files, apply diffs, and run commands. The loop stays the same.
Open your chosen tool on a real folder, connect Git, and give the agent a short rules file.
A good prompt names the goal, the files, the constraints, and what done looks like.
Explore, plan, implement a small slice, review the diff, test, then commit. Repeat.
Point the model at the files, rules, and docs that matter. Extra noise makes worse code.
Ask for a plan, not a 40-file rewrite. Approve the approach, then let the agent code.
Treat AI output like a pull request. If you cannot explain a change, do not keep it.
Tests tell the agent what correct looks like. Write or generate tests, then make them pass.
Paste the error, isolate the failing case, and fix one cause. Do not restart the whole feature.
Commit after each working slice. Keep history clean so you can undo a bad generation.
Blind accepts, giant prompts, missing plans, leaked secrets, and shipping code you cannot explain.
The playbook: one goal, tight context, a plan, a review, tests, and a commit after every working slice.
Walk through a real Python CLI from first prompt to tests and a commit, using the full workflow.
Copy-paste prompt templates for planning, implementing, reviewing, testing, and debugging.