Everything from the video — free

The prompts, the skills, the whole method.

The seven steps from the video are all on this page: the copy/paste prompts and the four free skills that carry them for you, working in Claude Code, Codex, or Cursor. No signup needed for any of it.

What's the annotated session? A real beginner's first hour with the method — the project interview, the first predict-before-run moment, the first quiz — with commentary on what good looks like. Everything below is free either way.

The seven steps

The same plan from the video. Steps 2–7 are carried by the skills — install once and the method travels with your agent — or run them by hand with the prompts below.

01
Pick a coding agent
Claude Code, Codex, or Cursor — a tool you'd use on a real job, not a vibe-coding app builder. About $20/month, worth every cent. Spend an evening on the basics.
setup — no skill needed
02
Pick your project — plant the tree
Something from your real life, sized to your level. The project is the trunk everything you learn attaches to.
/start-project
03
Define the MVP
The smallest version that's genuinely useful, live on the internet. Everything else goes to the parking lot.
/start-project
04
Build the trunk
The 5–9 core components of shipping your product end to end — backend, frontend, database, deployment, source control — each explained in plain language.
/start-project
05
Build the branches
Every design decision walked through with you — and checked — then the build structured as sections that each ship something you can see working.
/plan-journey
06
Define the leaves
Your living knowledge graph: every concept the project will teach you, with a status that only upgrades on evidence — plus a file map so nothing in your repo is a mystery box.
/plan-journey
07
One lesson at a time — repeat until shipped
Where you'll live for months: small steps, fill-in-the-blank code, predict-before-run, quizzes from your own graph, and the graph updated after every task.
/next-lesson
Already have a project?
Especially one an AI built that you can't fully explain — don't start over. Honest triage, an understanding inventory, and a plan that builds forward while you reclaim what's there.
/adopt-project

Install the skills

Four skills, MIT-licensed, using the open Agent Skills format. One command, any of the three agents:

npx skills add jasonku09/altitude-skills

Using Claude Code? The plugin lane auto-updates with the repo: /plugin marketplace add jasonku09/altitude-skills then /plugin install altitude@altitude.

Then open a fresh session in an empty folder and run /start-project. That's it — no hooks, no config. Prefer to read the code first? The repo is on GitHub.

The prompts, copy/paste edition

Rather not install anything? These walk the same steps. Two rules: work in one project folder, and don't skip the parts where the prompts save progress to the learning/ folder — that's how a brand-new session picks up exactly where the last one left off.

Step 1Get set up with your agent

Optional — a guided tour of just the fundamentals, once you've installed an agent:

I'm brand new to this coding agent. Give me a short, practical tour of just the
fundamentals I need to get started: what context is and how to manage it, memory,
model selection, plan mode, and skills. One at a time, with a tiny hands-on
exercise for each. Don't try to teach me everything — just enough to start.
Step 2Pick your project

Pick something you actually want to exist. If nothing comes to mind, have the AI interview you:

Hello — I'm looking for ideas for a project we can build together, as a way to
learn to code for real. My current experience with building software: [describe
honestly — "none", "a few spreadsheet formulas", "some HTML years ago"].
Interview me about my life — my work, my routines, my hobbies, anything I do
repeatedly that software could streamline. Ask one question at a time and wait
for my answer. Then pitch me 2–3 project ideas sized for my level: challenging
but not overwhelming, with something visible working early. Steer me away from
first-project traps like marketplaces, payments, real-time/multiplayer apps, or
anything that's only useful if other people show up for it.
Step 3Define the MVP
Help me define the MVP for this project — the minimal version that is actually
usable, live on the internet, not a demo on my laptop. Split every feature we've
talked about into two lists: "In the MVP" (the smallest set that makes it
genuinely useful end to end) and "Parking lot (v2)" (everything else, written
down so it stops nagging me). Push back if I try to sneak extra features into
the MVP. Then create a file called learning/project.md recording who I am and my
experience level, the project idea, and both lists — every future session will
start by reading that file.
Step 4Build the trunk
Read learning/project.md. What are the fundamental core components of this
project that I will need to learn and build in order to deploy it end to end?
Assume I know nothing about engineering or coding — define every term in plain
language the first time you use it. Don't go deep into the details: just lay out
the major pieces (roughly 5–9), with a high-level explanation of what each piece
is and why this project needs it. I want to follow engineering best practices
from day one, including source control. Once you've laid them out, check my
understanding: have me explain one or two of the pieces back in my own words.
Then add this trunk to learning/project.md.
Step 5Build the branches
Read learning/project.md. Help me come up with a plan to build this project with
learning as the primary objective — speed of delivery is not the goal here,
understanding is. First, walk me through every design decision this project
needs (language, frontend, backend, database, hosting) one at a time: recommend
the popular, common, boring choice — the one with the biggest community and the
most beginner documentation — name 1–2 alternatives with the real tradeoff in a
sentence or two, and check that I can say in my own words why the recommendation
fits before locking it in. Then structure the build as 5–9 sections, each ending
in a concrete deliverable I can see working, sequenced so each layer builds
naturally on the last — for a web app: a basic page rendering, then styling and
interactivity, then a simple local server, then APIs, then a database, then the
core features, then tests, then live deployment. Sections only — no task-level
breakdown yet. Save the locked decisions and the sectioned plan to
learning/plan.md. The goal: by the end of this project I should be able to
explain how my app works end to end.
Step 6Define the leaves
Read learning/project.md and learning/plan.md. Create my living knowledge graph
at learning/knowledge-graph.md — the map of what I actually know. It gets
updated after every lesson, and it's the thing that decides what I get quizzed
on. Seed one entry per concept this project will teach me, spanning every level:
low-level (variables, loops, functions), structural (files talking to each
other, dependencies, package.json), engineering practice (git commits, testing,
environment variables), and AI-era practice (writing a good plan, reviewing a
diff, agent memory files). Each entry gets a status — seed (not yet taught) →
introduced (explained once) → practicing (used it with help) → understood
(explained in my own words and passed a quiz) — plus introduced/last-reviewed
dates and a one-line evidence field. Statuses only ever upgrade on evidence of
something I actually said or did, and I shouldn't be re-quizzed on concepts that
are understood and fresh. Anything we already walked through and checked while
planning starts as introduced, not seed. Also create learning/file-map.md — a
map of every file and folder in the project, one line each on what it is and why
it exists, marked known (I explained it in my own words), parked (honest
one-liner for now, deep dive scheduled), or generated (machine-made, never
edit). Nothing in my repo should ever be a mystery box. Start it with the
learning/ files themselves.
Step 7One task at a time — the prompt you'll reuse for months

Take it slow — one task per sitting. The pause between lessons is part of the method.

Read learning/plan.md, learning/knowledge-graph.md, and learning/file-map.md,
then let's execute the next task — just that one task; I'll come back for the
next one. If the current section isn't broken into tasks yet, break this section
only into 3–7 small tasks, each ending in something I can see working, and add
them to the plan as checkboxes. If anything on disk isn't accounted for in the
file map, tour it or park it with an honest one-liner before we build. Then
teach as you go: before each chunk of code, explain in plain language what it
does and why it's there. Take really small steps — never dump a big block of
code on me. Leave 1–3 blanks marked "TODO(you)" in the actual file for me to
fill in my editor, then read what I really saved and respond to my real code.
Before running any new code or command, ask me to predict what will happen — and
when my prediction is wrong, slow down and dig into the gap, because that's
where the learning is. When a command creates new files (scaffolds, installers),
walk me through the 4–6 that matter in plain language and park the rest in the
file map — never build on files I can't account for. Quiz me on graph concepts
as they come up, but never re-quiz what's marked understood and fresh. At the
end: update learning/knowledge-graph.md (statuses upgrade only on evidence of
what I actually did) and learning/file-map.md (files I authored count as known),
check the task off in learning/plan.md, give me a one-line recap of the new
leaves on my tree, and stop there.
ExtraWhen you broke something

You will. It's a gift, not a detour:

I changed something on my own and now it's broken. Before you fix anything, show
me how to see what I changed — git status and git diff, read together in plain
language — and ask me for one prediction about why it broke before revealing the
cause. If my change shows a reasonable instinct, help me finish what I was
trying to do rather than undoing my work. Let me type the fix. Afterwards, add
what this taught me to learning/knowledge-graph.md and suggest committing the
repair.
ExtraWeekly review

Memory fades on a schedule; review on one too:

Read learning/knowledge-graph.md. Quiz me on 3–5 concepts I haven't reviewed in
over a week, one question at a time. Update last-reviewed dates on passes. If I
struggle, downgrade understood to practicing — no shame, forgetting is how
memory works, that's why we review — and give me a 2–3 sentence refresher. End
with one repo-tour question from learning/file-map.md: pick a file and ask me
what it's for.
ExtraThe one mistake

The pull to say "just write the whole thing" is real. That's passenger mode — the one mistake that makes learning with AI worse than tutorials ever were. When you feel it, paste this instead of giving in:

I'm feeling the pull to just have you write everything for me. Remind me in one
paragraph what I'd be trading away, then let's do this one task with fewer
check-ins — but not zero. Understanding checks scale down; they don't turn off.

Starting from zero?

You'll need an AI coding agent first — it's the tool you'd use on a real job, and setting one up is lesson one of the method. No experience required beyond that: the skills assume you know nothing and define every term. My setup tutorials are on my channel, and if you'd rather not do it alone, the workshop is a free community of people starting exactly where you are.

See what a good first session looks like.

You could piece it together from the video. The annotated session just makes sure your first hour goes the way it should.

Want the version that coaches you between sessions too? The app I'm building →

Never ship a line of code you can't explain.