The other day I was asked to recommend resources for learning the Rust programming language. Here’s what I came up with.
How do you like to learn?
-
If you want to type-it-in-the-browser, you have Rust by Example (free).
-
To follow along with a book, using your favourite editor: The Rust Programming Language is “the book” (free, or you can purchase a physical copy).
-
If you want video, try Rust in Motion (paid) or the Rust channel on YouTube.
-
For those working in Jupyter (maybe you love the science?) there’s the EvCxR Jupyter Kernel. That won’t teach you Rust, but it’ll give you a familiar environment.
-
If you prefer to work through projects:
- Rust in Action (paid) seems to have a project in every chapter.
- If you’re into Rust for the WASM, there’s the Rust and WebAssembly book (free) and Programming WebAssembly with Rust (paid).
- For bare-metal programming: The Embedded Rust Book (free).
Then there are (free) challenges like Exercism, Project Euler, or Rustlings.
Two specific topics are worth a look once you’re coding: The Little Book of Rust Macros (free; thank you, Andrea, for sharing this with me) and the work-in-progress Asynchronous Programming in Rust book (free).
If you want the nitty-gritty you have the (incomplete) Rust Reference, and as a back up to that The Rustonomicon.
Finally, I have my own list of Rust principles as a quick reminder of the key concepts.