Software Debugging

Go to class
Write Review

Free Online Course: Software Debugging provided by Udacity is a comprehensive online course, which lasts for 8 weeks long. The course is taught in English and is free of charge. Software Debugging is taught by Andreas Zeller.

Overview
  • In this class you will learn how to debug programs systematically, how to automate the debugging process and build several automated debugging tools in Python.

Syllabus
    • How Debuggers work
      • Theory: Scientific method and its application to debugging.,Fun fact: First bug in the history of computer science.,Practice: Building a simple tracer.
    • Asserting Expectations
      • Theory: Assertions in testing and in debugging.,Fun fact: The most expensive bug in history.,Practice: Improving the tracer.
    • Simplifying Failures
      • Theory: Strategy of simplifying failures. Binary search. Delta debugging principle.,Fun fact: Mozilla bugathon.,Practice: Building a delta debugger.
    • Tracking Origins
      • Theory: Cause-effect chain. Deduction. Dependencies. Slices.,Fun fact: Sherlock Holmes and Doctor Watson.,Practice: Improving the delta debugger.
    • Reproducing Failures
      • Theory: Types of bugs (Bohr bug, Heisenbug, Mandelbug, Schrodinbug). Systematic reproduction process.,Fun fact: Mad laptop bug.,Practice: Building a statistic debugging tool.
    • Learning from Mistakes
      • Theory: Bug database management. Classifying bugs. Bug maps. Learning from mistakes.,Fun fact: Programmer with the most buggy code.,Practice: Improving your tools and practicing on a real world bug database.

Tags