Some of these tips were adapted from the following sources:
Debugging
for Beginners
Debugging
101
Debugging
Logic Errors (ppt)
maybe put a link to those couple of sites
isolate down to the problematic data, break into smaller testing sets
if necessary, no need to run on full set each time
remember to check the data since it is real-world data and may not be
perfect
write and test your code in small pieces as you go
maybe even do unit tests tho that's usually overkill for us
an actual debugger is also usually overkill. just do print-debug
put a few examples
variable values at different steps, your data changing at different
steps, find out where things break