AI-powered
podcast player
Listen to all your favourite podcasts with AI-powered features
How to Make Distributed Systems Property Tests Deterministic
In order to make distributed systems property tests deterministic, you don't want those tests to call into the local clock while they're running. The simplest form of a stateless test would be just generating a bunch of inputs and passing it to a function. But like, the staple version is you have an actual model. And so that way, every time you run through and you get that same order of events, you're going to get the same result in the test. So these would be all application building. But if you structure your code that supports property-based testing, it's most likely going to support this type of event-reployed debugger.
Andrew Stone of Oxide Engineering joined Bryan, Adam, and the Oxide Friends to talk about his purpose-built, replay debugger for the Oxide setup textual UI. Andrew borrowed a technique from his extensive work with distributed systems to built a UI that was well-structured... and highly amenable to debuggability. He built a custom debugger "in a weekend"!
Some of the topics we hit on, in the order that we hit them:
The (lightly) edited live chat from the show:
Listen to all your favourite podcasts with AI-powered features
Listen to the best highlights from the podcasts you love and dive into the full episode
Hear something you like? Tap your headphones to save it with AI-generated key takeaways
Send highlights to Twitter, WhatsApp or export them to Notion, Readwise & more
Listen to all your favourite podcasts with AI-powered features
Listen to the best highlights from the podcasts you love and dive into the full episode