Curriculum
0 → Hero
Follow the tracks in order, or jump to whatever scratches your itch. Every tutorial includes working code, intuitive explanations, and exercises.
foundations
What Is a Qubit? From Classical Bits to Quantum States
A ground-up introduction to qubits for developers who already know code. Bloch sphere, Dirac notation, the normalization constraint, and why a qubit is not just a probabilistic bit — with runnable Qiskit code.
Superposition, Measurement, and the Born Rule
Measurement turns amplitudes into probabilities and destroys superposition. This tutorial walks through the Born rule, measurement in different bases, the no-cloning theorem, and why you can't just peek at a qubit without breaking it — with runnable Qiskit code.
Multi-Qubit Systems and Entanglement
Tensor products, the 2ⁿ-dimensional state space, separable vs entangled states, the four Bell states, and why entanglement is the real secret ingredient of quantum computing. With runnable Qiskit code and a measurement-correlation experiment.
gates and circuits
Unitary Operators and the Universal Gate Set
Quantum gates are unitary matrices — reversible, norm-preserving operations on state vectors. This tutorial proves why, derives the universal {H, T, CNOT} set, and shows why any quantum computation decomposes into these primitives. With full Qiskit verification.
Pauli, Phase, and Rotation Gates
Every single-qubit gate is a rotation of the Bloch sphere. This tutorial derives the Pauli matrices, the phase gates (S, T), and the continuous Rx/Ry/Rz rotation family — and shows how to decompose any single-qubit unitary into three Euler-angle rotations. With visualizations and Qiskit verification.
Multi-Qubit Gates: CNOT, CZ, SWAP, Toffoli, and Controlled Everything
CNOT is the workhorse of entanglement, but the two-qubit gate zoo is richer than that. This tutorial walks through CZ, SWAP, iSWAP, Toffoli, and arbitrary controlled unitaries — plus the decomposition theorems that turn them all into CNOT + single-qubit primitives for real hardware.
OpenQASM 3 and Your First Real Hardware Run
Qiskit circuits are a convenience. OpenQASM 3 is the portable assembly language underneath — and what you actually send to hardware. This tutorial walks through the OpenQASM 3 syntax that matters, IBM Quantum's free tier, transpilation, and how to interpret noisy results honestly on your first real-hardware run.
algorithms
Deutsch-Jozsa: The First Quantum Speedup
The Deutsch-Jozsa algorithm separates constant from balanced Boolean functions in a single query, where classical deterministic algorithms need up to 2ⁿ⁻¹ + 1. This tutorial derives the algorithm from first principles, explains phase kickback, and walks through the full Qiskit implementation plus the Deutsch n=1 special case.
Bernstein-Vazirani and Simon: Learning Hidden Structure in One (or O(n)) Queries
Bernstein-Vazirani learns a hidden bit string in a single query. Simon's algorithm learns a hidden shift with O(n) queries where classical algorithms need exponentially many — and was the direct inspiration for Shor's factoring algorithm. This tutorial derives both from scratch with complete Qiskit implementations.
Grover's Search and Amplitude Amplification
Grover's algorithm finds a marked element in an unstructured list of N items with O(√N) queries — a provable quadratic speedup. This tutorial derives the algorithm geometrically as a rotation in a 2D subspace, gives the exact optimal iteration count, and shows how amplitude amplification generalizes the trick far beyond search.
Quantum Fourier Transform and Phase Estimation
The QFT is the quantum cousin of the classical discrete Fourier transform — but it runs in O(n²) instead of O(n·2ⁿ), which is where many quantum speedups ultimately come from. This tutorial derives the QFT circuit, explains Quantum Phase Estimation (the subroutine inside Shor, HHL, and VQE), and delivers complete Qiskit implementations.
Shor's Algorithm: Factoring, Order-Finding, and the End of RSA
Shor's factoring algorithm reduces integer factorization to the problem of finding the multiplicative order of a random element mod N — and uses quantum phase estimation to solve that in polynomial time. This tutorial derives the full algorithm, runs a small instance in Qiskit, and honestly assesses the real-world resource requirements to break RSA-2048.
variational
Variational Quantum Eigensolver (VQE) From Scratch
VQE finds ground-state energies of quantum Hamiltonians using a hybrid classical-quantum loop. This tutorial derives the variational principle, explains Jordan-Wigner fermion encoding, builds an H₂ ground-state computation end-to-end in Qiskit, and honestly discusses barren plateaus and why the ansatz choice makes or breaks the algorithm.
QAOA for Combinatorial Optimization
QAOA encodes a combinatorial problem as a cost Hamiltonian, prepares a variational state by alternating cost and mixer evolutions, and uses a classical optimizer to find approximate solutions. This tutorial derives the MaxCut case from scratch, runs it in Qiskit, and honestly compares QAOA to classical baselines like Goemans-Williamson.
quantum ml
Quantum ML Foundations: Encoding, Variational Circuits, and the Parameter-Shift Rule
Quantum machine learning trains parameterized quantum circuits as models for classical data. This tutorial covers the three classical-to-quantum encoding strategies, the parameter-shift rule that makes gradient-based training possible, and a complete PennyLane example training a variational classifier on a real dataset.
Quantum Kernels and Feature Maps
Quantum kernels sidestep variational training entirely: they embed data into a quantum Hilbert space via a fixed feature map and use the inner product as a kernel for a classical SVM. This tutorial builds the ZZ feature map from Havlíček et al. 2019, implements a quantum SVC in Qiskit, and explains the reproducing-kernel view that unifies the approach.
Is QML Worth It? A Skeptic's Benchmark
Most published QML results test against toy baselines that serious classical ML would demolish. This tutorial runs a bake-off — variational QML, quantum kernels, XGBoost, and a small MLP — on real tabular data, surveys the 'dequantization' results that have taken quantum advantages back, and gives an honest recommendation on when to reach for QML vs not.