Programming tutorials
119 free lessons in 17 courses, from your first line of Python to system design. Every lesson explains the idea in plain words, gives the exact definition, walks through runnable examples line by line, names the common mistakes and ends with a quiz.
Want to practise? Every lesson has an interactive version: edit and run the examples, then solve exercises that are checked in your browser.
Foundations
Start here if you are new.New to computers? Start here: what a computer is, how 0s and 1s store everything, files and folders, the internet, and thinking in steps. No coding needed, and it's all free.
Guide Bit the robot with real Python: walk, turn, collect gems and reach the flag.
Seven stages from your first print() to your own functions, ending with a graduation challenge.
Core skills
What every engineer uses.Ask a real database questions, join tables, change data safely and design tables that stay correct.
Work on a server the way engineers do: files, search, pipes, permissions, services and scripts, in a safe practice terminal.
Commit, branch, merge, resolve conflicts, push and pull, the way teams work, in a safe practice repository.
Structure a page, style and lay it out, then make it load data and react to clicks.
The patterns behind interview problems: complexity, two pointers, hash maps, stacks, binary search, recursion, graphs and dynamic programming, each with speed tests.
Addresses, DNS, TCP, HTTP and the whole journey of a request, plus how to find what's broken.
Scheduling, races and locks, virtual memory, caches, deadlock and file systems, each built as a small simulation you can run.
Specialties
Pick the direction you want to work in.Routing, JSON APIs, databases, login and permissions, middleware and API design, in plain Python.
Write tests that catch real bugs: edge cases, fakes, tables, properties and test-first.
Think like a defender: passwords, injection, tokens, logs and firewalls, each tried out in real code.
Package apps with Docker, run stacks with Compose, test and deploy with GitHub Actions, and run them on Kubernetes.
Terraform, permissions, autoscaling and SLOs: build cloud infrastructure and keep it healthy.
Data, regression, gradient descent, nearest neighbours, honest evaluation and retrieval, built from scratch in Python.
Estimate the load, then cache, shard, rate-limit and queue: the building blocks of systems that stay up, each one coded and tested.