Exploring Rust for Embedded Systems with Philip Markgraf
In this episode of the Agile Embedded Podcast, hosts Jeff Gable and Luca Ingianni are joined by Philip Markgraf, an experienced software developer and technical leader, to discuss the use of Rust in embedded systems. Philip shares his background in C/C++ development, his journey with Rust, and the advantages he discovered while using it in a large development project. The conversation touches on memory safety, efficient resource management, the benefits of Rust's type system, and the supportive Rust community. They also explore the practical considerations for adopting Rust, including its tooling, ecosystem, and applicability to Agile development. The episode concludes with Philip offering resources for learning Rust and connecting with its community.
00:00 Introduction and Guest Welcome
00:26 Philip's Journey with Rust
01:01 The Evolution of Programming Languages
02:27 Evaluating Programming Languages for Embedded Systems
06:13 Adopting Rust for a Green Energy Project
08:57 Benefits of Using Rust
11:24 Rust's Memory Management and Borrow Checker
15:50 Comparing Rust and C/C++
19:32 Industry Trends and Future of Rust
22:30 Rust in Cloud Computing and Embedded Systems
23:11 Vendor-Supplied Driver Support and ARM Processors
24:09 Open Source Hardware Abstraction Libraries
25:52 Advantages of Rust's Memory Model
29:32 Test-Driven Development in Rust
30:35 Refactoring and Tooling in Rust
31:14 Simplicity and Coding Standards in Rust
32:14 Error Messages and Linting Tools
33:32 Sustainable Pace and Developer Satisfaction
36:15 Adoption and Transition to Rust
39:37 Hiring Rust Developers
42:23 Conclusion and Resources
Resources
The Rust Language
Rust chat rooms (at the Awesome Embedded Rust Resources List)
The Ferrocene functional-safety qualified Rust compiler
You can find Jeff at https://jeffgable.com.
You can find Luca at https://luca.engineer.
Want to join the agile Embedded Slack? Click here