Rust Developer: Introduction
Welcome to the Rust Developer online course developed in collaboration between Braiins Systems s.r.o. and Robot_Dreams.
Over the next ten weeks, we will go through all the important of the concepts of the Rust programming language, both hands on and in practice via hands-on examples and homeworks.
Organization
The Rust programming course is split into twenty lesson. For each lesson, there will be a chapter on the sidebar of this website, a presentation, and a short handout summary of the key takeaways from the lesson.
Some lessons have an accompanying homework, which is found at the bottom of given lessons chapter. They will be linked to Google Classroom.
Homework will never be assigned to two consecutive chapters, to make sure that you are never under too much pressure.
TIP: To run code examples in chapters on this webite, click the ▶️ button to see output appear underneath the code snippet. Clicking the copy icon let's you easily transfer the code to a Rust Playground which allows you to modify it and experiment. Just using Ctrl-C is sometimes not enough, as many examples contain hidden code to reduce clutter and ensure only the important part of the snippet is emphasized. Some code examples might also be editable, you are encouraged to play around with them :-)
Requirements
It is recommended that you use Linux, but we can probably work with Windows also. Mac should be fine too, but I have the least experience with that platform.
Having an environment for Rust development in your device is a strong requirement, as the Rust Playground can only get you so far, and some projects may require you to import crates that are not available on the playground. Please check out the following list of links to help you get a working setup:
- rustup (installation tool): https://rustup.rs/
- Are We (I)DE Yet? (overview of editor support and what plugins/extensions are required if any): https://areweideyet.com/
- Rust toolchain component overview (to get you familiarized with the programs you might be using): https://rust-lang.github.io/rustup/concepts/components.html