Welcome to my Rust learning repository! This is where I document my journey of learning the Rust programming language, sharing the resources, projects, and insights I've gathered along the way. Whether you're a beginner or looking to deepen your understanding of Rust, I hope you'll find this repository useful π©πΌβπ»β¨
- The Rust Programming Language (The Book π)
- Let's Get Rusty - The Rust Lang Book Playlist
- Rustlings
- Rust by Example
π¦ I decided to follow the interactive version of the Rust Book by Brown University
- How to Learn Rust
- What Makes Rust Different?
- 5 Things I Wish I Knew Before Learning Rust
- Rust in 100 Seconds
- Stack, Heap, and Static Memory
- Memory Management Strategies
- Rust makes you feel like a GENIUS
- The Book π - interactive version or original
- Let's Get Rusty - ULTIMATE Rust Lang Tutorial! - Getting Started
- Rustlings - I did the intro exercises at this point.
π¦ If you plan to commit your progress to a single repository, I recommend adding a .gitignore
file with **/target/
and **/Cargo.lock
to your root directory.
- The Book π - interactive version or original
- Let's Get Rusty - Programming a Guessing Game in Rust!
π¦ The Let's Get Rusty video is great for this section. I found it very helpful to have someone explain it. I watched the video first and coded along during the second watch. He also adds color which is a fun addition.
- The Book π - interactive version or original
- Let's Get Rusty - Common Programming Concepts in Rust
- Tech with Tim - Rust Tutorial #4 - Data Types
- Rustlings - I completed the exercises in 01_variables, 02_functions, 03_if, and exercises 1, 2 and 3 in 04_primitive_types. I also completed the first quiz in the quizzes folder.
- Practice - the Rust Book suggests building a program that can generate the nth Fibonacci number. I began with a Fibonacci in Rust demonstration and then worked with Claude AI to break it down and understand it better. I added a non-recursive function and a memoisation function using
std::collections::HashMap
, and then compared the time complexity of each using Rust's standard library'sstd::time::Instant
.
π¦ For Data Types I found the Tech with Tim video helpful, along with the Let's Get Rusty video. I reccommend reading The Book too, as the videos do not cover everything.
- The Book π - interactive version or original
- Let's Get Rusty - Understanding Ownership in Rust
- Tech with Tim - Rust Tutorial #9 - Memory Management, Heap & Stack
- Ownership [25 of 35] | Rust for Beginners
- Borrowing [27 of 35] | Rust for Beginners
- Rustlings Completed 04_primitive_types 4, 5 and 6. In order to continue with Rustlings and complete 05_vecs, I watched Common Collections in Rust and Master Rust Collections: Vectors, Enums, and Iteration - Full Crash Rust Tutorial for Beginners.
- I decided to build a small project following a tutorial to get a better idea of what a Rust project looks like. I followed Akhil Sharma's I Built A Password Vault with Rust!.
π¦ I began this section with the Tech with Tim Tuturial 9 video to get a better understanding of memory management.