Skip to content

Diagnostics

How to see, attribute, and respond to what's happening inside a running program — language-agnostic principles, with concrete examples in languages/.


Sections

  • Debugging — interactive debuggers, post-mortem analysis, core dumps, time-travel debugging, when prints beat breakpoints.
  • Logging — levels, structured logs, correlation IDs, log volume vs signal, sampling, retention.
  • Error Handling — exceptions vs result types, sentinel errors, error wrapping, stack traces, recovery vs propagation.