- Historyintermediate
Steam: From a Mine Pump to a General Prime Mover
The steam engine began as a fix for one problem, flooded coal mines, and was so inefficient that it made sense only where fuel was nearly free. This lesson traces how a device that wasted 99.5 percent of its fuel became the first source of power that could be put anywhere, and why each improvement targeted the constraint that limited the last one.
10 steps·~15 min - Historyintermediate
Why Britain First: The Question and the Candidate Answers
Mechanised industry appeared in one place before anywhere else, and explaining that is one of the most contested questions in economic history. This lesson sets out what actually needs explaining, works through the wage-and-coal argument, the useful-knowledge argument and the institutional one, and is explicit about which parts are established and which remain in dispute.
10 steps·~15 min - Scienceintermediate
Choosing a Material Without Guessing
There are tens of thousands of engineering materials and no way to compare them by intuition. This lesson builds the material index, the single combined number that ranks candidates for a stated job, shows why steel, aluminium and titanium have almost identical stiffness per kilogram, and covers the environment and processing constraints that overrule the ranking.
10 steps·~15 min - Scienceintermediate
Fracture and Fatigue: How Things Actually Fail
Most catastrophic structural failures happen far below yield strength, because a crack was already there. This lesson builds the fracture mechanics that predicts the largest crack a part can carry, shows why raising strength shrinks that number, and works through the two disasters that turned fatigue from a curiosity into a design discipline.
10 steps·~15 min - Scienceintermediate
Dislocations: Why Metals Bend and Ceramics Shatter
A dislocation is a line of atomic misfit that lets a crystal slip a few bonds at a time, and its mobility decides whether a material bends or breaks. This lesson explains how it moves, why some crystal structures permit it and others do not, and the four standard ways engineers obstruct it to buy strength at the price of ductility.
10 steps·~15 min - Scienceintermediate
Why Materials Are Not as Strong as They Should Be
A perfect copper crystal should yield at about 7 GPa. Real annealed copper gives way at 10 MPa, hundreds of times lower, and the gap took thirty years to explain. This lesson separates stiffness from strength from toughness, works the theoretical calculation, and shows why the answer turned out to be defects rather than arithmetic.
10 steps·~15 min - Mathadvanced
Why There Is No Quintic Formula
Quadratics, cubics and quartics all have formulas in radicals. The general fifth-degree equation has none, and not because nobody clever enough has tried. This lesson explains how permuting the roots turns an algebra question into a group question, and why the answer changes at degree five when a group of order 60 refuses to break down.
10 steps·~15 min - Mathintermediate
Symmetry Groups: Crystals, Conservation Laws, and Neural Networks
Group theory earns its keep when a symmetry argument settles a physical question no calculation was going to answer. This lesson covers group actions and counting up to symmetry, why crystals cannot have five-fold rotation and what happened when one did, Noether's link between symmetry and conservation, and how the same idea is built into modern networks.
10 steps·~15 min - Mathintermediate
Subgroups, Cosets, and Lagrange's Theorem
Cosets cut a group into equal-sized blocks, and one counting argument then forces every subgroup's size to divide the group's. This lesson proves that, derives Fermat's little theorem from it as a corollary, and introduces the maps that let you compare two groups and say precisely when they are the same object.
10 steps·~15 min - Mathintermediate
What a Group Is, and Why the Axioms Are So Bare
A group is a set with one operation obeying four rules, and that deliberate poverty is the point: anything proved about groups holds for rotations, permutations, integers, XOR and Rubik's cube at once. This lesson builds the definition from symmetry, works through the symmetries of a square, and shows where groups already sit in code.
10 steps·~15 min - Mathintermediate
Modular Arithmetic: Doing Maths on a Clock
Wrap the number line into a circle and addition and multiplication survive intact while division mostly does not. This lesson builds congruences, shows why you can reduce early to avoid overflow, works through Euclid's algorithm and modular inverses, and explains how a million-digit exponent becomes twenty multiplications.
10 steps·~15 min - Mathintermediate
Graphs: A Language for Relationships
A graph is two sets and an incidence relation, and that austerity is why the same object models build dependencies, social networks, register allocation and road maps. This lesson covers the structural properties worth knowing, the special families that make hard problems easy, and the line where a small change to a question makes it intractable.
10 steps·~15 min - Mathintermediate
Proof and Induction: Covering Infinitely Many Cases
Testing checks the cases you thought of; a proof covers all of them at once, including the ones nobody will ever run. This lesson builds direct proof, contradiction and induction as working tools, shows the two ways induction fails, and connects it to the loop invariants that make a program correct rather than merely untested.
10 steps·~15 min - Mathintermediate
Counting Without Listing
Combinatorics answers how many arrangements exist without producing any of them, which is what makes password strength, hash collisions and search-space size computable at all. This lesson builds the product rule, permutations, combinations, inclusion-exclusion and the pigeonhole principle, then applies them to problems where intuition is reliably wrong.
10 steps·~15 min - Mathintermediate
Reading a Spectrum Without Fooling Yourself
A spectrum shows you artefacts of the analysis alongside the signal, and telling them apart is a learnable skill. This lesson covers spectral leakage, what windows buy and what they cost, why zero-padding does not add resolution, and the hard trade a spectrogram forces between knowing when and knowing what.
10 steps·~15 min - Mathintermediate
Convolution and Filters: Shaping a Signal
A filter is fully described by what it does to a single impulse, and applying it is a convolution. This lesson builds that idea, shows why the frequency domain turns convolution into plain multiplication, and works through the trade-offs that make real filters ring, lag, or cost more than they need to.
10 steps·~15 min - Mathintermediate
Sampling and Aliasing: The Rule You Cannot Break
Turning a continuous signal into numbers is safe only above a specific rate, and below it the damage is silent and permanent. This lesson derives the Nyquist limit, shows exactly where a too-high frequency reappears, and explains why the fix has to be analogue and has to happen before the converter.
10 steps·~15 min - Mathintermediate
The Frequency Domain: Why Everything Is Sinusoids
The same signal can be written as a function of time or as a recipe of frequencies. This lesson explains why sinusoids in particular get that job, builds the discrete Fourier transform, and shows how the FFT turned a quadratic computation into one you can run on a million samples in a fraction of a second.
10 steps·~15 min - Mathintermediate
Automatic Differentiation: How Gradients Are Actually Computed
Frameworks do not differentiate formulas symbolically or estimate derivatives numerically. They differentiate the program. This lesson builds forward mode from dual numbers and reverse mode from the backward sweep, shows why a full gradient costs about four function evaluations at any size, and where the answer is not what you meant.
10 steps·~15 min - Mathintermediate
The Chain Rule, and Why Depth Is Hard
A deep network is a composition, so its derivative is a product of Jacobians. This lesson builds the chain rule from one variable up to matrix form, shows that the order you multiply that product in changes the cost tenfold, and explains vanishing gradients as an arithmetic consequence rather than a mystery.
10 steps·~15 min - Mathintermediate
Gradients, Jacobians, and Hessians: Calculus in Many Dimensions
One derivative becomes three objects once a function has many inputs and many outputs. This lesson builds the gradient, the Jacobian and the Hessian, shows what each one actually tells you, and explains why curvature decides how many steps an optimiser needs and why nobody ever writes the Hessian down.
10 steps·~15 min - Mathintermediate
The Derivative Is a Local Linear Model
Machine learning uses the derivative as a search strategy, not a symbolic exercise. This lesson builds it as the best local linear approximation, derives the gradient descent update from it, and shows why estimating derivatives numerically loses half your digits and costs one function evaluation per parameter.
10 steps·~15 min - Programmingintermediate
Benchmarks That Hold Up, and Knowing When to Stop
A benchmark is an experiment, and most are badly designed enough to produce confident wrong answers. This lesson covers what a measurement must control to mean anything, the ways microbenchmarks lie including code the compiler deletes, how to catch regressions in continuous integration despite noisy machines, and how to recognise the point where optimising stops paying.
7 steps·~11 min - Programmingintermediate
Where Time Actually Goes: The Six Usual Suspects
Slow software is slow for a short list of reasons, and each one has a signature you can recognise before you find the code. This lesson covers the six recurring bottleneck classes, waiting on I/O, chatty queries, allocation pressure, lock contention, memory access patterns and serialisation, with the symptom that identifies each and the fix that actually works.
7 steps·~11 min

