Oxide and Friends

Debugger-Driven Development

22 snips
Jun 16, 2025
Dave Pacheco and John Gallagher, both Oxide colleagues, share their expertise in debugging tools and system development. They discuss the revolutionary concept of debugger-driven development, showcasing how tools like MDB and OMDB enhance system performance. The conversation also touches on managing dynamic changes in systems with the Reconfigurator and emphasizes the importance of collaboration in debugging practices. Their insights reveal how innovation and effective tool creation can significantly streamline development processes.
Ask episode
AI Snips
Chapters
Transcript
Episode notes
INSIGHT

MDB's Modular Debugger Innovation

  • MDB debugger innovated with modules written in C that allowed deep, application-specific introspection of kernel data structures.
  • It enabled pipelines and walkers to compose complex queries, revolutionizing system debugging capabilities early on.
ANECDOTE

Co-developing Debugger & Cyclics

  • Bryan Cantrill developed debugger commands alongside the Cyclics subsystem to validate internal timer state during system development.
  • This co-development accelerated the system's creation by integrating debugging support from the start.
INSIGHT

OMDB Enables Distributed Debugging

  • OMDB was designed as a debugger for distributed systems, fetching state via cooperating components rather than attaching like traditional debuggers.
  • This approach enabled monitoring and debugging across multiple nodes where direct process attachment is impractical.
Get the Snipd Podcast app to discover more snips from this episode
Get the app