Sergej Chodarev (sergejx.net)
There are two ways to write code:
write code so simple there are obviously no bugs in it,
or write code so complex that there are no obvious bugs in it.
This is true for galactic hitchhikers and for developers.
Generally, if you can’t reproduce it, it’s almost impossible to fix.
— Anonymous programmer, Practices of Software Maintenance, Janice Singer
Create a focussed test that reveals the bug before you try fixing it.
Most exceptions tell both what failed and where it failed. If you’re lucky you might even get parameter values.