| # Learn Rust | |
| The following is a list of resources for programmers new to Rust to get | |
| comfortable with the language. | |
| Many of the following resources are also available offline in | |
| [rustup](https://rustup.rs/) via the `rustup doc` command. | |
| ## Learning | |
| ### General resources | |
| - [The Rust Programming Language](https://doc.rust-lang.org/book/) | |
| - [Programming | |
| Rust](https://www.oreilly.com/library/view/programming-rust-2nd/9781492052586/) | |
| (book) | |
| - [Rust by Example](https://doc.rust-lang.org/stable/rust-by-example/) | |
| - [Tour of Rust](https://tourofrust.com/) | |
| - [rustlings](https://github.com/rust-lang/rustlings) | |
| - [The New Rustacean podcast](https://newrustacean.com/) | |
| {% dynamic if user.is_googler %} | |
| #### Googlers only | |
| - [Rust 101 @ Google](https://goto.google.com/tdxgq) | |
| - [Rust at Google](https://goto.google.com/rust) | |
| {% dynamic endif %} | |
| ### Resources for low-level programmers | |
| - [Learn Rust With Entirely Too Many Linked | |
| Lists](https://rust-unofficial.github.io/too-many-lists/) - a deep dive into | |
| pointer types, lifetimes, and unsafe code | |
| - [Learn Rust the Dangerous Way](http://cliffle.com/p/dangerust/) - "LRtDW is a | |
| series of articles putting Rust features in context for low-level C | |
| programmers who maybe don’t have a formal CS background — the sort of people | |
| who work on firmware, game engines, OS kernels, and the like." | |
| - [Rust for Embedded C | |
| Programmers](https://docs.opentitan.org/doc/ug/rust_for_c/index.html) | |
| ## Documentation | |
| - [Standard Library documentation](https://doc.rust-lang.org/std/index.html) | |
| - [Fuchsia Rust crates | |
| documentation](https://fuchsia/dev/go/rustdoc/) | |
| ## Miscellaneous | |
| - [The Rust Playground](https://play.rust-lang.org/) | |
| - [Rust on Godbolt](https://rust.godbolt.org/) |