Oxide and Friends

Software Verificationpalooza


Listen Later

Greg and Rain from the Oxide team joined Bryan and Adam to talk about powerful methods of verifying software: formal methods in the form of TLA+ and property-based testing in the form of the proptest Rust crate. If you care about making software right, don't miss it!

In addition to Bryan Cantrill and Adam Leventhal, we were joined by Oxide colleagues Greg Colombo and Rain Paharia.
Some of the topics we hit on, in the order that we hit them:

  • Distributed Sagas
  • Steno -- Oxide's implementation of distributed sagas
  • Learn TLA+
  • Hillel Wayne talks
  • Hillel Wayne on Alloy 6
  • Quickcheck Paper (2000)
  • Proptest docs
  • Rain's example code
use proptest::prelude::*;
use proptest::collection::vec;
proptest! {
#[test]
fn proptest_my_sort_pairs(input in vec(any::(), 0..128)) {
let output = my_sort(input);
for window in output.windows(2) {
assert!(window[0] <= window[1]);
}
}
#[test]
fn proptest_my_sort_against_bubble_sort(input in vec(any::(), 0..128)) {
let output = my_sort(input.clone());
let bubble_output = bubble_sort(input);
assert_eq!(output, bubble_output);
}
// These proptests implicitly check that my_sort doesn't crash.
}
  • buf-list crate
  • guppy crate
  • ... and stay tuned for an upcoming episode revisiting async/await in Rust

If we got something wrong or missed something, please file a PR! Our next show will likely be on Monday at 5p Pacific Time on our Discord server; stay tuned to our Mastodon feeds for details, or subscribe to this calendar. We'd love to have you join us, as we always love to hear from new speakers!


...more
View all episodesView all episodes
Download on the App Store

Oxide and FriendsBy Oxide Computer Company

  • 4.9
  • 4.9
  • 4.9
  • 4.9
  • 4.9

4.9

46 ratings


More shows like Oxide and Friends

View all
Software Engineering Radio - the podcast for professional software developers by se-radio@computer.org

Software Engineering Radio - the podcast for professional software developers

262 Listeners

The Changelog: Software Development, Open Source by Changelog Media

The Changelog: Software Development, Open Source

285 Listeners

Talk Python To Me by Michael Kennedy

Talk Python To Me

585 Listeners

Software Engineering Daily by Software Engineering Daily

Software Engineering Daily

630 Listeners

Soft Skills Engineering by Jamison Dance and Dave Smith

Soft Skills Engineering

271 Listeners

Python Bytes by Michael Kennedy and Brian Okken

Python Bytes

212 Listeners

Syntax - Tasty Web Development Treats by Wes Bos & Scott Tolinski - Full Stack JavaScript Web Developers

Syntax - Tasty Web Development Treats

984 Listeners

CoRecursive: Coding Stories by Adam Gordon Bell - Software Developer

CoRecursive: Coding Stories

185 Listeners

Kubernetes Podcast from Google by Abdel Sghiouar, Kaslin Fields

Kubernetes Podcast from Google

182 Listeners

The Stack Overflow Podcast by The Stack Overflow Podcast

The Stack Overflow Podcast

63 Listeners

Dwarkesh Podcast by Dwarkesh Patel

Dwarkesh Podcast

321 Listeners

Latent Space: The AI Engineer Podcast by swyx + Alessio

Latent Space: The AI Engineer Podcast

64 Listeners

Rust in Production by Matthias Endler

Rust in Production

11 Listeners

Complex Systems with Patrick McKenzie (patio11) by Patrick McKenzie

Complex Systems with Patrick McKenzie (patio11)

101 Listeners

The Pragmatic Engineer by Gergely Orosz

The Pragmatic Engineer

48 Listeners