Rust 101 (4 Days)
Rust 101 (4 Days)
- Die Mehrwertsteuer wird an der Kasse hinzugefügt.
- Bitte achten Sie auf die Wahl der richtigen Sprache, Zeitraum und Zeitzone!
Please note that we also offer the Rust 101 + Nix Bundle with a discount.
Target Audience
You are new to Rust and eager to learn the language, but the vast amount of information and unfamiliar concepts feels overwhelming. Or, you’ve already started using Rust because its syntax seemed familiar to a language you are already familiar with, but you’ve never had the chance to take a closer look at what makes Rust truly unique. Perhaps concepts like ownership, algebraic data types, and asynchronous programming feel abstract, and you want to learn how to leverage these features properly.
This four-day intensive course is designed to take you from a Rust novice or casual user to a confident Rustacean. We’ll guide you through Rust’s core syntax, key programming paradigms, and powerful abstractions. By the end, you’ll have the skills to write clean, efficient Rust code and be ready to tackle real-world projects with confidence.
Class Goals
In this class, you will learn how to confidently build and test Rust applications.
Class Content
The course offers a balanced mix of theory and hands-on practice. In the theory sessions, real-world examples are used to introduce and explain key concepts, making the material easier to understand. During the practice sessions, participants can download exercises to work on independently or in teams. Alternatively, a mob programming session with the instructor can be arranged, where everyone collaborates to solve the exercises together. The instructor will be available throughout to provide guidance and answer any questions, ensuring you have support as you apply what you've learned.
Day 1: Development Environment & Basic Programming Concepts
- Setup a development environment for Rust:
- Using your platforms package manager and
rustup
- Isolated, declarative and reproducible using Nix/devenv/direnv
- Using your platforms package manager and
- Configure your IDE/ editor (VSCode, Neovim) to support
rust-analyze
r (Rust's Language Server Protocol implementation) - Get familiar with a fast feedback development workflow
- Create, build, and test Rust code
- Learn Rust’s basic programming concepts: immutability, scalar and compound types, functions, control flow, closures, algebraic data types, pattern matching
- Build a Rust application applying these concepts
Day 2: Ownership and Advanced Programming Concepts
- Understand Rusts Ownership Model
- Learn further programming concepts: Algebraic Data Types, Traits, Templates, Lifetimes
- Learn about smart pointers: Box, Rc, RefCell
- Learn how to handle errors
- Write an Rust application applying all of the previously mentioned concepts
Day 3: Reinforce and Augment Knowledge
- Write a I/O Rust application, that will require you to apply the concepts from the previous days, while also learning to:
- Structure code in big projects: modules, crates
- Structure and run tests
- Find, evaluate, introduce, maintain dependencies with cargo
- Use Rusts standard library and popular crates
- Leverage Rusts functional paradigm features to write declarative and thus cleaner code, learn common important functional terminology
- Set up code coverage, linting and security auditing for your project
Day 4: Asynchronous Programming in Rust
- Get a basic understanding of how a asynchronous runtime works
- Learn common pitfalls when writing asynchronous code
- Learn how to safely share data in asynchronous code
- Build an asynchronous Rust application
Organizational details
Language, date, and timezone: Please select the correct checkout variant at the beginning of this product page!
Classes are held daily from 9AM to 5PM in the selected time zone.
We have 1 hour lunch break and several shorter breaks during the day.
We provide trainings in the following timezones:
- CEST: UTC+2, Central European Summer Time
- CET: UTC+1, Central European (Winter) Time
- USA Time:
- Pacific Time: 7AM - 3PM
- Mountain Time: 8AM - 4PM
- Central Time: 9AM - 5PM
- Eastern Time: 10AM - 6PM
- PT, MT, CT, ET as refered to on Wikipedia
You will receive meeting invites which display the class times in your timezone.