Rust 101 is a short course on Rust programming presented as a series of social media posts on LinkedIn, Bluesky and X.
For more depth, Amy or one of our other trainers can present a three day course in Rust programming for your team. Courses are presented using live coding - no slides.
We can also run pro bono sessions for groups and meetups.
We can address:
- Network and async programming
- Embedded systems
- Blockchain programming in Rust
- Data science in Rust
- Compiler theory
- Game development in Rust
- Bioinformatics in Rust
And many other topics.
Amy runs the Oxford Rust meetup, which meets at the St. Aldates tavern in Oxford the first wednesday of every month.
Rust101 showcases training material from Amy's course. See https://github.com/andy-thomason/rust101 for more.
This short course is composed of the following sections
- Rust basics - integer types, floating point, usize, str & references.
- Structures - C-like, tuple structs, tuples and access via "."
- Heap and stack - how variables in Rust are created.
- String - The
Stringgrowable container andBox<str> - Vec - The
Vecgrowable array andBox<[T]> - Expressions 1 - everything's an expression and
{ expr } - References - like pointers, but safer.
- Safety - avoiding dangling pointers.
- Printing - using the
println!()macro. - Enums - how to store choices.
- Option - to be or not to be.
- Result 1 - the
Resulttype vs exceptions. - Result 2 - using
enumfor errors. - Move semantics - no automatic copies for some types.
- Reference Rules - don't cross the streams!
- Lifetimes 1 - dangling pointers again.
- Lifetimes 2 - annotations and lifetime washing
- Lifetimes 3 - lifetimes in structs.
- Methods - methods for structs.
- Traits - traits for structs, enums and types.
- Conversion - the
Fromtrait. - Formatting - Writing formatters.
- Macros - user defined macros.
- Logging - Logging in servers.
- Modules - Organising your code.
- Testing - Writing and running tests.
- Match Statements - like
switchbut richer. - Patterns -
if letand friends. - Derives - common derives.
- Serde - Convert to/from JSON and others.
- the
Futuretrait - coroutines for faster task switch. - async Rust - A TCP echo server example.
Atomic increment have been training C++ and Rust for many years. If you have been on one of our courses, please get in touch.
We have had the joy of training
- AWS
- ZCash
- Sony
- Fastly
- Viasat
- Thales
- Seimens
- Kapsch TrafficCom AG
- Ferrous systems
- Noble Prog
and many more (add yourself here!)
(C) Amy Thomason 2025.