The Rust Programming Language |
The official “Rust Book” covering fundamentals of Rust syntax, ownership, and tooling. |
Rust by Example |
Interactive examples that walk you through common Rust patterns and concepts. |
Rustlings |
Small exercises to get you used to reading and writing Rust code in your editor. |
Rust Cookbook |
Collection of recipes for common tasks in Rust, from file I/O to JSON parsing. |
Zero To Production In Rust |
A hands-on guide to building a production-grade web application with Rust. |
Asynchronous Programming in Rust |
The official Async Book explaining async/.await, futures, and executors. |
The Rustonomicon |
Deep dive into Rust’s unsafe code guidelines, memory safety, and internals. |
Programming Rust (2nd Ed.) |
In-depth book on Rust’s type system, concurrency, and FFI. |
Writing an OS in Rust |
Step-by-step series on building a minimal operating system in Rust. |
The Crust of Rust |
Video series that uncovers hidden corners of Rust, from macros to internals. |
Fearless Concurrency in Rust |
Blog post and examples showcasing Rust’s approach to safe concurrent code. |
Iterable Traits |
Missing iterable traits and how to introduce them almost effortlessly |
Rust Design Patterns |
Community-driven catalog of recurring Rust idioms and patterns. |
Learning Rust With Entirely Too Many Linked Lists
|
Demonstrates how Rust's ownership and borrowing system fundamentally changes how you implement classic data structures. Many readers have their first "ownership epiphany" here.
|
Rust’s Ownership Model Explained with Pictures / Fearless Concurrency
|
Visualizes how Rust’s ownership and borrowing rules enable fearless concurrency, a core Rust selling point.
|
The Rust Programming Language (The Book) – Chapter 4: Ownership
|
The canonical explanation of Rust’s ownership, borrowing, and lifetimes. For many, this is where Rust “clicks.”
|
Rust: Lifetimes Demystified
|
A clear, visual, and practical explanation of lifetimes, which are often the most confusing part of Rust for beginners.
|
Learning Rust the Dangerous Way
|
Explores typestate programming in Rust, showing how the type system can encode state transitions—a mind-bending concept for many.
|
Rust Error Handling: A Deep Dive
|
Explains the philosophy and patterns behind Rust’s error handling, especially the power and ergonomics of Result and ? .
|
Rust’s Trait System and Why It’s Awesome
|
Shows how Rust’s trait system enables powerful abstractions without inheritance.
|
Zero Cost Abstractions in Rust
|
Explains how Rust’s abstractions compile down to efficient machine code, with no runtime overhead.
|
Rust for the Polyglot Programmer
|
Compares Rust’s unique features to those in other languages, helping experienced devs “recalibrate” their mental models.
|
Fearless Concurrency with Rust
|
Demonstrates how Rust’s type system prevents data races at compile time, making concurrent programming much safer.
|
Rust Users Forum “Aha!” Moments
|
Community thread collecting personal “aha!” moments from Rust users.
|
Reddit: What was your biggest “aha!” moment with Rust?
|
Reddit discussion where Rustaceans share the moments when Rust’s concepts finally made sense.
|
baby steps |
Niko Matsakis - major contributor to rustc design |
alexgaynor.net |
Alex Gaynor Blog - Software Resilience |
corrode blog |
large collection of blog posts on idiomatic rust |
Steve Klabnik |
readable posts, mostly about Rust, by an author of the "The Rust Programming Language" |
Steve Klabnik |
Large collection of idiomatic Rust links (recommended) |
Mara's Blog |
Interesting collection of posts |
Kraig McFadden's Blog |
Some posts about back-end processing with Rust |
Rust Maven Blog |
Posts about parsing and Rust language |