003 - Michael Gattozzi
2021-01-12James chats with Michael Gattozzi to discuss developer tooling, message serialization, and undefined behavior in Rust.
Originally Recorded on 2020-12-26.
Audio
FLAC
M4A
MP3
Show Notes
- Michael on Social Media
- Occupational burnout
- Ferrous Systems
- 2020 George Floyd Protests
- KiCad PCB Design Tool
- Kuma the Dog
- LED Collar for Kuma the Dog
- Streaming Embedded Programming with Michael Gattozzi and Steve Klabnik
- WS2812B or 'NeoPixel' LED Strips
- James' Battery Controller Circuit
- Yak Shaving
- "Bless your heart"
- Serde Serialization Toolkit
- Postcard Serde Format
- Bincode
- 'Varint's
- Forward Compatibility
- Self-Describing Messages
- Serde Structure Flattening
- ProtoBufs, or Protocol Buffers
- Non Exhaustive Enums in Rust
- Health Level 7 (HL7)
- Interface Control Document
- Robustness Principle, Postel's Law, or "Be conservative in what you send, be liberal in what you accept"
- nanopb - Protbufs for Microcontrollers
- Veriform Serialization Format
vint64
crate- Rust's
leading_zeroes
function bbqueue
, ano-std
friendly circular buffer inspired by BipBuffers- Undefined Behavior
- Twitter Discussions about Rust Strings and UB
- MMIO and
dereferenceable
annotation and a discussion in the Unsafe Code Guidelines - MMIO - Memory Mapped I/O
volatile
memory operations- Life Before Main Talk by James
crt0.o
- Michael's "Oxidizing the technical interview" post
- Pointer Provenance and UB in Rust's 'Life before main'
- Regression Testing
- Property-Based Testing
proptest
crate in Rust for Property-Based Testing
Transcript
Transcript not made yet.
Credits
Thanks to Louie Zong for the music.