Start here

The reader’s guide

How to use the book, plan your time, and build one coherent project.

29 min readUpdated
01020304050607AIMLDS0908 · ALONGSIDEAPPLIED EXTENSIONGROUND TRUTH / PATH↗
One thread through the whole bookPLATE PATH
Read source ↗

A working developer's path into AI and machine learning.

The short version. Eight core chapters take you from shipping software to shipping AI systems in about 450 hours. A ninth applied chapter covers offer recommendation, price recommendation and churn, with model choices and a full business decision workflow. You build on one thread — one dataset becomes one model becomes one AI product. Each chapter has a practical plan and a resources folder for deeper reading.


Contents

The chapters

  1. Getting oriented  ·  resources
  2. Data foundations  ·  resources
  3. Core machine learning  ·  resources
  4. Deep learning  ·  resources
  5. Language models and AI engineering  ·  resources
  6. Running it in production  ·  resources
  7. Choosing a specialisation  ·  resources
  8. Finding the work  ·  resources
  9. Business machine learning: offers, prices and churn  ·  resources

Applied guides

Before you start

Reference


Who this book is for

This is written for someone who already writes software. You use Git, you call APIs, you have deployed something, and you can read a stack trace without panic. What you want is a clear route into machine learning and AI engineering, without spending six months on material that turns out to be out of date.

If you are not yet programming, this book will be hard going. From a standing start, add a substantial programming stage before these chapter budgets. A planning allowance of 1,000 to 1,500 total hours is an estimate, not a measured completion time or a job guarantee. CS50P is an excellent place to begin, and this book will still be here afterwards. You will move through it much faster.

A word on what this can and cannot promise. It is a well-researched, carefully checked path, and I think it is a good one. It is not the only good one, and it will not fit everyone. Where the evidence is genuinely mixed, I have tried to say so rather than sound more certain than I am.


How to read this book

Follow the core chapters in order. Chapter 9 is an applied track after Chapters 3 and 6. Use one guide as your Chapter 7 capstone, or work through all three afterwards. Everything optional is marked as optional. When you are unsure what to do next, do the next thing on the list. Most roadmaps offer a branching menu, and that turns out to be part of the problem: a long list of choices is easy to browse and hard to finish.

Build something in every stage. Dunlosky and colleagues' 2013 review rated practice testing and distributed practice highly across the learning conditions it examined. Re-reading and highlighting were less useful overall. Roediger and Karpicke's 2006 experiments found that recalling studied text, rather than studying it again, helped people remember it later. Neither study tests a software curriculum directly. This book applies their ideas: explain from memory, space out sessions, and build the key exercise with the tutorial closed. Then use your references to check and correct the result.

Keep a short log. One file, one line per session: the date, the hours, what you built, and what broke. It gives you a way to revise, and it is a genuinely good answer when someone asks how you learned all this.

Give yourself room. The plan below assumes ten to twelve hours a week, not twenty. A slower plan you finish is worth more than a faster one you abandon, and there is no prize for rushing.

Find one place to ask questions. You will get stuck, and a stuck hour with no one to ask is how most self-study ends. Pick one community early and use it: the fast.ai forums, the DataTalks.Club Slack, or the Hugging Face forums are all free, active and kind to beginners. Ask with what you tried and what you saw. That habit is itself a skill people hire for.

When you feel lost, do this: open the chapter you are on, find the week plan near the top, and do only that week's row. Use the resource list to look things up, not to hunt for a better next hour.


Start here: your first week

If eight chapters and forty-four weeks feel like a lot, start smaller. Week 0 is eight hours. You do not need to understand machine learning yet. You need a target role, a public repo, a log file, and a notebook that runs. The day-by-day plan for that week is at the top of Chapter 1.

End of week 0: you have a public repo, a log, a role, and Colab working. Open Chapter 2 and follow Week 1 of its plan.


The path at a glance

The diagram shows the order. The table gives each chapter’s time budget and outcome. Start Chapter 8 alongside Chapter 6 in week 33. Chapter 9 is an applied extension after Chapters 3 and 6, and can be your Chapter 7 capstone.

flowchart TB accTitle: The core learning path accDescr: Complete foundations, machine learning and AI engineering in order, then choose one specialisation. Job search begins alongside production in week 33. F["Foundations<br/>Ch 1–2 · weeks 0–5"] M["Machine learning<br/>Ch 3–4 · weeks 6–22"] E["AI engineering<br/>Ch 5–6 · weeks 23–37"] S{"Choose one role<br/>Chapter 7"} A["AI<br/>Engineer"] B["ML<br/>Engineer"] C["Data<br/>Scientist"] F --> M --> E --> S S --> A S --> B S --> C classDef data fill:#EFF6FF,stroke:#3973AC,color:#17324D,stroke-width:1.5px classDef model fill:#EFF2FD,stroke:#596FC2,color:#17324D,stroke-width:1.5px classDef decision fill:#FFF5DF,stroke:#A8751A,color:#17324D,stroke-width:1.5px classDef action fill:#E9F6F2,stroke:#23866E,color:#17324D,stroke-width:1.5px classDef neutral fill:#F5F7FA,stroke:#8796A8,color:#17324D,stroke-width:1.5px class F data class M model class E action class S decision class A,B,C neutral
Complete foundations, machine learning and AI engineering in order, then choose one specialisation. Job search begins alongside production in week 33.
Diagram source
%%{init: {"theme":"base","themeVariables":{"fontFamily":"Arial, sans-serif","fontSize":"16px","textColor":"#17324D","primaryColor":"#F5F7FA","primaryTextColor":"#17324D","primaryBorderColor":"#8796A8","lineColor":"#718096","secondaryColor":"#EFF6FF","tertiaryColor":"#E9F6F2","clusterBkg":"#F8FAFC","clusterBorder":"#D6DEE8","edgeLabelBackground":"#FFFFFF"},"flowchart":{"htmlLabels":true,"nodeSpacing":18,"rankSpacing":28,"curve":"linear","padding":10,"subGraphTitleMargin":{"top":8,"bottom":12}}}}%%
flowchart TB
    accTitle: The core learning path
    accDescr: Complete foundations, machine learning and AI engineering in order, then choose one specialisation. Job search begins alongside production in week 33.
    F["Foundations<br/>Ch 1–2 · weeks 0–5"]
    M["Machine learning<br/>Ch 3–4 · weeks 6–22"]
    E["AI engineering<br/>Ch 5–6 · weeks 23–37"]
    S{"Choose one role<br/>Chapter 7"}
    A["AI<br/>Engineer"]
    B["ML<br/>Engineer"]
    C["Data<br/>Scientist"]
    F --> M --> E --> S
    S --> A
    S --> B
    S --> C
    classDef data fill:#EFF6FF,stroke:#3973AC,color:#17324D,stroke-width:1.5px
    classDef model fill:#EFF2FD,stroke:#596FC2,color:#17324D,stroke-width:1.5px
    classDef decision fill:#FFF5DF,stroke:#A8751A,color:#17324D,stroke-width:1.5px
    classDef action fill:#E9F6F2,stroke:#23866E,color:#17324D,stroke-width:1.5px
    classDef neutral fill:#F5F7FA,stroke:#8796A8,color:#17324D,stroke-width:1.5px
    class F data
    class M model
    class E action
    class S decision
    class A,B,C neutral
#ChapterWeeksHoursBy the end you canResources
1Getting orientedWeek 08Name the role you are aiming at, and set up a working environmentlist
2Data foundationsWeeks 1–550Take a messy real dataset to a published, reproducible analysislist
3Core machine learningWeeks 6–1380Build a model with an honest validation scheme and a metric you can justifylist
4Deep learningWeeks 14–2290Write backpropagation from scratch, train a network, and debug one that is not learninglist
5Language models and AI engineeringWeeks 23–32100Ship an LLM application with an evaluation suite you built before optimising itlist
6Running it in productionWeeks 33–3755Deploy, monitor, roll back, and state your cost per thousand requestslist
7Choosing a specialisationWeeks 38–4370Go deep on one role, with a capstone matched to its interviewslist
8Finding the workWeek 33 on3–4 a weekPresent your work well and run a sensible job searchlist
9Business machine learningApplied track after Ch 3 + 640 for one case / 90 for allSelect models and actions for offers, prices and churn. Validate and run the feedback looplist

One thread through the whole book

You are building one connected project. One dataset becomes one model becomes one AI product. That is an end-to-end story an interviewer can follow in five minutes.

flowchart LR accTitle: One project, developed across the book accDescr: Your Chapter 2 data becomes a model in Chapters 3 and 4, then an AI product in Chapters 5 and 6. D["Data<br/>Ch 2"] --> M["Model<br/>Ch 3–4"] --> P["AI product<br/>Ch 5–6"] classDef data fill:#EFF6FF,stroke:#3973AC,color:#17324D,stroke-width:1.5px classDef model fill:#EFF2FD,stroke:#596FC2,color:#17324D,stroke-width:1.5px classDef decision fill:#FFF5DF,stroke:#A8751A,color:#17324D,stroke-width:1.5px classDef action fill:#E9F6F2,stroke:#23866E,color:#17324D,stroke-width:1.5px classDef neutral fill:#F5F7FA,stroke:#8796A8,color:#17324D,stroke-width:1.5px class D data class M model class P action
Your Chapter 2 data becomes a model in Chapters 3 and 4, then an AI product in Chapters 5 and 6.
Diagram source
%%{init: {"theme":"base","themeVariables":{"fontFamily":"Arial, sans-serif","fontSize":"16px","textColor":"#17324D","primaryColor":"#F5F7FA","primaryTextColor":"#17324D","primaryBorderColor":"#8796A8","lineColor":"#718096","secondaryColor":"#EFF6FF","tertiaryColor":"#E9F6F2","clusterBkg":"#F8FAFC","clusterBorder":"#D6DEE8","edgeLabelBackground":"#FFFFFF"},"flowchart":{"htmlLabels":true,"nodeSpacing":18,"rankSpacing":28,"curve":"linear","padding":10,"subGraphTitleMargin":{"top":8,"bottom":12}}}}%%
flowchart LR
    accTitle: One project, developed across the book
    accDescr: Your Chapter 2 data becomes a model in Chapters 3 and 4, then an AI product in Chapters 5 and 6.
    D["Data<br/>Ch 2"] --> M["Model<br/>Ch 3–4"] --> P["AI product<br/>Ch 5–6"]
    classDef data fill:#EFF6FF,stroke:#3973AC,color:#17324D,stroke-width:1.5px
    classDef model fill:#EFF2FD,stroke:#596FC2,color:#17324D,stroke-width:1.5px
    classDef decision fill:#FFF5DF,stroke:#A8751A,color:#17324D,stroke-width:1.5px
    classDef action fill:#E9F6F2,stroke:#23866E,color:#17324D,stroke-width:1.5px
    classDef neutral fill:#F5F7FA,stroke:#8796A8,color:#17324D,stroke-width:1.5px
    class D data
    class M model
    class P action

The same project grows. The table shows what each chapter adds.

ChapterWhat you add to the same threadConcrete example
2A dataset you found, cleaned, with a decision logCity parking tickets → "Which zones get the most disputes?"
3A tabular model + FastAPI on that datasetPredict dispute outcome; expose /predict
4Autograd and a model you trained, with reproducible evaluationSmall classifier or tiny LM; stay in the same domain where feasible
5An LLM feature on documents in the same worldExtract fields from ticket appeal PDFs; eval suite first
6That app in Docker, CI, monitoring, cost per 1k requestsSame app — now production-shaped
7Go deep on one role; capstone extends the threadAI Eng: public eval of your extractor; DS: experiment memo
8Present three projects; job search runs from week 33README template + tracker from Chapter 8
9Turn models into constrained decisions and close the outcome loopRetail/subscription: offer uplift, demand-based prices, churn and retention

For the business cases, a connected retail or subscription thread can start with transaction and customer snapshots, move to demand or churn prediction, add a document feature over product or support policies, and end with an offer, price or retention policy and measured feedback. Choose that domain early if Chapter 9 is your goal. For intervention exercises, public transaction data usually needs clearly labelled synthetic exposure and assignment data. Do not invent evidence that real discounts or prices caused the observed purchases.

Pick a domain you care about in Chapter 2 and stay with it until Chapter 6 at least. If you change datasets every chapter, you will finish tired and with nothing coherent to show.


How much time it takes

The week ranges in the roadmap are planning windows. The job search overlaps Chapters 6 and 7, because it takes several months and starting early tells you a lot. It adds three to four hours a week on top of the chapter hours, so weeks 33 to 43 are the fullest in the book. If that is too much, slow the chapters down rather than skipping the search.

PaceHours per weekDurationSuits
Part time10–12, as about 90 minutes on five weekdays plus one longer weekend session44 weeks, roughly 10 monthsSomeone with a job or a degree
Close to full timeAbout 2518 weeks, roughly 4 monthsSomeone between roles or on a break

About the hour figures. These are your hours on each chapter, assuming you use each resource as described rather than finishing it end to end. Several listed courses are much longer than the chapter that mentions them. Where that matters, the chapter says which parts to do. The resource tables give each item's full length, so those numbers are often larger. That is expected, not a contradiction.

The applied extension has its own budget. Chapter 9 adds about 40 hours for one case or 90 for all three, including shared data and delivery work. The original core estimates total 453 hours, not counting the parallel job search. The core schedule covers 44 calendar weeks: orientation week 0 plus weeks 1–43. Doing all of Chapter 9 afterwards makes it 543 hours, or roughly eight to nine extra weeks at 10–12 hours per week. If one case doubles as Chapter 7's 30-hour capstone, count those hours once. The practice budgets leave out waiting for real churn labels or for a properly powered live experiment to finish.

Allow extra calendar time for the job search. Four to eight months is a planning buffer, not a median estimate or a forecast for you. Location, experience, work authorisation, target level and hiring conditions can change it greatly. Chapter 8 shows how to adjust the plan using current postings and your own application funnel. Bootcamp cohort reports do not show how long AI/ML searches take in general.


How each chapter works

Every chapter runs on the same loop.

flowchart TB accTitle: The learning loop used in each chapter accDescr: Learn and practise with a reference, wait a day, build with the tutorial closed, compare and correct, then explain from memory. Revisit the exercise if you cannot explain it. L["Learn + practise<br/>One guided exercise"] W["Wait a day"] B["Build from memory<br/>Tutorial closed"] R["Compare + correct<br/>Reference open"] C{"Explain it<br/>without notes?"} N(["Next chapter"]) L --> W --> B --> R --> C C -->|Yes| N C -.->|Revisit| L classDef data fill:#EFF6FF,stroke:#3973AC,color:#17324D,stroke-width:1.5px classDef model fill:#EFF2FD,stroke:#596FC2,color:#17324D,stroke-width:1.5px classDef decision fill:#FFF5DF,stroke:#A8751A,color:#17324D,stroke-width:1.5px classDef action fill:#E9F6F2,stroke:#23866E,color:#17324D,stroke-width:1.5px classDef neutral fill:#F5F7FA,stroke:#8796A8,color:#17324D,stroke-width:1.5px class L,W,R neutral class B model class C decision class N action
Learn and practise with a reference, wait a day, build with the tutorial closed, compare and correct, then explain from memory. Revisit the exercise if you cannot explain it.
Diagram source
%%{init: {"theme":"base","themeVariables":{"fontFamily":"Arial, sans-serif","fontSize":"16px","textColor":"#17324D","primaryColor":"#F5F7FA","primaryTextColor":"#17324D","primaryBorderColor":"#8796A8","lineColor":"#718096","secondaryColor":"#EFF6FF","tertiaryColor":"#E9F6F2","clusterBkg":"#F8FAFC","clusterBorder":"#D6DEE8","edgeLabelBackground":"#FFFFFF"},"flowchart":{"htmlLabels":true,"nodeSpacing":18,"rankSpacing":28,"curve":"linear","padding":10,"subGraphTitleMargin":{"top":8,"bottom":12}}}}%%
flowchart TB
    accTitle: The learning loop used in each chapter
    accDescr: Learn and practise with a reference, wait a day, build with the tutorial closed, compare and correct, then explain from memory. Revisit the exercise if you cannot explain it.
    L["Learn + practise<br/>One guided exercise"]
    W["Wait a day"]
    B["Build from memory<br/>Tutorial closed"]
    R["Compare + correct<br/>Reference open"]
    C{"Explain it<br/>without notes?"}
    N(["Next chapter"])
    L --> W --> B --> R --> C
    C -->|Yes| N
    C -.->|Revisit| L
    classDef data fill:#EFF6FF,stroke:#3973AC,color:#17324D,stroke-width:1.5px
    classDef model fill:#EFF2FD,stroke:#596FC2,color:#17324D,stroke-width:1.5px
    classDef decision fill:#FFF5DF,stroke:#A8751A,color:#17324D,stroke-width:1.5px
    classDef action fill:#E9F6F2,stroke:#23866E,color:#17324D,stroke-width:1.5px
    classDef neutral fill:#F5F7FA,stroke:#8796A8,color:#17324D,stroke-width:1.5px
    class L,W,R neutral
    class B model
    class C decision
    class N action

Solid arrows show the normal order. The dashed arrow is the revision loop.

The step people skip is build it yourself, and it is the one that does most of the work. If you can finish a chapter by watching, something has gone wrong with the chapter.

Chapters 1 to 6 share one layout: week plan (what to do each week), what you will be able to do, what to learn, resources, what to build and before you move on, usually closing with a few things worth knowing. Chapters 1 and 5 add day-by-day plans where the work needs finer scheduling, and Chapters 7 and 8 are organised around the three branches and the job search instead.

Chapter 9 has a shared decision and delivery plan and three case guides. Each guide covers the target, data, baseline, candidate models, evaluation, constraints, experiments, operations and completion evidence. It is an applied extension, not a prerequisite for the job search.


Using AI assistants while you learn

How assistant use affects learning depends on the task and how you use it.

The 2026 Stack Overflow survey, released on 6 October, shows wide use: 73% of respondents who use AI coding assistants or agents say they use them daily. That share is of assistant users, not all developers. This self-selected survey describes reported practice and feelings. It does not show that assistants improve learning or independently measured productivity.

There is now a small controlled experiment too. In a randomised trial published by Anthropic in January 2026, 52 developers, mostly junior, learned an unfamiliar Python library with or without an AI assistant. The assistant group was not reliably faster, and scored 50% versus 67% on an immediate comprehension quiz. That is a reason to protect first attempts, not proof that every kind of AI help harms every learner.

Other designs give different results. A preprint revised on 4 October 2026 randomised AI access for 211 undergraduates studying unfamiliar topics and writing essays. It found higher scores on an unaided knowledge test, and a smaller gain a week later. This was not a coding task, and its tutoring-versus-delegation comparisons were descriptive, not separately randomised. A 2026 programming-classroom workshop paper links feedback with short-term completion, but does not show lasting mastery without help. Before applying a study's result to your learning, compare its intervention, population and unaided outcome.

An assistant can take away the effort of recall, so keep some practice unaided. The book's practical rule has two modes: do first attempts yourself, and when you ask for help, ask for an explanation rather than the fix.

Assistant offAssistant on, mostly to explain
The build-it-yourself exercise in each chapterReviewing code you have already written
Your first attempt at anything, including a new library or a bugExplaining an error or an unfamiliar library, after you have tried yourself
The "before you move on" questionsDocumentation lookups and generating test data

This is a reasonable compromise, not a proven one. The coding trial measured immediate understanding. Other studies use different tasks and follow-up periods. Rebuild a small exercise without help at the next session and again a week later, then compare mistakes. Finishing with help and feeling confident do not show what you retained. Adjust how you ask for help based on what you find.

One thing worth taking seriously either way: only put code in your portfolio that you could talk through line by line, and be ready to explain its data and evaluation too.


Terms in plain English

Every term below is also explained in plain words where it first matters in a chapter. Come back here whenever a word feels fuzzy.

TermPlain English
Array / tensorA grid of numbers with a shape, such as 1,000 rows by 20 columns
BroadcastingThe rules by which NumPy stretches a small array to match a bigger one. Handy, and a source of silent bugs
DataframeA table in pandas: rows, and columns with names
Point-in-timeA feature query that uses only information available at decision time. Check both event and availability timestamps
ModelA program that learns patterns from data and makes predictions
TrainingShowing the model examples so it adjusts its internal numbers
Validation / test splitValidation guides tuning. An untouched test set estimates how the frozen pipeline performs on new cases
LeakageAccidentally letting the model peek at the answer during training — makes scores look great and fail in production
MetricA number that measures quality, cost or constraints. Choose ones that reflect the decision and its errors
FeatureOne input column or signal the model uses
PipelineAn sklearn wrapper that fits preprocessing and model together inside training. It helps prevent leakage, but cannot fix inputs built from future data
APIHTTP endpoint others call: send JSON in, get JSON out
EmbeddingA list of numbers representing meaning of text — used for search
Retrieval-augmented generation (RAG)Retrieve relevant, permitted sources and use them to ground a generated answer
PromptThe instructions and data you send the model in one call
Context windowHow much text fits in one model call — a budget, not unlimited memory
Context engineeringChoosing what goes into that window: system prompt, documents, history, tools
TraceA redacted record of a request's inputs, steps and outputs, with access and retention controls
Evaluation (eval)Tests that check if the AI output is good — like unit tests for non-deterministic code
Gold setHand-written input and expected-output pairs you trust. Your ground truth
Pass rateThe share of evaluated examples that pass your checks. What it means depends on those checks
JudgeAnother model (or rules) that grades answers against criteria you wrote
Fine-tuningFurther training to adapt a model’s behaviour. Facts that change or need permissions still need a reliable source and access controls
AgentA model-driven loop that chooses tools and steps. Use one when evaluation shows the extra complexity is worth it
DockerPackage your app so it runs the same everywhere
CITests that run on every git push — including eval tests for prompts
DriftChanges over time in inputs, outcomes or how they relate. Check the data pipeline and the population you deploy to
CalibrationWhen cases predicted at 20% risk have the event roughly 20% of the time
Uplift / treatment effectThe change in an outcome caused by taking an action rather than its comparator
PropensityThe probability that the logging or assignment policy picks an action in a given context
CensoringFollow-up ends before you know the event time, so the outcome is only partly observed
ElasticityThe percentage change in demand for a percentage change in price. A causal reading needs identification
PolicyA rule that selects actions from predictions, constraints and the available evidence
Overlap / positivityThe data include a chance of each action you want to compare, in the contexts where you would choose it
Off-policy evaluationEstimating a new action policy's value from an older policy's logs. This needs suitable support, probabilities and assumptions
ContributionRevenue left after the costs defined for the decision, such as fulfilment, incentives and returns

Projects, in order of difficulty

What each one proves, and separately what makes it stand out. Those are different questions. The Where you build it column names the chapter whose build exercise covers each project, or notes when it is optional or spans several chapters.

#ProjectWhere you build itProvesWhat makes it stand out
1Deploy any pretrained model and get a public URL (3 hours)Ch 5 warm-up (before two-week plan)You can go from model to linkNothing. It is a warm-up whose job is to remove the fear of deploying.
2Structured extraction from messy text you have, into validated JSONCh 5 (narrow task option)Prompting, schema-constrained output, error handlingA 50-example gold set and field-level accuracy
3A modelling competition entry with a deliberately designed validation scheme (optional)Ch 3 optional; Ch 7 KaggleYou understand leakage and metric choiceThe write-up, not the rank. "My first scheme was optimistic by 0.04 and here is why."
4Scrape or pull a dataset that does not exist in tidy form, and publish the analysisCh 2You can source your own dataPublishing the cleaned dataset so someone else can use it
5A classical model served behind a real API, containerised and testedCh 3 build; Ch 6 hardeningThe bridge from modelling to softwareA load-test number, and a note on the accuracy-latency tradeoff you chose
6Retrieval over a difficult corpus: statutes, versioned API docs, a codebaseCh 5 (days 5–6 of two-week plan)Retrieval quality, corpus design and evaluationA hand-labelled retrieval set with recall at k for two chunking strategies
7An evaluation harness as the product itselfCh 5Testing non-deterministic systems, which is rarePublishing the failure taxonomy you found
8A fine-tuned small model with a before-and-after tableCh 5 optionalYou know when fine-tuning is warrantedAn honest four-way comparison, especially if the answer is "not worth it"
9A workflow, not an agent, doing one real job for a real userCh 5Architectural judgementA written justification for not using an agent, with numbers
10Reproduce a paper or core algorithm, then verify itCh 4 or Ch 7 Branch BYou can turn a paper into working codeDocumenting where your numbers diverge, and why
11A merged pull request in a major ML repositoryCh 7Finding your way in an unfamiliar codebase, surviving reviewFixing a bug you personally hit while building something
12A shipped product with real users who are not your friendsCh 5 two-week plan + Ch 6Scoping, distribution, operating under cost constraintsBaseline-relative quality with uncertainty, latency and operating cost
13An open-source tool or dataset others depend onCh 7 Branch A capstoneTaste, engineering and stewardshipExternal adoption, which a reviewer can verify without trusting you
14A rigorous public evaluation of something not measured wellCh 7 Branch A capstoneExperimental design and statistical honestyIt is how individuals become known. Have someone review the method first.
15A sustained record of shipping and writing upCh 8 (ongoing)Durability, and that the rest was not a one-offEighteen months of dated write-ups cannot be copied
16Offer, price or retention decision system with a reproducible evaluationCh 9; can supply Ch 7 capstoneConnecting prediction, intervention, constraints and feedbackAn honest evidence report, no-action baseline and measured experiment when available

Three punch above their weight for the effort involved: the deliberate leakage write-up (project 3), the published failure taxonomy (project 7), and the honest fine-tuning comparison whose answer may be "not worth it" (project 8). That last kind of negative result shows a tested hypothesis and a fair decision. Explain the comparison, uncertainty and operating costs so a reviewer can judge it.


Common pitfalls

Collected from practitioner writing and from resources that turned out to be dated when checked. None of these are character flaws. Most are design problems with the material available.

About sequencing

PitfallWhy it costs so much
Doing the maths before any codeThe most common way people stall. If you are reading a maths book and have never written a training loop, the order is probably backwards.
Preparing for several roles at onceFive titles, five curricula, and none finished
Finishing courses without buildingVideo is enjoyable and does not transfer well on its own
Building evaluation tooling before reading tracesYou end up measuring categories someone else invented for a different product
Waiting until you feel readySix months of courses with nothing shipped is worth less than one shipped, imperfect thing plus three months of courses
ResourceThe issueBetter choice
nanoGPTMarked "very old and deprecated" by its own author, whose README redirects readersnanochat
The free Python Data Science HandbookIt is the 2016 first edition, written against Python 3.5McKinney's Python for Data Analysis, free
The Goodfellow deep learning book, as a starting point2016, no transformer chapter, dated generative sectionsPrince's Understanding Deep Learning, free
The 2016-17 CS231n video playlistPredates transformers entirelyThe recent recordings and the current notes
The original Octave machine learning courseRetired and replaced by the Python rebuildThe current specialisation
Elements of Statistical Learning as a first bookGraduate statistics; people stop at chapter threeIntroduction to Statistical Learning, free
MIT 18.06 as a first linear algebra courseExcellent, and a month of material you will not use here3Blue1Brown, then 18.065
Pre-transformer NLP coursesFine as history, unhelpful as a current educationTransformer-first material
MCP tutorials from 2025Protocol revisions can change lifecycle and transport assumptions. Older deployed versions may still be validMatch the server/client version to the current specification and migration guidance

Technical traps

TrapWhy it matters
Data leakageThe most common technical mistake, and it never raises an error. It just improves your numbers.
Accuracy as the default metricOn a 1% positive dataset, "always no" scores 99%
ROC-AUC alone under heavy imbalanceGood ranking can coexist with poor precision. Add PR metrics, prevalence and performance at actual capacity.
A 0.5 thresholdA convention, not a decision
Reporting one number with no intervalMost beginner improvements are inside the noise
Trusting default feature importanceIt misleads under correlated features, systematically
Changing three things at onceThe result then teaches you nothing
Skipping the overfit-ten-samples checkThirty seconds against several hours
Reading the transformer paper firstIt introduces a 2017 encoder–decoder translation architecture. Learn attention with a small implementation first, then compare the paper with the architecture you use.
Reaching for a framework before writing the loopYou never learn the loop, and cannot debug it
An agent where a workflow would doNon-deterministic, harder to evaluate, and more expensive
Fine-tuning as a source-update mechanismStart with retrieval for facts that change, need citing or are private. Training does not enforce document permissions or keep sources fresh
Choosing a model by its leaderboard scoreBenchmark construction and contamination can distort scores. OpenAI’s February 2026 audit cited both when dropping SWE-bench Verified; its July update also withdrew its earlier SWE-Bench Pro recommendation. Compare on your deployment task and protected holdout.
Kubernetes as a study projectMonths of detour with little portfolio payoff at this point
"The customers table" as a data versionIt changed yesterday
Response or churn risk treated as campaign benefitPredicting an outcome does not identify how an intervention changes it
Predicting yesterday's selling priceIt does not tell you which price improves profit
Unfinished labels treated as negativesDelayed conversions, returns and churn corrupt the comparison
Optimising offers and prices independentlyCombined discounts, contact fatigue and shared budgets can invalidate each policy's economics

About money and portfolios

  • Certificates mostly signal enrolment. Audit courses free and spend the money on compute.
  • Expensive cohort courses are often excellent, and their authors frequently publish most of the same material free. Read the free version first.
  • Buying a GPU before exhausting free tiers is usually procrastination in physical form.
  • Ten shallow projects read worse than three deep ones.
  • Code you cannot explain is a real risk now that reviewers ask about repositories in detail.
  • Building in public works better in the quiet version: ship small things and write up what broke. The high-profile examples usually had a large audience already.

Where thoughtful people disagree

This book takes positions throughout. These are the places where competent, experienced people genuinely disagree, and where stating both sides is more impressive than picking one.

QuestionOne sideThe otherWhere this book lands
Top-down or bottom-up for deep learning?Train something working first. Motivation collapses without early winsStart from first principles, or you cannot debug a model that silently is not learningBottom-up first, top-down alongside, with the inversion offered for people who need the early win. It is a sequencing question, not a values one.
Does a beginner still need classical ML?The jobs are in language models. You can be productive with an APIInterviews front-load it, and evaluating a generative system is the same disciplineEight weeks, framed as the floor rather than the frontier
Frameworks or raw SDKs?Stateful agents need durable execution and observability you would otherwise rebuildProvider APIs converged, so the abstraction hides less than it costsBoth sides agree on the learning order: raw first
Retrieval or long context?Long context can preserve relationships lost during chunkingRetrieval can reduce irrelevant context, enforce document access and control repeated input costCompare both, and a hybrid, on your corpus, tasks, permissions, latency and cost. No single context length is the right cutoff.
Agents or workflows?Models improved enough that agentic loops now win on open-ended tasksMost systems need clear steps and measurable outcomesWorkflow-first is safer for a portfolio, but be ready to defend it
Can you trust a model-based judge?Ready-made metric suites let you start measuring immediatelyJudges are useful only after error analysis has told you what to measure, and must be checked against human labelsDerive criteria from your own failures, then validate the judge
Have tabular foundation models replaced boosted trees?Recent versions report strong aggregate benchmark resultsRankings change with model version, tuning and temporal/grouped deployment protocolsCompare trees, a suitable pretrained model and an MLP where warranted. See the version-specific evidence in Chapter 3.
Should learners use AI assistants?They can explain unfamiliar code and support realistic engineering practiceDelegating a first attempt can bypass the understanding you meant to acquireProtect independent attempts, then use assistance deliberately. Measure what you can still explain and build yourself.
Did AI cause changes in junior hiring?AI could alter which entry-level tasks employers needMacroeconomics, employer mix and changing seniority requirements also affect observed postingsPatterns in job-ad data do not settle causation. Plan with current local requirements and your own funnel.
Is Kubernetes required?Job descriptions ask for it constantlyServerless platforms let you ship real systems without it, and the hours are better spent elsewhereDocker deeply, Kubernetes on the job. That is a side, and worth knowing you are taking it.

Keeping this book current

Three kinds of information in this book age fastest: prices and free tiers, model names and capabilities, and salary figures. Treat any specific number as a snapshot, and check the source before you rely on it.

The illustrated edition — 30 October 2026

The web edition adds shorter lessons, eight original interactive field notes, local search, optional on-device reading progress, focus reading, a complete print edition and an EPUB. Chapter Markdown is still the source for all of them.

Chapters 2–6 now include original worked examples, independent exercises, hints and explained answers. Chapter 2 sets aside a holdout before you look at outcomes, and a shared causal primer prepares the business cases. Completion gates ask to see your reasoning and debugging.

The reference lab supplies deterministic synthetic data, training-only model fitting, separate calibration and test cohorts, a paired comparison, business decision examples and filled reports. Its results illustrate a stated simulator and implementation, not real commercial performance. The source inventory records cited URLs, without claiming that every source was independently rechecked on the edition date.

Two studies shaped how the book asks you to work: Dunlosky and colleagues (2013), on which study techniques actually hold up, and Roediger and Karpicke (2006), on why self-testing feels worse in the moment and works better in the end.

A few places deserve extra scepticism, and I would rather point them out myself. Causal and experimental methods rest on assumptions about assignment, confounding and interference. Chapter 9 now states those assumptions for the business cases and adds primary sources. The two-mode rule for AI assistants is a reasonable compromise, not a proven method. And the four-to-eight-month job-search allowance is a planning judgement, not an outcome estimate.

If something here has drifted out of date, that is the field doing what it does. Check it against the source, adjust, and keep going. If you find a broken link or a claim that no longer holds, an issue or a pull request on this repository is very welcome. Corrections from readers are how a book like this stays useful.

What changed in the illustrated edition review

  • Edition 2026.10.1. Every diagram in the PDF now prints in its own place, and the EPUB passes the EpubCheck validator that ebook stores use.
  • One thread, end to end. Chapters 4 and 5 now start with a same-thread build, and Chapter 6 runs the Chapter 3 model alongside the Chapter 5 application. Chapter 7 shows how each capstone stays connected, and Chapter 8 adds operations evidence to the portfolio template.
  • New practice. A broadcasting exercise in Chapter 2, a training-debugging checklist in Chapter 4, document field extraction and output guardrails in Chapter 5, and explained exercises in Chapters 6, 8 and the offer, price and churn guides.
  • Production. Safe artifact loading, provider outages, retention and erasure, and incident severity with blameless write-ups.
  • Laboratory. Stricter manifest and sample-ratio checks, an experiment result reported with its uncertainty, and a test that the checked-in reference matches a fresh run.
  • Corrections. Consistent fine-tuning placement, hour figures and reading selections. Missing links and resource notes added. A citable edition with EPUB and PDF downloads.
  • Web edition. Illustrated plates for the start page, reader's guide, applied guides and lab reports. Full-width field notes in the lab. Dollar amounts no longer render as mathematics.
  • Licence. The text, illustrations and lab reports are now CC BY 4.0, so you may share, translate and adapt them with credit. The website and code remain under the MIT licence.

What changed in the October 2026 research revision

  • Business cases. Added Chapter 9 with detailed offer, pricing and churn guides, conditional model recommendations, worked economics, practice data and production delivery gates.
  • End-to-end coverage. Added rules for feature availability, label maturity and outcome observation, plus calibration and test discipline, regression and forecasting, optional segmentation and anomaly methods, experiment protocols, model lifecycle and delayed-outcome feedback. The business guides separate competing events, the uncertainty of picking the best-looking policy, and joint or adaptive assignment.
  • Current evidence. Reviewed 2026 tabular, causal, survival, recommendation, pricing and agent research. Recent preprints appear as conditional challengers, with criteria for reproduction and adoption, not as universal winners.
  • Corrections. Updated library compatibility, course editions, contribution policies and hiring data. Qualified benchmark claims by model variant and sampling protocol. Strengthened guidance on leakage, uncertainty, permissions, release evaluation and rollback.
  • Sources. Primary papers and official documentation are linked where the chapters use them, with assumptions and practical limits alongside model recommendations.

What changed in the September 2026 revision

For readers already partway through, these are the changes worth knowing:

  • Setup. Python 3.14 in the setup commands, and a note on uv's new default project layout (Chapter 1).
  • AI assistants. A 2026 randomised trial on learning with an assistant, and a two-mode rule adjusted to fit it (above).
  • Short new sections. Reasoning-effort costs and agent skills (Chapter 5), regulation as part of production (Chapter 6), and a security reference for the AI Engineer branch (Chapter 7).
  • Tabular models. A more careful picture of tabular foundation models against boosted trees (Chapter 3).
  • The job search. Newer hiring and pay data, and interviews that now include an AI assistant (Chapter 8).
  • Resources. Chapter 5 now points to Anthropic's free Claude Academy course, one course website no longer loads, and many notes were refreshed for new versions, prices and owners.

A note from the author

I have spent my career as a developer, moving between domains, and every move brought a new set of challenges. Through all of them, one habit has helped me more than any tool: starting from a roadmap. A good roadmap does two quiet things. It builds the foundation in the right order, and it teaches you to think in systems — to see how the pieces connect before you start collecting them.

This book is that habit written down, for the move I think matters most right now: from software engineering into AI and machine learning.

I want to be open about how it was made. I used AI models, including Fable 5, to help me research and draft it. The plan, the judgements, and the final words are mine, but it felt right that a book about working with these systems should be honest about being written with their help.

I am not only the author here. I follow these chapters myself, to refresh my own skills, because in this industry the learning never stays done. If you find something that has aged, treat it the way this book will teach you to treat every claim: check it, correct it, and keep moving.

— Santosh Shinde

Something unclear or out of date? Suggest a correction ↗

Find your next idea

Loading local search…

Search is built from this edition. No account needed.