I've found that I tend to not use the debugger with test driven development, an appropriate level of refactoring (so subroutines aren't that long), and decent coverage with tests.

I have used a lot of the debuggers out there, but I find most of them inadequate. Most of my work is module development, but debuggers want a script to run. I guess I could run a test script in the debugger, but if I have a nice test script, I already zero in on the problem pretty quickly. If I have to write a short script to isolate a problem, I find it pretty pointless to start up the debugger to run it.

If I need something else, I just use print() statements, or have some sort of conditional logging turned on.

The people have have tried to convince me to use one or another debugger are usually the sort that work on single scripts and modules from only CPAN (so they aren't debugging their own modules). I'm just not doing that sort of development, or looking for the same sort of errors they are. Your mileage may vary.

No matter what anyone says, however, do what works for you. Give other techniques a fair shot, but use what makes you productive. Different people will like different things.

--
brian d foy <brian@stonehenge.com>

In reply to Re: I never use the debugger. by brian_d_foy
in thread I never use the debugger. by friedo

Title:
Use:  <p> text here (a paragraph) </p>
and:  <code> code here </code>
to format your post, it's "PerlMonks-approved HTML":



  • Posts are HTML formatted. Put <p> </p> tags around your paragraphs. Put <code> </code> tags around your code and data!
  • Titles consisting of a single word are discouraged, and in most cases are disallowed outright.
  • Read Where should I post X? if you're not absolutely sure you're posting in the right place.
  • Please read these before you post! —
  • Posts may use any of the Perl Monks Approved HTML tags:
    a, abbr, b, big, blockquote, br, caption, center, col, colgroup, dd, del, details, div, dl, dt, em, font, h1, h2, h3, h4, h5, h6, hr, i, ins, li, ol, p, pre, readmore, small, span, spoiler, strike, strong, sub, summary, sup, table, tbody, td, tfoot, th, thead, tr, tt, u, ul, wbr
  • You may need to use entities for some characters, as follows. (Exception: Within code tags, you can put the characters literally.)
            For:     Use:
    & &amp;
    < &lt;
    > &gt;
    [ &#91;
    ] &#93;
  • Link using PerlMonks shortcuts! What shortcuts can I use for linking?
  • See Writeup Formatting Tips and other pages linked from there for more info.