in reply to I never use the debugger.

When I used to write a lot in C, there were a few cases where debuggers were very useful as compared to just being a crutch. I could attach to a long running daemon to check out a bug that only occurred after the program had been running for days on end. Also, it was easier to observe the state of various data structures, rather than add/remove print statements or control flow changes and rebuild the code twice. If you really want to, you can also get better test coverage for code paths that are extremely unlikely to occur in real life, without altering the actual code.

In perl, I have hardly ever used a debugger, and in the cases where I did, probably have never really needed to. Adding and removing things like verbose logging, Data::Dumper prints, etc, is just so quick and easy there is almost no point. About the only time I could forsee really needing it would be if I had to try to debug a problem that is occuring in production in someone else's perl code (e.g. a CPAN module), and I didn't want to alter their code for fear of perturbing some other process on the system. Hasn't happened to me yet...