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.

8 Mentors

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

5,136 Students

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

86 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/second-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.

Andrew Radev https://github.com/AndrewRadev

Rust is a language that feels as comfortable as the next Ruby. While I can't say I'm an expert quite yet, I've taught a university course in it, so I hope I've picked up enough skill to help beginners out.

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.

Paul Otto https://github.com/potto007

I love Rust for its type-safety, its approach to memory management, and its helpful compiler messages. I currently use Rust in side projects, and I'm working towards getting Rust into use at work.

Sebastian Magri https://github.com/sebasmagri

I been using Rust both at work and as a hobby for a while now. Its an awesome project that makes it easy to learn and contribute, and improves really fast while remaining compliant with its principles.

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.

Maira Kodama https://github.com/mairandomness

Math teacher turned programmer. Fell in love with Rust while listening to Steve Klabnik talk about its design choices. Eternally grateful for helpful compiler messages. Not tall enough to write multi-threaded code.
Fun. Challenging. Interesting

Community-sourced Rust Exercises

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

Tournament
medium
medium
enum
hashmap
sorting
structs
Anagram
medium
medium
iter
lifetimes
loops
str vs string
vector
Forth
medium
hard
parser reimplementation
Pig Latin
medium
medium
ascii
regular expressions
strings
Rotational Cipher
medium
medium
ascii
chars
iterators
primitive types
str vs string
Difference Of Squares
medium
easy
fold
map

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

Join the Rust Track