About debugging with python's pdb and friends

I prepared some slides and a bit of demo code to demonstrate the python debugger pdb and how to work with this tool.

This is meant to be a hands-on session at my local python user group meetup in Frankfurt am Main at wednesday night.

I just learned that debugging with the help of an interactive tool instead of investing the time to write unit tests or just trying to form a better mental model of the code at hand seem to be a controversial debate amongst developers nowadays. Some renowned people in the community seem to completely avoid debuggers for various reasons.

Having thought about this debate I decided to include a bit of reading material which can give you advice when it may be a good idea to spend your time in the debugger or when it may be better to understand the "bigger picture" by eliminating the root cause of the error(s) by refactoring the code for better maintainability. Be sure to follow the links in the article and also check out the debate in the comments.