Rust

Join the Rust Track
Rust is a compiled programming language designed for speed, concurrency, and memory safety. Rust programs can run almost anywhere, from low-power embedded devices to web servers.
Track mentors

25 Mentors

Our mentors are friendly, experienced Rust developers who will help teach you new techniques and tricks.
Track students

6,301 Students

Join thousands of students who have enjoyed learning and improving their skills by taking this track.
Track exercises

85 Exercises

Hundreds of hours have gone into making these exercises fun, useful, and challenging to help you enjoy learning.

About Rust

Rust is a systems programming language that runs blazingly fast, prevents segfaults, and guarantees thread safety. It aims to bring modern language design and an advanced type system to systems programming. Rust does not use a garbage collector, using advanced static analysis to provide deterministic drops instead. It accomplishes this via the concept of ownership.

Rust's core and the standard library are intentionally minimal; batteries are not included. Rustaceans are instead encouraged to add libraries, called crates, to the language by sharing them on crates.io.

Rust is most frequently used for applications where speed, performance and stability are essential. The Awesome Rust list collects examples of Rust projects, which include CLI tools, ORMs, operating systems and games. Regardless of what you build in Rust, it will be fast and memory safe!

The home page for Rust is rust-lang.org. Rust has excellent documentation at rust-lang.org/documentation.html. Newcomers should start with "The Book" located at doc.rust-lang.org/book/2018-edition/.

Join the Rust track
pub fn hello() -> &'static str {
    "Hello, World!"
}

A tremendous learning opportunity to explore the depth of your own knowledge

Exercism is fantastic in learning new languages but that is not the extent of it. If you are a "more experienced" programmer you may have encountered impostor syndrome: the idea you don't really know what you think you know. Exercism lets you solve problems and put them in the space of open feedback which is a tremendous learning opportunity to explore the depth of your own knowledge. Even if you have been programming in a language for awhile it is worth checking into Exercism to see where you stand with current implementation practices.

Relaxed. Encouraging. Supportive.

Meet the Rust Track mentors

Once you join the Rust language track, you will receive support and feedback from our team of mentors. Here are the bios of a few of the mentors of this track.

Avatar of Stef Gijsberts

Stef Gijsberts https://github.com/Stef-Gijsberts

I love Rust and its community. The way the Rust compiler talks to the user makes me want to hug it.
Avatar of Zachary Dremann

Zachary Dremann https://github.com/Dr-Emann

It didn't take long for rust to become my favorite language, and I want to help others learn it, and love it like I do! I've been coding in rust since 2013, and it's been amazing seeing the language change and evolve over time, and become better and better.
Avatar of Bert Proesmans

Bert Proesmans https://github.com/Bert-Proesmans

I've spent a lot of time inside its documentation, on the users forum and IRC. I'm almost celebrating my first year of Rust development.
Avatar of Sherab Giovannini

Sherab Giovannini https://github.com/Shaddy

Rust is a revolutionary language that is growing and improving fast. I am proud to have been promoting Rust in my own company leading to incredible results. It covers low-level programming while offering high-level abstractions which for systems developers, it's a blessing.
Avatar of Brooks J Rady

Brooks J Rady thelostlambda.xyz

A functional programmer who loves Haskell, Lisp, Rust, and Elixir.
Avatar of David Carroll

David Carroll https://github.com/axesilo

My primary professional language is Python, which I like for its flexibility and expressiveness, but I also enjoy using Rust because of its power and high-quality tooling. I'm a former CS professor.
Fun. Challenging. Interesting

Community-sourced Rust exercises

These are a few of the 85 exercises on the Rust track. You can see all the exercises here.

Leap
easy
booleans
conditionals
Roman Numerals
medium
loops
mutable
results
struct
traits
Space Age
medium
custom trait
default trait implementation
from trait
Alphametics
medium
combinations
external crates optional
string parsing
DOT DSL
medium
builder pattern
derive
modules
struct
Palindrome Products
medium
calculation
string comparison
structs
math

Get started with the Rust track. As with everything on Exercism, it's 100% free!

Join the Rust Track