Your agent hands back a pull request. The tests pass, the diff is tidy, and the summary says the feature is done. You read it, it looks fine, and you merge it. A week later a customer is charged twice, and when you open the diff again you can point at the line that did it, the same line that looked fine a week earlier.
This course is for the person in that story. It teaches what you need to know for that line to look wrong before it ships.
Who it is for
The idea under the course fits in a few sentences. Agents can now write most of the code in a project, and they write it quickly and fluently. The work that stays with you is everything around the code: deciding what should be built, getting evidence that it was built, knowing how it behaves once it runs, keeping it running and safe, and setting limits on what the agents may do. That work is engineering, whoever typed the code.
The course teaches that work, and it is written for a few kinds of reader.

You ship with an agent every day. Most of what it writes is fine. Every so often it hands you a change whose tests pass and which is still wrong, and you cannot say why until something breaks. Maybe the test checked what the code does instead of what it should do, or two requests arrived at once and one of the writes disappeared. The course names those mistakes area by area and shows you what each one looks like in a diff, so you can find them in review.

You have built most of your projects by prompting agents, and you can read a little code. Your apps work, and you are not sure why, so every change feels like a gamble. The course gives you a working model of what happens underneath, from how the program runs to what its database does when two requests arrive together. With that model, "it works" becomes a claim you can check.
You are an experienced engineer and want to know what changes when agents write the code. Much of the material will be familiar, and you can move fast through it. The parts most likely to be new are the agent mistakes listed at the top of each page and the drills built on flawed agent output. Read the Directing Agents section in full; it covers delegation, review and accountability.
You lead a team and approve work that agents did. You need to know what to ask for before you accept a change, such as which tests prove it and what happens when one of its steps fails. Each area of the course gives you the questions to ask.
Where each of you starts:
- If you ship with agents today, read How Agents Work and How They Fail first.
- If you are an experienced engineer, take a section's test before its lessons and read only what you miss.
- If you lead a team, read the Directing Agents section in full.
- Everyone else can take the check at the end of this page and then begin at Section 1.
The next lesson lays these routes out in full.
Who should start somewhere else
If you have never read or written code, Section 1 will stop you within a few screens. The lessons show real TypeScript and SQL and ask you to predict what it does, and that takes practice with at least one language, which this course assumes you already have. Learn the basics of one mainstream language first: values and variables, conditionals, loops, functions, and running a program from a terminal. Harvard's CS50x is free and starts from zero. Come back when you can read a twenty-line function and say what it returns.
If you want a tutorial for a specific framework, tool or agent product, this course has none. Products change every few months. The course teaches what stays true across them: how numbers and text are stored, what a transaction guarantees, what a test can and cannot prove, where trust changes hands in a system. Tools appear in the lessons as examples of an idea, after the idea.
If you want prompt tricks, you will not find those either. The Directing Agents section does teach how to hand work to an agent. It treats that as writing down what you want, what the agent may touch and how you will check the result, which is the same skill you would use to brief a colleague.
What you need before the first lesson
You can check each of these now.
- You can read short functions, conditionals and loops in one mainstream language. The lessons use TypeScript and SQL. If you read JavaScript, Python, Java, C# or Go, the rest is mostly new spelling for ideas you know.
- You can open a terminal, run a command and read what it prints.
- It helps to have used an AI coding assistant, though you do not need to. Many drills start from something an agent produced, and they are easier to picture if you have watched one work.
You do not need to install anything to read the lessons or run their code. The runnable examples run in your browser.
If you are close to a beginner, read Reading the code in this course before Section 1. It covers the TypeScript, SQL, diffs, test output and shell lines the lessons use, by reading one piece of agent-written code line by line. The readiness check at the end of this page tells you whether you need it.
What you can do when you finish
The course is built around six things people still own when agents write the code. Each one has its own part of the course, and each turns into something you can do.
- Intent: you can write down what a change must do, including its edge cases and what must never happen, in terms someone else can check, before any code exists.
- Verification: you can tell a test that proves a behavior from one that only runs the code, and write tests that fail when the code is wrong.
- Understanding: you can trace how a piece of code runs, from how its numbers are stored to how its data reaches the database and crosses the network, well enough to predict where it will break.
- Operation: you can find the cause of a production failure from evidence instead of guesses, and ship a change in a way you can undo.
- Security: you can see where untrusted input crosses a boundary, where a permission check is missing, and where a secret or someone's personal data leaks.
- Direction: you can decide what an agent may touch, review what it brings back, and answer for what ships under your name.
Each subsection page lists, under You understand it when you can, what you should be able to do without an AI once you have learned that area. Use those lists to judge whether the course worked for you.
Now take the six questions below. If you get five or six right, go on to How this course works or straight to Section 1. If you miss two or more, read Reading the code in this course first.