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.
Join the Rust Track
Track mentors

30 Mentors

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

8,633 Students

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

88 Exercises

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

About Rust

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

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

Exercism is a great website

Exercism is a great website where I was able to have some very interesting challenges.

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 Emerentius

Emerentius https://github.com/Emerentius

I'm a physicist and hobbyist programmer. I've been a Rust enthusiast since shortly before 1.0. I love Rust for its speed and safety, its typesystem, clean design, cargo and overall focus on correctness that help me offload so much worry on the compiler.
Avatar of Alex Kavanagh

Alex Kavanagh https://github.com/ajkavanagh

Rust is a refreshing alternative to C, C++ and golang. I find it elegant, relatively concise and very interesting to use. I've not used in professionally, yet, but have many years of C, JavaScript and Python under my belt.
Avatar of Thayne McCombs

Thayne McCombs https://github.com/tmccombs

Although rust does have a steeper learning curve than many other languages, once you understand it, it is a truly incredible language.
Avatar of Florian Gilcher

Florian Gilcher Yakshaves, my personal snippet space

I'm a Rustacean since 5 years and member of the Rust project. I lead the events team and contirbute to the community team. I own a Rust company. I train Rust professionally, but still got a lot to learn.
Avatar of Karthik Deepak Natraj

Karthik Deepak Natraj https://github.com/karbfg10k

I love Rust and C and use them at my day job in automotive. I work with Embedded software but I'm also reasonably familiar with systems programming as well
Avatar of Peter Tillemans

Peter Tillemans https://github.com/ptillemans

I am an electronics engineer and language geek who learned programming on an hp-41 and C-64. Now I do mostly java, javascript, python, rust and haskell. I believe that code should sing its intent so the last row in the hall understands the last syllable.
Fun. Challenging. Interesting

Community-sourced Rust exercises

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

OCR Numbers
hard
chunks
lines
slices
Triangle
medium
struct
Grep
medium
conditionals
failure crate
file io
result
string functions
string parsing
utf
Bowling
medium
goofy bowling logic
result
struct
Minesweeper
hard
board state
Bracket Push
medium
stack or recursion
Passionate. Knowledgeable. Creative.

Meet the Rust Track maintainers

The Rust Maintainers are the brains behind the Rust Track. They spend their spare time creating interesting and challenging exercises that we can all learn from. We are incredibly grateful for their hard work. Here are the bios of a few of the maintainers of this track.

Avatar of Peter Tseng

Peter Tseng

"Break glass in case of emergency" maintainer
Avatar of Peter Goodspeed-Niklaus

Peter Goodspeed-Niklaus

definitely not an ai gone rogue

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

Join the Rust Track