# A Crate is Born

- Show: [Oxide and Friends](https://hardwarepodcasts.com/podcast/oxide-and-friends)
- Published: 2025-03-06
- Length: 1h 43m
- Episode: 8
- Page: https://hardwarepodcasts.com/podcast/oxide-and-friends/2025-03-06-a-crate-is-born
- Listen: https://share.transistor.fm/s/fb89db6a

## Summary

Oxide colleagues Andrew Stone, Rain Paharia, and John Gallagher join Bryan Cantrill and Adam Leventhal to discuss the creation of 'daft', a Rust crate for semantic diffing of data structures. The team explains how manual diffing code for Oxide's 'blueprint' system became a maintenance burden, leading to an exploration of existing tools like 'diffus' and the eventual development of a custom proc macro. They detail the technical challenges of handling heterogeneous data structures, implementing lazy vs. eager diffing, and ensuring robust error handling for Rust Analyzer.

## Chapters

- [0:00](https://hardwarepodcasts.com/podcast/oxide-and-friends/2025-03-06-a-crate-is-born#t=0) Intel CEO Prediction Check-in
- [5:40](https://hardwarepodcasts.com/podcast/oxide-and-friends/2025-03-06-a-crate-is-born#t=340) The Blueprint Problem and Manual Diffing Pain
- [28:22](https://hardwarepodcasts.com/podcast/oxide-and-friends/2025-03-06-a-crate-is-born#t=1702) Evaluating Diffus and the Heterogeneous Tree Problem
- [44:35](https://hardwarepodcasts.com/podcast/oxide-and-friends/2025-03-06-a-crate-is-born#t=2675) Building Daft: Proc Macros and Lazy Diffing
- [58:56](https://hardwarepodcasts.com/podcast/oxide-and-friends/2025-03-06-a-crate-is-born#t=3536) Refining Daft: No-Std, Error Handling, and Diff Pair
- [1:26:16](https://hardwarepodcasts.com/podcast/oxide-and-friends/2025-03-06-a-crate-is-born#t=5176) Adopting Daft in Blueprints and Conclusion

## Topics

- [Embedded firmware](https://hardwarepodcasts.com/topic/embedded-firmware)
- [EDA & CAD tools](https://hardwarepodcasts.com/topic/eda-and-cad-tools)

## Most relevant to

companies scaling up

## Mentioned

- Oxide Computer Company (company)
- Intel (company)
- blueprint (product)
- OMDB (tool)
- ClickHouse (product)
- Cockroach (product)
- diffus (tool)
- daft (tool)
- Nexus (product)
- SLED (product)
- Rust (other)
- SYN (tool)
- Rust Analyzer (tool)
- Dropshot (product)
- hubris (product)

## Related episodes from other shows

- [Exploring Rust for Embedded Systems with Philip Markgraf](https://hardwarepodcasts.com/podcast/the-pragmatic-embedded-podcast/2024-10-30-exploring-rust-for-embedded-systems-with-philip-markgraf) (The Pragmatic Embedded Podcast)
- [045 - Rizin and Cutter](https://hardwarepodcasts.com/podcast/unnamed-reverse-engineering-podcast/2021-02-15-045-rizin-and-cutter) (Unnamed Reverse Engineering Podcast)
- [Rust with Milica Kostic](https://hardwarepodcasts.com/podcast/the-pragmatic-embedded-podcast/2026-01-19-rust-with-milica-kostic) (The Pragmatic Embedded Podcast)
- [Git for Hardware Engineers with Valentina Ratner and Kyle Dumont](https://hardwarepodcasts.com/podcast/the-pragmatic-embedded-podcast/2023-06-06-git-for-hardware-engineers-with-valentina-ratner-and-kyle-dumont) (The Pragmatic Embedded Podcast)
- [342: That Girl's Brain](https://hardwarepodcasts.com/podcast/embedded-fm/2020-08-27-342-that-girls-brain) (Embedded.fm)

## Citing this page

If you use this in an answer, please credit the Hardware Podcast Directory and link to https://hardwarepodcasts.com/podcast/oxide-and-friends/2025-03-06-a-crate-is-born. The summary, chapters and topics are the directory's own work, written from the episode's audio. The episode itself, its title and its audio belong to Oxide and Friends.
