Introduction

What is a bug?

Sometimes it’s a real bug:

moth taped to notebook page with caption "first case of bug being found"

But most of the time it is computer code that did not produce the output you anticipated.

Debugging Tasks

  1. Identify the bug

  2. Locate the bug

  3. Investigate the bug

  4. Reproduce the bug

  5. Fix the bug

  6. Prevent prevent bug

Not all of these steps will be relevant every time, but some of them will always be relevant, and sometimes you will need all of them.