Introduction to Rust

Remote training provided by Ferrous Systems

Learning a new programming language is a complex task, even for very experienced programmers. Being able to learn in a self-driven way is a great skillset to have, but relying on this ability is not time effective or the best use of this skill. Professional training can help you save time and reach your goals more effectively. Ferrous Systems has been an integral member of the Rust community since before Rust 1.0. In-depth knowledge and experience ensure that you will receive meaningful and relevant insights into how Rust can best be applied to your project.

Get up to speed with Rust Fundamentals

Everyone has their own unique learning needs. Ferrous Systems’ trainers work with you to ensure all attendees become familiar with Rust fundamentals like the Rust toolchain, syntax, basic types, and data structures before moving on to concepts unique to Rust, like ownership and borrowing. You will learn how to write safe concurrent programs, leverage error handling, and use Rust’s documentation for research and troubleshooting. The training material is suitable for people using either Windows, macOS, or Linux-based systems.

We combine theoretical input and hands-on exercises.

The training combines lectures, to give you a theoretical foundation in Rust, with hands-on exercises that focus on applying what has been learned in context and in a supportive environment. The exercises are a fundamental part of the learning journey: Only by applying the newly learned information is the learning process complete.

Training material

Every Rust training is a journey, and you will be led on this journey by your trainer. Your trainer will have a route map, but sometimes groups do things in a different order, so we might re-route to look at an interesting side-topic or re-cover an earlier topic. But, each training looks to cover the following topics:

  1. The Past, Present and Future of Rust
  2. Using Rustup and Cargo
  3. Basic and Compound Types
  4. Control Flow
  5. Ownership and Borrowing
  6. Error Handling
  7. Rust Collections (Vec, HashMap, etc)
  8. Using Iterators
  9. Imports, Modules and Good Design Practices
  10. Methods and Traits
  11. Rust I/O Traits
  12. Generics and Lifetime Annotations
  13. Heap Allocation (with Box and Rc)
  14. Shared Mutability (with Cell and RefCell)and thread safety (with Send/Sync, Arc, Mutex)
  15. Closures, Spawning Threads and Scoped Threads

Course Information

This course is for:

Anyone who wants to learn Rust

Prerequisites:

Background in programming (any language)

Duration:

5 half days

Upcoming Courses

Start

Days

Location

Course

Language

Price ex. VAT

██████

███

███████████████

███

███

█████

███

██████

███

███████████████

███

███

█████

███

██████

███

███████████████

███

███

█████

███

* plus VAT if applicable