This all day workshop will focus on strategies for debugging and the tools we have to find and exterminate the oddest of bugs in existing code. After reviewing our tools and some methodology for debugging; we will practice on contrived and real-world examples. We will tackle easy but common items first and then move on to harder examples involving memory pressure; wonky networks and race conditions. Then we’ll move on to truly bizarre problems that couldn’t ever happen in real life, could they? Attendees are encouraged to bring interesting bugs from their own work for the class to study.