🎉 Exercism Research is now launched. Help Exercism, help science and have some fun at research.exercism.io 🎉

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

45 Mentors

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

26,855 Students

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

92 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/.

Join the Rust track

Exercism is a great website

The reviews are incredibly helpful because they help me see things that I missed, learn about new ways and sometimes interesting discussions that can add a fun twist to maybe a simple problem.

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 Brenton Alker

Brenton Alker https://github.com/tekerson

Rust brings an expressive type-system to low-level perfomance and portability. The WASM support ties in particularly well with web development where I spend most of my time and I'm excited to join others on this learning path.
Avatar of Matthias Wimmer

Matthias Wimmer Matthias' Blog

Using a mixture of C and Rust code at work for bare metal and linux embedded programming since mid 2017. Having done 10+ years of professional Java programming before. Also in love with Clojure, Haskell and functional programming in general.
Avatar of Sebastian Magri

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.
Avatar of Nahua Kang

Nahua Kang https://nahua.dev

I am a self-taught programmer with a background in liberal arts. I work with Python professionally in the intersection between software development and deep learning. In my spare time, I also play with Go, Rust, and Swift.
Avatar of Yilkal Argaw

Yilkal Argaw https://github.com/yilkalargaw

An enthusiastic programmer who enjoys to explore various aspects of the computer industry. Worked on areas ranging from ASIC & FPGA based hardware design to Software Development in softwares like ruby, C, C++, perl,scheme, common-lisp and rust.
Avatar of Caleb Boylan

Caleb Boylan https://github.com/squidboylan

I am a student and spend most of my time hacking on personal projects. I enjoy Rust as it makes some of the more painful parts of programming easier to handle.
Fun. Challenging. Interesting

Community-sourced Rust exercises

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

Grains
easy
panic
Luhn From
medium
from trait
higher order functions
iterators
str to digits
Gigasecond
easy
crates
Matching Brackets
easy
stack or recursion
Custom Set
medium
equality
generic over type
structs
vectors
Dominoes
hard
graph theory
searching
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 Oleksii Filonenko

Oleksii Filonenko

I love Rust for being strict, performant, ergonomic and enjoyable at the same time. After being a mentor for some time, I decided to be a maintainer. Looking forward to it!
Avatar of Peter Goodspeed-Niklaus

Peter Goodspeed-Niklaus

definitely not an ai gone rogue
Avatar of Meade Kincke

Meade Kincke Code Artistry

I love real-world, usable examples. I'm a huge fan of being able to help others to make something work how it should with maximum performance. I especially love Rust and have written a tool called BrewStillery in it and GTK-rs.
Avatar of Peter Tseng

Peter Tseng

"Break glass in case of emergency" maintainer

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

Join the Rust Track