The map
Ten stages, in order.
32 topics are published today and 36 more are queued. New tutorials land
Monday, Wednesday and Thursday, with a hands-on project every Friday.
00
Orientation
What an AI engineer actually does, and how to set up a workspace you will keep using.
beginner
5 of 5 written
01
How LLMs Work
The mental model everything else is built on. Skipping this is why most people plateau.
beginner
3 of 8 written
How LLMs work, in plain English
Next-token prediction, transformers, and why a model has no memory between calls.
Read
Tokens and tokenisation
What a token really is, why cost and limits are measured in them, and how to count.
Read
The context window
The model's working memory: what fits, what falls out, and what that costs you.
Planned
What it will cover
What the window actually holds: system prompt, every prior turn, tool results, and the reply still being written
Reading usage mid-conversation so you can see how close to the ceiling you are
What happens at the edge — silent truncation, dropped turns, and answers that suddenly forget
Why a bigger window is not the same thing as better recall
Token usage and pricing
Reading a usage object, estimating spend, and cutting a bill without losing quality.
Planned
What it will cover
Reading a usage object: input, output and cached tokens, each billed at a different rate
Estimating the cost of a run before you start it rather than after the invoice
Where spend actually goes — long system prompts re-sent on every single turn
Four cuts that lower a bill without touching output quality
Why models hallucinate
Where confident wrong answers come from, and the habits that catch them early.
Planned
What it will cover
Why next-token prediction produces fluent, confident, wrong answers by design
The three prompt shapes that trigger it reliably: obscure facts, exact figures, and library APIs
Why asking "are you sure?" is not a verification step
A 30-second checking habit that catches most of it before anyone else sees it
Temperature, top-p and sampling
The knobs that control randomness, and when changing them actually helps.
Planned
What it will cover
What temperature does to the probability distribution, shown on one real completion
Top-p and top-k, and why changing both at once makes your results unreadable
The tasks where the default is already the right answer, and the few where it is not
Why reproducible output needs more than setting temperature to zero
Open vs closed models
Hosted APIs, open weights, and how to choose without reading a benchmark table.
Planned
What it will cover
What you are actually trading: cost curve, privacy, control, and the ceiling on capability
When self-hosting is genuinely cheaper, and the volume at which it stops being
The data-handling questions to ask before pasting anything into a hosted API
A decision you can make in ten minutes without opening a benchmark table
Reasoning and thinking modes
When extended thinking earns its cost, and when it is pure overhead.
Read
02
Prompt Engineering
Reliable prompting is the highest-leverage skill on this map. Everything downstream depends on it.
beginner
7 of 8 written
03
Context Engineering
Prompting is one message. Context engineering is managing everything the model can see.
intermediate
5 of 7 written
04
Embeddings & Vector Search
Turning meaning into numbers. The retrieval half of RAG starts here.
intermediate
0 of 5 written
What are embeddings?
Text as vectors, and why "similar meaning" becomes "close together".
Planned
What it will cover
Turning text into a vector, and what those numbers actually encode
Why cosine similarity stands in for "means roughly the same thing"
Where the analogy breaks down: negation, numbers, and very short strings
The first thing embeddings unlock — search that survives a paraphrase
Choosing an embedding model
Dimensions, cost and quality — the tradeoffs that actually matter.
Planned
What it will cover
Dimensions versus quality, and why bigger is not automatically better
Cost paid once at ingest time versus cost paid on every query
Domain fit: when a general model loses to a smaller specialised one
A twenty-minute comparison on your own data that settles the choice
intermediate
No prerequisite beyond this stage
Vector databases
Pinecone, Chroma, Qdrant, pgvector: what they do and when you need one.
Planned
What it will cover
What a vector index does that a WHERE clause cannot
Pinecone, Chroma, Qdrant and pgvector compared on the things that actually bite
When Postgres with pgvector is genuinely enough for what you are building
Metadata filtering, and why it quietly decides your architecture
intermediate
No prerequisite beyond this stage
Chunking strategies
How you split documents decides how good your retrieval can ever be.
Planned
What it will cover
Why retrieval quality is capped by a decision you make before indexing anything
Fixed-size, sentence-based and structure-aware splitting, run on the same document
Overlap: what it buys you, and what it costs in storage and noise
The chunks that lose their meaning the moment they leave their heading behind
intermediate
No prerequisite beyond this stage
Semantic search
Build search that understands intent instead of matching keywords.
Planned
What it will cover
Building search over meaning in about fifty lines of code
Side by side with keyword search on the queries where each one wins
Why hybrid search beats either approach alone more often than not
Judging results honestly instead of on the three queries you happened to try
intermediate
No prerequisite beyond this stage
05
RAG
Retrieval-augmented generation: give a model your data without retraining it.
intermediate
0 of 6 written
What is RAG?
The retrieve-then-generate loop, and the problem it exists to solve.
Planned
What it will cover
The retrieve-then-generate loop, drawn as five concrete steps
The exact problem it exists to solve: knowledge that is private, current, or too large to fit
Why it beats pasting the document into the prompt once you have more than a handful
What RAG does not fix, so you stop reaching for it when it will not help
intermediate
No prerequisite beyond this stage
Building a RAG pipeline
Ingest, chunk, embed, index, retrieve, generate — end to end.
Planned
What it will cover
Ingest, chunk, embed, index, retrieve, generate — a pipeline that runs on your machine
Wiring retrieved chunks into a prompt without blowing the context window
Handling the empty-result case instead of letting the model invent an answer
Where each stage fails first, and what that failure looks like from the outside
advanced
No prerequisite beyond this stage
Retrieval quality
Re-ranking, hybrid search and filters, for when the right chunk never surfaces.
Planned
What it will cover
Diagnosing the classic failure: the answer was in the corpus and never surfaced
Re-ranking a shortlist with a cross-encoder, and what that costs per query
Hybrid search — combining BM25 with vectors, and how to weight the two
Metadata filters that shrink the search space before anything gets scored
advanced
No prerequisite beyond this stage
RAG vs fine-tuning
Knowledge or behaviour? The question that settles which one you need.
Planned
What it will cover
The one question that settles it: are you adding knowledge or changing behaviour?
Cost and iteration speed compared honestly, including the work you only pay for once
Why most "we need to fine-tune" problems turn out to be retrieval problems
The cases where you genuinely need both, and which one to build first
intermediate
No prerequisite beyond this stage
Grounding and citations
Make answers traceable to sources so hallucinations become visible.
Planned
What it will cover
Making a model quote its source instead of paraphrasing from memory
Prompt and schema patterns that make an ungrounded claim visible rather than plausible
Checking that a citation points at text which actually says what was claimed
What to render to a reader so they can verify a claim in one click
intermediate
No prerequisite beyond this stage
Evaluating a RAG system
Measure retrieval and generation separately, or you will debug blind.
Planned
What it will cover
Why a single end-to-end score hides which half of the pipeline is broken
Retrieval metrics — recall@k and MRR — and what numbers to aim for
Generation metrics: faithfulness to the context you actually retrieved
A small hand-labelled set that is worth more than a large unlabelled one
advanced
No prerequisite beyond this stage
06
Agents
Models that choose their own next step. The biggest leap in capability — and in failure modes.
advanced
3 of 8 written
What is an AI agent?
The loop that separates an agent from a very good prompt.
Planned
What it will cover
The observe-act-repeat loop, and the exact line between an agent and a chain
What makes a task agent-shaped: you cannot know the number of steps in advance
The stopping problem, and why every loop needs a budget
When a very good prompt is the better and cheaper answer
Tools and function calling
Give a model real capabilities, and define them so it uses them correctly.
Planned
What it will cover
Defining a tool the model calls correctly on the first attempt
Why the description field matters more than the code behind it
Handling results, errors, and calls you did not anticipate
Parallel tool calls, and when it is safe to allow them
Building your first agent
A working loop from scratch: tools, results, and knowing when to stop.
Planned
What it will cover
A complete agent loop in plain code, with no framework in the way
Feeding tool results back in so the model can act on what it just learned
Termination: turn limits, cost ceilings, and a real done condition
Making a run inspectable while it is still running
advanced
No prerequisite beyond this stage
Agent memory and state
What an agent carries between steps, and where to keep it.
Planned
What it will cover
What genuinely needs to carry between steps, and what can be recomputed instead
Scratchpads, rolling summaries and external stores, compared on a long run
Keeping the window flat as a run gets longer
Recovering when a step fails halfway through
Multi-agent systems
Delegation, sub-agents and orchestration — plus when one agent is plenty.
Read
Agent frameworks
Claude Agent SDK, LangChain, LlamaIndex: what each buys you.
Planned
What it will cover
What the Claude Agent SDK, LangChain and LlamaIndex each actually give you
The abstractions that help, and the ones that hide the bug you are chasing
What switching later costs once you have built on one
When forty lines of your own loop is the simpler system to own
Hooks and automation
Fire your own code at defined points in an agent's lifecycle.
Read
Multi-model workflows
Route each step to the model that handles it best.
Read
07
MCP
The Model Context Protocol: one standard way to plug tools and data into any model.
advanced
7 of 8 written
08
Fine-Tuning
Changing the model itself. Powerful, frequently unnecessary, and worth understanding either way.
advanced
0 of 5 written
When to fine-tune
The honest checklist — most problems are prompting or retrieval problems.
Planned
What it will cover
The checklist: have you actually exhausted prompting, retrieval and tools?
Signals that genuinely point at fine-tuning — a fixed format, a house tone, a narrow domain
The real cost: data work, training, evaluation, and doing it again on the next base model
Cheaper alternatives that solve the problem first, most of the time
advanced
No prerequisite beyond this stage
Preparing training data
Dataset size, format and quality, which decide the whole outcome.
Planned
What it will cover
How many examples you actually need, and why quality beats volume every time
Formatting a dataset correctly, including the mistakes that fail a run silently
Splitting train and validation so your numbers mean something
Finding and removing the examples that teach the model the wrong lesson
advanced
No prerequisite beyond this stage
Running a fine-tune
Walk one end to end and read what the training metrics are telling you.
Planned
What it will cover
One run end to end, from dataset upload to a model you can call
Reading loss curves: what underfitting and overfitting actually look like
Epochs and learning rate, and the narrow cases where you should touch them
Deciding a run has failed before you spend more money on it
advanced
No prerequisite beyond this stage
LoRA and efficient tuning
Adapt a model without retraining all of it.
Planned
What it will cover
What a low-rank adapter changes, and the far larger part it leaves alone
Why it trains on hardware that full fine-tuning cannot touch
Rank and alpha, explained in terms of the effect you will actually see
Serving several adapters over a single base model
advanced
No prerequisite beyond this stage
Evaluating a tuned model
Prove it beat the base model instead of assuming it did.
Planned
What it will cover
Holding out a set the tuned model has never seen, and keeping it clean
Comparing against both the base model and a well-prompted baseline
Catching regressions on the tasks you did not tune for
Deciding to ship, retrain, or abandon — on evidence rather than hope
advanced
No prerequisite beyond this stage
09
Evaluation & Production
The difference between a demo and something you can put in front of real users.
advanced
2 of 8 written
Why evals matter
Without a scoreboard, every prompt change is a guess.
Planned
What it will cover
Why "it seems better" cannot be reviewed, defended, or reproduced next month
What an eval is at minimum: inputs, expected outcomes, and a score
The cases worth collecting first — the failures you have already hit
Getting a scoreboard in place before you build a pipeline to serve it
Building an eval set
Real cases, expected outputs, and a script that runs in one command.
Planned
What it will cover
Mining real traffic and bug reports for cases worth scoring
Writing expectations that survive a correct answer worded differently
Exact match, rubric, and model-graded checks, and where each one fits
One command, a pass rate, and a diff against the last run
Detecting hallucinations
Automated checks that catch confident nonsense before your users do.
Planned
What it will cover
Grounding scores: does every claim trace back to the context you supplied?
Consistency sampling — ask three times, compare what changes
Claim extraction and verification against a source of truth
Setting thresholds that catch nonsense without blocking correct answers
advanced
No prerequisite beyond this stage
LLM-as-judge
Use a model to grade a model — and know where that breaks down.
Planned
What it will cover
Writing a rubric a model can apply the same way twice
Position, length and self-preference bias, and how to blunt each one
Calibrating the judge against human labels before you trust a single score
The places where a judge is simply the wrong tool
advanced
No prerequisite beyond this stage
Tracing and observability
See every call, token and tool result when something goes wrong in prod.
Planned
What it will cover
What to log per call: prompt, tokens, latency, tool results, and cost
Tying a whole agent run together under one trace id
Finding the step that broke without rerunning the entire thing
Alerting on cost and failure rate before a user tells you
Cost and latency
Caching, batching and model choice, measured per completed task.
Planned
What it will cover
Measuring per completed task rather than per request, which hides retries
Prompt caching, and structuring a prompt so the cache actually hits
Batching, streaming, and routing the easy work to a smaller model
The cost-quality curve, and picking a point on it deliberately
AI code review
Turn a model into a reliable second reviewer on your own work.
Read
Automated tests with AI
Generate a test suite that actually guards against regressions.
Read