0.1 Set up your machine
You can create an isolated environment and run a notebook without fighting your OS.
Before:nothing requiredUnlocks:01. Mathematics for Machine Learning02. Python — Basics to Advanced
Nothing in this subject runs until the machine underneath it behaves, so the course opens with plumbing: Python, an editor, and one isolated environment per project. It sits first because every later topic assumes a notebook that runs end to end without surprises. The habit that pays for the whole topic is never installing packages globally — two projects sharing one environment will eventually fight over versions, and the evening you lose to that is entirely avoidable.
Work through these
Install Python 3.12 and a package manager (uv or conda)
A working Python installation and a tool that installs libraries for you. Getting this right once removes a whole category of problems that otherwise look like errors in your code.
The Python Tutorial · DocsVS Code with the Python and Jupyter extensions
An editor that understands Python and can run notebooks in the same window. Most of the friction beginners report comes from switching between three tools instead of one.
The Python Tutorial · DocsVirtual environments: why one per project, always
A separate environment per project keeps one project's library versions from breaking another's. Skipping this works until the day two projects need different versions, and then it fails confusingly.
Run your first notebook end to end
Running a notebook from the first cell to the last proves the setup actually works. Doing it now means the next error you see belongs to your code rather than your installation.
Sign in to keep your progress.
Free resources
We haven't checked most of these for screen reader use yet.
Links last checked 29 Aug 2026.
Stuck here?
Ask a mentor. A real person answers, and they can see exactly which topic you're on. Usually within a couple of working days.
Checking your session…
Topics shown in module order.