A rigorous but genuinely well-taught course by John Watrous covering single systems, multiple systems, quantum circuits and the core protocols. The cleanest bridge from intuition to real notation.
Intermediate
You know the words. Now you learn the notation behind them: complex amplitudes, vectors, matrices and Dirac notation. You will write Qiskit or PennyLane code and run it on real quantum hardware, and you will understand Grover and Shor rather than just naming them.
By the end of this level
Read a circuit diagram, derive what it does by hand, implement it in code, and run it on real hardware.
16 topics, roughly in order
Work down the list. Each topic page lists its own prerequisites, so if something assumes knowledge you do not have, the link back is right there.
Dirac (bra-ket) notation
The compact notation physicists use for quantum states: |psi> is a column vector, <psi| its conjugate transpose, and <a|b> their inner product.
3 resources · IntermediateThe Bloch sphere
A geometric picture where every pure single-qubit state is a point on a sphere, and every single-qubit gate is a rotation of that sphere.
4 resources · IntermediateMulti-qubit states & tensor products
Combining qubits multiplies their state spaces via the tensor product, so n qubits live in a 2^n-dimensional space — and the states that do not factor apart are exactly the entangled ones.
3 resources · IntermediateUniversal gate sets
A small finite set of gates — for example Clifford+T, or CNOT plus arbitrary single-qubit rotations — suffices to approximate any unitary to arbitrary precision.
2 resources · IntermediateQuantum teleportation
A protocol that moves an unknown qubit state from A to B using one shared entangled pair and two classical bits — destroying the original in the process.
7 resources · IntermediateSuperdense coding
The mirror image of teleportation: using one pre-shared entangled pair, you can send two classical bits by transmitting only one qubit.
3 resources · IntermediateDeutsch–Jozsa & Bernstein–Vazirani
The teaching algorithms: contrived problems where a quantum computer needs one oracle query and a classical computer needs many, built entirely out of Hadamards and phase kickback.
5 resources · IntermediateGrover's algorithm
Finds a marked item among N possibilities in about sqrt(N) queries instead of N, by repeatedly reflecting the state to pump amplitude onto the answer.
9 resources · IntermediateQuantum Fourier transform
The discrete Fourier transform applied to amplitudes, implementable in O(n^2) gates on n qubits — exponentially fewer operations than the classical FFT needs on 2^n numbers.
5 resources · IntermediateQuantum phase estimation
Given a unitary and one of its eigenvectors, extract the eigenvalue phase to n bits of precision using controlled applications of the unitary plus an inverse QFT.
4 resources · IntermediateShor's algorithm
Factors large integers in polynomial time by reducing factoring to finding the period of a modular exponentiation function, which the QFT does efficiently.
7 resources · IntermediateProgramming with Qiskit
IBM's open-source Python SDK for building, simulating, transpiling and running quantum circuits — including on IBM's real hardware.
8 resources · IntermediateOther SDKs: Cirq, PennyLane, Q#, Braket
Qiskit is not the only option: Cirq targets Google hardware, PennyLane specialises in differentiable quantum programming, Q# is a dedicated quantum language, and Braket gives one API across several vendors.
13 resources · IntermediateBell inequalities & nonlocality
An experimentally testable inequality that any local hidden-variable theory must satisfy — and that quantum mechanics, and reality, provably violate.
3 resources · IntermediateQuantum key distribution (BB84)
A protocol for two parties to agree on a shared secret key such that any eavesdropper necessarily disturbs the transmission and is detected — security resting on physics rather than on computational hardness.
4 resources · IntermediateRunning on real hardware
Several vendors give free or cheap cloud access to real quantum processors, where you meet queueing, calibration data, connectivity constraints and genuinely noisy results.
4 resources · Intermediate29 resources
The full set written for intermediate learners, across every topic. Mark things done as you go — it is stored in this browser only.
Optional but clarifying. Quantum computing does not require a physics course, but if you want to know where the postulates come from rather than accepting them, start here.
An interactive Bloch sphere where you apply gates and watch the state vector rotate in real time, with the amplitudes and angles shown alongside. The fastest way to make the sphere click.
The standard Python library for simulating open quantum systems: density matrices, Lindblad master equations, noise models. Where you go when pure-state circuit simulators stop being enough.
Europe's public quantum computing platform, with free access to simulators and to spin-qubit and transmon processors. A useful counterweight to seeing only IBM hardware.
One API across IonQ, Rigetti, QuEra and IQM hardware plus managed simulators. The practical way to run the same circuit on trapped-ion, superconducting and neutral-atom machines and compare.
The reference for the most widely used quantum SDK. The transpiler and primitives sections are where you will spend real time once you move past toy circuits.
The source itself, plus an unusually welcoming contribution process with good-first-issue labels. Landing a Qiskit PR is one of the most credible entry-level signals in the field.
Coding tutorials, seminar talks and the complete recordings of the Qiskit Global Summer Schools — which are effectively free graduate-level lecture series on algorithms and error correction.
The legendary original Qiskit Textbook, now archived in favour of IBM Quantum Learning. The notebooks still run and its algorithm chapters remain some of the clearest explanations written.
Learn by writing code in the browser, exercise by exercise, from single qubits up to variational algorithms. The best option if you retain things by typing rather than reading.
Google's SDK, built around explicit control of qubit layout, timing and noise. Preferred when you care about what the hardware actually does rather than an idealised abstraction.
Self-paced programming exercises with automatic verification, in the style of code katas. Superposition, measurement, oracles, Grover and teleportation, each as a set of puzzles you must actually solve.
Q# is a purpose-built quantum language rather than a Python library, with a type system that encodes qubit borrowing and adjoint/controlled functors. Worth seeing for the different perspective alone.
A thorough, notebook-based curriculum built on the fast Qulacs simulator, strongest on quantum chemistry and variational methods. Under-known outside Japan and better than most English equivalents.
A maintained index of essentially every open-source quantum project — SDKs, simulators, compilers, chemistry packages. Where to look when you need a tool this guide does not list.
Short, complete, copy-pasteable Qiskit tutorials for individual algorithms and protocols. Useful when you want one working example of a specific thing rather than a whole course.
Free, self-contained and rigorous, with exercises. Widely used as the standard course text in Europe and the best single free replacement for a paid textbook.
Universally called "Mike & Ike" and still the field's reference text after two decades. Comprehensive rather than gentle — use it as the book you look things up in, not the one you read cover to cover first.
Twenty-two short videos taking you from the basic postulates through to quantum teleportation, taught by the co-author of Nielsen & Chuang. Whiteboard-paced and easy to follow.
Free lecture notes connecting quantum computing to complexity theory, cryptography, free will and the anthropic principle. Funny, opinionated, and the best correction to hype you will find.
The paper that created the field as a funded discipline. Read it after you understand phase estimation — it is more approachable than its reputation suggests.
Six pages, and readable in an evening once you know basic circuit notation. A good first primary source because the whole argument fits in your head at once.
The prize to Aspect, Clauser and Zeilinger for experimentally proving Bell inequality violations. The popular and scientific background documents are excellent free explanations of nonlocality.
Google’s curated tutorials, coding labs and research talks, oriented around Cirq and the hardware Google actually builds. Good complement to the IBM-centric mainstream.
The field’s most reliable hype filter. When a quantum computing claim makes the news, this is where a leading complexity theorist explains what it does and does not mean.
Researchers at Caltech’s quantum institute writing about their own work and field culture. Useful for understanding what doing quantum research is actually like day to day.
Industry news, company tracking, hardware roadmaps and job listings. The best single source for what the commercial side of the field is doing.
A sober expert assessment of feasibility and timelines, free to read online. Written for policymakers, which means it is unusually clear about uncertainty and risk.
Next
Once you can do the things listed above, move on to Advanced — error correction, complexity, and the research frontier.
Go to Advanced →