- Notifications
You must be signed in to change notification settings - Fork1.8k
This is the Rust course used by the Android team at Google. It provides you the material to quickly teach Rust.
License
google/comprehensive-rust
Folders and files
Name | Name | Last commit message | Last commit date | |
---|---|---|---|---|
Repository files navigation
This repository has the source code for Comprehensive Rust 🦀, a multi-day Rustcourse developed by the Android team. The course covers all aspects of Rust,from basic syntax to generics and error handling. It also includes deep dives onAndroid,Chromium,bare-metal, andconcurrency.
Read the course athttps://google.github.io/comprehensive-rust/.
The course is used internally at Google when teaching Rust to experiencedsoftware engineers. They typically have a background in C++ or Java.
The course is taught in a classroom setting and we hope it will be useful forothers who want to teach Rust to their team. The course will be less useful forself-study since you miss out on the discussions happening in the classroom. Youdon't see the questions and answers and you don't see the compiler errors wetrigger when going through the code samples. We hope to improve on this viaspeaker notes and bypublishing videos.
Articles and blog posts from around the web which cover Comprehensive Rust:
- 2023-09-08:Teaching Rust in 5 days.Comprehensive Rust was used as a base for a 5-day university class on Rust.
- 2023-09-21:Scaling Rust Adoption Through Training.We published a blog post with details on the development of the course.
- 2023-10-02:In Search of Rust Developers, Companies Turn to In-House Training.About how Microsoft, Google, and others are training people in Rust.
- 2024-10-18:Rust Training at Scale | Rust Global @ RustConf 2024.What Google learnt from teaching Comprehensive Rust for more than two years.
The course is built using a few tools:
In addition,mdbook-linkcheck checksthe internal links.
First install Rust by following the instructions onhttps://rustup.rs/. Thenclone this repository:
git clone https://github.com/google/comprehensive-rust/cd comprehensive-rust
Then install these tools with:
cargo xtask install-tools
Run
mdbooktest
to test all included Rust snippets. Run
mdbook serve
to start a web server with the course. You'll find the content onhttp://localhost:3000. You can usemdbook build
to create a static versionof the course in thebook/
directory. Note that you have to separately buildand zip exercises and add them tobook/html
. To build any of the translatedversions of the course, runMDBOOK_BOOK__LANGUAGE=xx mdbook build -d book/xx
wherexx
is the ISO 639 language code (e.g.da
for the Danish translation).TRANSLATIONS.md contains further instructions.
Note On Windows, you need to enable symlinks(
git config --global core.symlinks true
) and Developer Mode.
We would like to receive your contributions. Please seeCONTRIBUTING.md for details.
For questions or comments, please contactMartin Geisler or start adiscussion on GitHub.We would love to hear from you.
About
This is the Rust course used by the Android team at Google. It provides you the material to quickly teach Rust.