MOOC List is learner-supported. When you buy through links on our site, we may earn an affiliate commission.
MOOC List is learner-supported. When you buy through links on our site, we may earn an affiliate commission.
At the end of this course you will have a solid understanding about systematic debugging, will know how to automate debugging and will have built several functional debugging tools in Python.
What You Will Learn
Lesson 1
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.
Lesson 2
Asserting Expectations
- Theory: Assertions in testing and in debugging.
- Fun fact: The most expensive bug in history.
- Practice: Improving the tracer.
Lesson 3
Simplifying Failures
- Theory: Strategy of simplifying failures. Binary search. Delta debugging principle.
- Fun fact: Mozilla bugathon.
- Practice: Building a delta debugger.
Lesson 4
Tracking Origins
- Theory: Cause-effect chain. Deduction. Dependencies. Slices.
- Fun fact: Sherlock Holmes and Doctor Watson.
- Practice: Improving the delta debugger.
Lesson 5
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.
Lesson 6
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.
MOOC List is learner-supported. When you buy through links on our site, we may earn an affiliate commission.
MOOC List is learner-supported. When you buy through links on our site, we may earn an affiliate commission.