4 ms·
> Compare the above with logging: It is simple and trustworthy. Is it though? Add concurrency and it's no longer simple. Have an operation running millions of
by outworlder 4y ago
> Compare the above with logging: It is simple and trustworthy.
Is it though? Add concurrency and it's no longer simple. Have an operation running millions of times a second? Good luck even logging that fast enough. If you start adding logic to print only sometimes, now you get a poor-man's debugger.
- turtledragonfly 4y agoYes, see the other sequence of comments[1] where I clarify that a bit. I didn't mean it as an unalloyed "always maximally simple and trustworty in all cases" claim. Sorry for the ambiguous wording. Yet for me, in those high-concurrency/high-frequency situations, I feel like a debugger is also a pain to use and trust? In truth, I've had best luck solving those sorts of issues by old-fashioned thinking through it / talking it over with someone / creating hypotheses and testing them sort of analysis. And even for that, logging (or profiling, event tracing, and similar "dump lots of data" approaches) tends to produce better "see the big picture" information than a debugger's laser-like focus. Might come down to one's personality somewhat, too (: [1] https://news.ycombinator.com/item?id=35101564 https://news.ycombinator.com/item?id=35101564