VacExcHndlrs: Debug by Accident or Debug Purposefully?
Details
Most Python developers learn debugging the hard way: trial and error, scattered print-calls, and the occasional frustrated Stack Overflow search. We've all done this, treating it as an art form requiring intuition or experience, when there's a better way. It should be a systematic discipline with repeatable techniques — even in the age of LLMs.
This presentation in the VacExcHndlrs series changes that. We'll take a quick tour of PyCharm's debugger, and then apply it to some sample code. Moving into:
- What value does this name actually reference?
- What type is it — really?
- Where does this object live in the call stack?
- Can I reach it from this scope?
We'll crowd-code to diagnose and fix my deliberately buggy-routines:
- Logic errors hiding in conditionals (why is the discount calculation broken?)
- Type mismatches causing silent failures (of course it's an int!)
- State accumulation bugs (why do results differ on the second call?)
- The bugs your colleagues actually write - and the ones you write yourself
We’ll use the debugger as a tool for reasoning — not just clicking "StepOver". Breakpoints, watches, frame inspection, evaluating expressions… properly.
All welcome. Aimed at all levels of Python skill, but you will be expected to at least be able to read Python code.
There will be a Door Prize, kindly donated by JetBrains.
