Course

Learn Rust

This course exists because I cannot memorize rules and never could. If I understand the system that produces the rules, I remember it for years, because systems have structure and structure compresses.

Rust tutorials gave me rules such as “one mutable reference or many immutable,” “moves invalidate the source,” and “lifetimes must not outlive their referent.” Stack architecture, computability constraints, and Rice’s theorem sit underneath these rules and explain every decision Rust’s designers made. Dig into them and the rules stop requiring memorization because they become derivable. The borrow checker becomes a consequence of what memory is, what compilers can analyze, and what tradeoffs Rust chose.

I did not find that path in any existing course. The Rust Book, Google’s Comprehensive Rust, r4cppp, Codecademy, and Udemy teach the rules well. This course derives them. SPACE x TIME x COORDINATES is a framework for memory bugs. Use-after-free, data races, and dangling references are failures in one of these three dimensions. The course builds the framework first, and the borrow checker falls out of it.

Who this course is for

This course is for experienced programmers, particularly those with a C++ background, who already have a mental model of systems programming. The course updates that model. The density is high and the chapters are short, because we believe every sentence should be valuable and add to what you already know.

If you are new to programming or new to systems languages, start with The Rust Book. It builds the mental model this course assumes you already have. Come back here when you want to understand the system underneath the rules.


Chapters