Signals and Threads

Why Testing is Hard and How to Fix it with Will Wilson


Listen Later

Will Wilson is the founder and CEO of Antithesis, which is trying to change how people test software. The idea is that you run your application inside a special hypervisor environment that intelligently (and deterministically) explores the program’s state space, allowing you to pinpoint and replay the events leading to crashes, bugs, and violations of invariants. In this episode, he and Ron take a broad view of testing, considering not just “the unreasonable effectiveness of example-based tests” but also property-based testing, fuzzing, chaos testing, type systems, and formal methods. How do you blend these techniques to find the subtle, show-stopper bugs that will otherwise wake you up at 3am? As Will has discovered, making testing less painful is actually a tour of some of computer science’s most vexing and interesting problems.

You can find the transcript for this episode on our website.

Some links to topics that came up in the discussion:

  • Antithesis, Will’s company
  • FoundationDB’s deterministic simulation framework
  • QuickCheck — the original Haskell property-based testing library, by Koen Claessen and John Hughes
  • Hypothesis — property-based testing for Python, created by David MacIver
  • QuviQ — John Hughes’ company commercializing QuickCheck, including automotive testing work
  • Netflix Chaos Monkey
  • Goodhart’s law — “When a measure becomes a target, it ceases to be a good measure”
  • CAP theorem — the impossibility result for distributed systems that FoundationDB claims to have in some sense violated.
  • Paxos — the consensus algorithm FoundationDB reimplemented from scratch
  • Large cardinals, an area Will studied before abandoning mathematics
  • Lyapunov exponent — measure of chaotic divergence
  • Chesterton’s fence
  • The Story of the Flash Fill Feature in Excel
  • Building a C compiler with a team of parallel Claudes
  • Barak Richman, “How Community Institutions Create Economic Advantage: Jewish Diamond Merchants in New York”
  • ...more
    View all episodesView all episodes
    Download on the App Store

    Signals and ThreadsBy Jane Street

    • 4.9
    • 4.9
    • 4.9
    • 4.9
    • 4.9

    4.9

    72 ratings


    More shows like Signals and Threads

    View all
    Top Traders Unplugged by Niels Kaastrup-Larsen

    Top Traders Unplugged

    592 Listeners

    Odd Lots by Bloomberg

    Odd Lots

    1,993 Listeners

    Software Engineering Radio - the podcast for professional software developers by team@se-radio.net (SE-Radio Team)

    Software Engineering Radio - the podcast for professional software developers

    273 Listeners

    Conversations with Tyler by Mercatus Center at George Mason University

    Conversations with Tyler

    2,461 Listeners

    Software Engineering Daily by Software Engineering Daily

    Software Engineering Daily

    626 Listeners

    Talk Python To Me by Michael Kennedy

    Talk Python To Me

    583 Listeners

    CoRecursive: Coding Stories by Adam Gordon Bell - Software Developer

    CoRecursive: Coding Stories

    189 Listeners

    Flirting with Models by Corey Hoffstein

    Flirting with Models

    229 Listeners

    Alpha Exchange by Dean Curnutt

    Alpha Exchange

    82 Listeners

    Dwarkesh Podcast by Dwarkesh Patel

    Dwarkesh Podcast

    551 Listeners

    Oxide and Friends by Oxide Computer Company

    Oxide and Friends

    67 Listeners

    Latent Space: The AI Engineer Podcast by Latent.Space

    Latent Space: The AI Engineer Podcast

    101 Listeners

    Money Stuff: The Podcast by Bloomberg

    Money Stuff: The Podcast

    403 Listeners

    Complex Systems with Patrick McKenzie (patio11) by Patrick McKenzie

    Complex Systems with Patrick McKenzie (patio11)

    143 Listeners

    The Pragmatic Engineer by Gergely Orosz

    The Pragmatic Engineer

    77 Listeners