Rust
Curriculum
Rust · Systems

Rust Tutorial

A complete Rust path focused on ownership, borrowing, types, Cargo, concurrency, and idiomatic systems tooling.

65 lessonsBeginner → ProSystems
Start from the beginning

Curriculum

Work through each section in order. Every lesson ends with practice and key points so the idea sticks.

Beginner

Getting Started

5 lessons · ~55 min
  1. 1
    Welcome to Rust

    Safety, speed, and fearless concurrency.

  2. 2
    Install Rustup

    Install toolchain and cargo.

  3. 3
    Cargo New

    Create and run a package.

  4. 4
    Variables & Mutability

    let, mut, and shadowing.

  5. 5
    Data Types

    Scalars and compounds.

Beginner

Ownership

5 lessons · ~58 min
  1. 6
    Ownership Rules

    The heart of Rust memory safety.

  2. 7
    Move Semantics

    What happens when you assign a String.

  3. 8
    References & Borrowing

    Shared and mutable borrows.

  4. 9
    Slices

    Views into contiguous data.

  5. 10
    Ownership Drills

    Fix compile errors caused by moves.

Beginner

Structs & Enums

5 lessons · ~55 min
  1. 11
    Structs

    Group data with named fields.

  2. 12
    Methods & impl

    Implement behavior on types.

  3. 13
    Enums

    Express variants clearly.

  4. 14
    Option & Result

    Null-safe and error-aware returns.

  5. 15
    Pattern Matching

    match like a pro.

Beginner

Collections & Errors

5 lessons · ~62 min
  1. 16
    Vec

    Growable arrays.

  2. 17
    HashMap

    Key-value maps.

  3. 18
    String vs &str

    Owned vs borrowed text.

  4. 19
    Error Propagation

    The ? operator.

  5. 20
    Project: CLI Grep Lite

    Search lines in a file.

Beginner

Modules & Packaging

5 lessons · ~55 min
  1. 21
    Modules

    mod, use, and visibility.

  2. 22
    Workspaces

    Multi-crate repos.

  3. 23
    Traits

    Shared behavior across types.

  4. 24
    Generics

    Type parameters done safely.

  5. 25
    Lifetimes Intro

    Why the compiler asks about 'a.

Intermediate

Intermediate Rust

5 lessons · ~70 min
  1. 26
    Iterators

    Lazy adapters and collect.

  2. 27
    Closures

    Capture environments.

  3. 28
    Smart Pointers

    Box, Rc, RefCell overview.

  4. 29
    Testing with cargo test

    Unit and integration tests.

  5. 30
    Project: JSON Config Tool

    Read config and validate fields.

Intermediate

Concurrency

5 lessons · ~68 min
  1. 31
    Threads

    std::thread basics.

  2. 32
    Message Passing

    channels for ownership transfer.

  3. 33
    Shared State

    Mutex and Arc.

  4. 34
    Async Preview

    async/await mental model.

  5. 35
    Project: Parallel Map

    Split work across threads.

Intermediate

Systems & FFI

5 lessons · ~70 min
  1. 36
    Unsafe Rust Boundaries

    When and how to use unsafe carefully.

  2. 37
    FFI Overview

    Call C from Rust.

  3. 38
    no_std Glimpse

    Embedded Rust direction.

  4. 39
    Profiling Basics

    Measure before optimizing.

  5. 40
    Project: HTTP Fetcher

    reqwest-style client sketch.

Intermediate

Idiomatic Rust

5 lessons · ~72 min
  1. 41
    Clippy & rustfmt

    Lint and format automatically.

  2. 42
    Documentation Tests

    Examples that compile in docs.

  3. 43
    Error Design

    thiserror/anyhow patterns conceptually.

  4. 44
    API Design Tips

    Ownership-friendly interfaces.

  5. 45
    Project: Mini Database

    In-memory KV with persistence.

Intermediate

Advanced Topics

3 lessons · ~39 min
  1. 46
    Advanced Lifetimes

    Structs that hold references.

  2. 47
    Trait Objects

    dyn Trait for dynamic dispatch.

  3. 48
    Macros Intro

    Declarative macros overview.

Advanced

Advanced Topics

2 lessons · ~38 min
  1. 49
    Pin & Async Internals Glimpse

    Why Pin exists.

  2. 50
    Capstone: Concurrent Crawler

    Fetch URLs with bounded concurrency.

Advanced

Capstone & Career

10 lessons · ~164 min
  1. 51
    Capstone: CLI Toolkit

    Multi-command tool with clap-style args.

  2. 52
    Rust Interview Review

    Ownership, traits, Result, concurrency.

  3. 53
    Publishing Crates

    crates.io overview.

  4. 54
    Next Steps

    Web (Axum), embedded, or WASM.

  5. 55
    Final Challenge

    Rewrite a Python script in safe Rust.

  6. 56
    Glossary Drill

    Ownership, borrowing, lifetime, trait, crate.

  7. 57
    Reading Compiler Errors

    Turn rustc messages into fixes.

  8. 58
    Performance Checklist

    Allocations, clones, and profiles.

  9. 59
    Safety Checklist

    Avoid unsafe unless measured need.

  10. 60
    Portfolio Tips

    Show cargo projects with README and tests.

Advanced

Practice Labs

5 lessons · ~80 min
  1. 61
    Practice Lab 61

    Hands-on practice lab consolidating earlier rust skills.

  2. 62
    Practice Lab 62

    Hands-on practice lab consolidating earlier rust skills.

  3. 63
    Practice Lab 63

    Hands-on practice lab consolidating earlier rust skills.

  4. 64
    Practice Lab 64

    Hands-on practice lab consolidating earlier rust skills.

  5. 65
    Practice Lab 65

    Hands-on practice lab consolidating earlier rust skills.