Hacker News new | ask | show | jobs
by benol 1047 days ago
I am very much in the opposite camp, I am 10x more productive in tech stacks where I can use an interactive debugger.

It’s not that I enjoy stepping through code line by line, I rely on a debugger to verify if my assumptions about “starting conditions” of a certain piece of code are correct and, if so, at which point my understanding of how things should be no longer reflect reality.

This can all be done with printf, if you knew ahead of time what you want to print. But most of the time I don’t, the whole point is that I do interactive exploration of the program state (“evaluate expression” is the main feature of a good debugger). When I find a problem I dig deeper, which is a lot faster within a debugger session than any recompilation loop I’ve ever seen (even in Go).

In similar spirit I play with SQL queries when given a data set that I need to extract something from.

2 comments

> I am 10x more productive in tech stacks where I can use an interactive debugger

Absolutely. It's not that I use a debugger that often, but when it's needed and a good one isn't available, I'll be hitting my head against the wall.

Languages without excellent debuggers (and profilers) have no place in production code. Because when you need the tools, you need them.

Seconded. A debugger is a very efficient way to print out values in the middle of a computation. Example: in a test case.

I do this even with high-level languages like Python.