book | ||
exercises | ||
helpers | ||
.gitignore | ||
.wr.toml | ||
Cargo.lock | ||
Cargo.toml | ||
README.md |
Learn Rust, one exercise at a time
You've heard about Rust, but you never had the chance to try it out?
This course is for you!
You'll go from knowing nothing about Rust to feeling productive on your own in roughly 100 exercises.
Note
This course has been written by Mainmatter.
It's one of the trainings in our portfolio of Rust workshops.
Check out our landing page if you're looking for Rust consulting or training!
Audience
This course is designed for people who have basic familiarity with at least another programming language (e.g. Python, JavaScript, Java, C++, etc.), but have never written any Rust code before.
Due to the variety of backgrounds, we won't assume any prior knowledge of systems programming or low-level languages. Approach the relevant exercises as a refresher if you've already been exposed to some of those topics in the past!
Self-paced
This course is designed to be delivered by an experienced instructor over 4 days: each attendee advances through the
lessons at their own pace, with the instructor providing guidance, answering questions and diving deeper into the topics
as needed.
As a rule of thumb: if you're stuck on an exercise for more than 10 minutes, ask for help!
You can also try to go through the course on your own, although we recommend having someone to ask questions to if you get stuck.
Requirements
- Rust (follow instructions here).
Ifrustup
is already installed on your system, runrustup update
(or another appropriate command depending on how you installed Rust on your system) to make your running on the latest version. mdbook
, to render the course material. You can install it withcargo install --locked mdbook
.- (Optional but recommended) An IDE with Rust autocompletion support.
We recommend one of the following:
- RustRover;
- Visual Studio Code with
the
rust-analyzer
extension.
Getting started
Clone the repository and create a new branch to work on your solutions:
git clone git@github.com:mainmatter/100-exercises-to-learn-rust.git
# Or `git clone https://github.com/mainmatter/100-exercises-to-learn-rust.git`
# if you haven't set up SSH keys for GitHub
cd 100-exercises-to-learn-rust
git checkout -b my-solutions
Then start a local server and view the course material in your browser:
cd book
# It'll open the browser automatically
# If it doesn't, open http://localhost:3012 in your browser
mdbook serve --port 3012 --open
Follow the instructions in the book to get started with the exercises!
Solutions
You can find the solutions to the exercises in
the solutions
branch of this repository.
License
Copyright © 2024- Mainmatter GmbH (https://mainmatter.com), released under the Creative Commons Attribution-NonCommercial 4.0 International license.