top | item 5556013

Ask HN: Do you use a debugger?

15 points| karamazov | 13 years ago | reply

If so, (or if not), for which languages?

24 comments

order
[+] yen223|13 years ago|reply
When I work with C#, I use a debugger all the time. Learning how to attach a debugger to a running process saves a lot of headaches in the long run.

On the other hand, when I work with Python, I rarely had to use a debugger. Python's grammar is so simple that simply reading through the code is usually enough to spot most errors.

[+] zamalek|13 years ago|reply
Having been spoilt by the calibre of Microsoft debugging tools earlier on in my development career it's one of the very first things I get working when approaching new environments/languages. It's especially helpful when learning a language as experimentation is often a lot quicker than RTFM.
[+] shortlived|13 years ago|reply
IF the problem lends itself to debugging then a hearty "YES!" is my answer. Eclipse/Java is my debugger of choice but there are also fine standalone debuggers like JSwat or even the command line debugger.
[+] gurvinder|13 years ago|reply
how can you not use debugger and program/find defects. I mean for sure you can do print and alert, but that is highly inefficient way of debugging.
[+] jk|13 years ago|reply
gdb. I work in system software, so cross platform debugger is what helps to catch issues easily.

edit: gdb to debug asm and C code

[+] gesman|13 years ago|reply
Yes. Live, step by step debugging of fresh code is the best ever way to find hidden bugs that are otherwise undetectable by tests.
[+] room271|13 years ago|reply
I (mostly) write Scala and have never used a debugger. I'm not aware of any of my immediate colleagues who use one either.
[+] patforna|13 years ago|reply
For me, TDD, a REPL and the occasional console print statement almost completely eliminates the need for a debugger. That being said, I probably fire it up every couple of months when working on a java or .net project. #java #scala #ruby #javascript #.net
[+] codewright|13 years ago|reply
Prolifically in Python, JavaScript, and Clojure (sorta. I find Ritz annoying.)
[+] lifeisstillgood|13 years ago|reply
Can you point to your favourite approaches (import pdb; pdb.set trace() in console or wingide or ?
[+] gobengo|13 years ago|reply
I'm surprised at how few frontend developers make use of JavaScript's 'debugger;' statement. I find it invaluable.
[+] ianox|13 years ago|reply
Especially when debugging JavaScript in an environment without any built-in browser debugger. If you ever have to debug JavaScript running inside a .NET WebBrowser control the debugger statement will help you keep your sanity.
[+] codewright|13 years ago|reply
It really saves your ass when you're using underscore templates too.
[+] mayankj08|13 years ago|reply
Yes, I use debugger oftenly for GCC and I use GDB debugger for same.
[+] raindrift|13 years ago|reply
Yep! The Chrome debugger for js, and pry-debugger for ruby.
[+] webdisrupt|13 years ago|reply
With PHP...Xdebug which is incorporated in Netbeans IDE
[+] nekitamo|13 years ago|reply
OllyDBG every day, for x86 assembler :)
[+] kamaal|13 years ago|reply
On very few occasions have I ever faced a need to use a debugger.

Generally those situations are places where print statements are not allowed.

[+] stray|13 years ago|reply
Of course!

Common Lisp's debugger, accessed via slime is the best thing since running water.

Also a big fan of WingIDE's debugger for python.