Updated Rust Learning Course with 100 Practical Exercises
Hands-on Rust programming course gets major update with new features and AI integration
1Exercise-based Rust learning
The course teaches Rust through 100 practical exercises rather than theoretical explanations. Each lesson combines brief theory with hands-on coding in a real Rust crate, starting with a todo!() marker. The exercises follow a ticket management system theme, gradually building from basic structs to an asynchronous REST API. Concepts like Result, enum, HashMap, Arc and Mutex are introduced as needed by the project. The course assumes programming experience but no systems background or manual memory management knowledge.
2Comprehensive curriculum coverage
Over eight chapters, the course covers core Rust concepts including ownership/borrowing, traits, enums/pattern matching, error handling, collections/iterators, lifetimes, threads/channels, and futures. The final challenge combines all concepts into one comprehensive exercise testing mastery. The JetBrains adaptation eliminates setup - no cloning or installation needed, with tasks immediately available in RustRover. The course is free, as is RustRover for non-commercial use.
3Key updates in new version
The update features a rebuilt introduction with five short starter lessons. An FAQ section addresses common learner questions. The final challenge now involves converting the ticket system into an async REST API, including dependency selection in Cargo.toml. A requests.http file specifies API behavior tests. All tests are now visible, showing exact expectations. An experiment demonstrates different behaviors between dev and release profiles. The course maintains its exercise-first approach while adding more guidance.
4Non-linear learning path
Learners can skip directly to the final challenge if experienced with Rust or preferring one substantial project over many small exercises. This approach surfaces knowledge gaps quickly, allowing targeted review of specific concepts. The challenge integrates all course topics: ticket modeling, enums/error handling, collections, shared state/locking, and async programming. It also provides real-world experience using RustRover. The FAQ explicitly endorses this non-linear approach for certain learners.
5AI integration guidelines
The course recommends using RustRover's built-in AI chat for explanations rather than code generation. Key advice includes instructing AI not to change code and pasting compiler errors for analysis rather than fixes. However, it suggests disabling AI code completion during exercises, as their brevity makes them vulnerable to premature solutions. The IDE setup lesson shows how to toggle AI features. This balanced approach aims to preserve the learning value of working through challenges independently.
6Practical teaching methodology
The course emphasizes learning by doing, with concepts introduced just-in-time as the project requires them. When concepts don't fit the ticket system theme, dedicated exercises provide focused practice. The progression from simple structs to multi-threaded async systems mirrors real-world complexity growth. Tests are attached to each task, providing immediate feedback. This methodology reflects professional Rust development practices while maintaining an accessible learning curve.
7IDE integration benefits
Deep RustRover integration eliminates environment setup friction. The educational plugin provides seamless course access and management. Running tests in-place with a single click maintains focus. The IDE handles toolchain setup automatically when needed. This tight integration reduces cognitive load, allowing learners to concentrate on Rust concepts rather than tooling. The setup reflects Mainmatter's professional training approach adapted for self-paced learning.
8Professional-grade learning resource
Created by an experienced Rust consultant, this course distills professional training into accessible self-study. The ticket system theme provides realistic context while allowing focused skill development. Regular updates ensure relevance with Rust ecosystem changes. The open-source adaptation welcomes community contributions. By combining professional insights with JetBrains' educational tools, it offers a unique bridge between academic learning and real-world Rust development requirements.
Original article: The JetBrains Blog — Updated Rust Learning Course with 100 Practical Exercises