YOUR RUST LEARNING PATH

A little more Rust.
A little more confidence.

One idea at a time, with examples you can follow and checkpoints to see what’s clicking. New here? Begin with chapter one. Know a little already? Jump right in.

Before you start

Bring experience with functions, collections, and typed values. Start at bindings if Rust is new to you; ownership and borrowing are developed in the following chapters.

Review a foundation whenever you need it: Small functions · Lists, sets, and dictionaries

13 open chapters. Your progress is saved as you go.

Your chapters

Choose any starting point
  1. 01

    Build small computations with explicit mutability and expression results.

    Start here, or skip ahead
    Open chapter: Bindings and expressions
  2. 02

    Explain when an owned value moves and when an independent copy is created.

    Open whenever you’re ready
    Open chapter: Ownership and moved values
  3. 03

    Use references to inspect or mutate data without taking ownership.

    Open whenever you’re ready
    Open chapter: Borrowing and slices
  4. 04

    Use bytes or characters deliberately without invalid string slicing.

    Open whenever you’re ready
    Open chapter: UTF-8 strings and safe boundaries
  5. 05

    Encapsulate valid state and make mutation requirements visible.

    Open whenever you’re ready
    Open chapter: Structs and invariant-preserving methods
  6. 06

    Represent absent values and handle every possibility explicitly.

    Open whenever you’re ready
    Open chapter: Enums and exhaustive decisions
  7. 07

    Propagate ordinary failures while preserving useful error information.

    Open whenever you’re ready
    Open chapter: Recoverable errors with Result
  8. 08

    Build lazy transformations and choose the ownership of resulting elements.

    Open whenever you’re ready
    Open chapter: Iterator pipelines and collection
  9. 09

    Accumulate keyed data without losing existing values.

    Open whenever you’re ready
    Open chapter: Hash maps and entry-based aggregation
  10. 10

    Specify capabilities without coupling clients to one representation.

    Open whenever you’re ready
    Open chapter: Traits and replaceable behavior
  11. 11

    Describe which input can support a returned reference.

    Open whenever you’re ready
    Open chapter: Generic borrowing and lifetime relationships
  12. 12

    Derive tests from a function’s promises and failure modes.

    Open whenever you’re ready
    Open chapter: Tests for boundaries and mutation contracts
  13. 13

    Transfer data deliberately and wait for concurrent results.

    Open whenever you’re ready
    Open chapter: Owned messages and thread completion

PUT IT TOGETHER

Final assessment & certificate

30 multiple-choice questions and 2 written coding problems. Pass the knowledge section at 80% overall and at least 50% in every chapter area, complete and review the written practice, and meet the attempt-integrity checks to unlock your certificate.

The certificate records a CodeQuest foundations assessment. Written work is self-reviewed; identity and independent proficiency are not verified.

Open final assessment

Take an issuer-recorded assessment with a verifiable certificate

Continue the original guided missions