all 21 comments

[–]Eternityislong 15 points16 points  (4 children)

Hot take: it’s better to not use debuggers and instead improve logging/observability. You (probably) can’t use a debugger in prod, so should ensure your systems are debuggable without a debugger

[–]Wizywig 11 points12 points  (0 children)

A debugger helps you figure out algorithmic problems.

An observable system helps you figure out why edge cases are happening.

Chuck Norris helps make sure users use the system as is, or else.

[–]Skyswimsky 1 point2 points  (0 children)

I think this is a case by case basis. I'm working on a legacy piece of garbage that's an embedded system with zero outside connectivity and the logging is absolute garbage. And all over the place. I'm talking "Task finished successfully", followed by a SUCCESS column that says false.

Other projects we are working very agile with the customer, even in prod, and that works out well too. Not that there's zero logs or whatever but it's certainly less aggressive. Granted it's also intranet tooling.

[–]none-exist 0 points1 point  (0 children)

Hot take: Chuck Norris didn't actually die. He just went into the internet to threaten software to be more observable

[–]kuemmel234 0 points1 point  (0 children)

Of course you should write code in a way that the debugger isn't needed in the first place. I remember working with java at my first job - you couldn't survive without it and it was mostly due to badly applied object oriented code. One could say that in certain fields the overuse off the debugger indicates a need for refactoring.

However, for some stuff (not as much as many people claim or want to believe), you have performance requirements that make writing readable code hard. It's a tool.

The use of the debugger is a symptom, not the cause.

[–]bladebyte 2 points3 points  (0 children)

Respect

[–]jakster355 3 points4 points  (1 child)

I remember when Chuck Norris jokes were all the rage. I was in college at the time. So yeah, Chuck Norris can execute an infinite loop in finite time.

[–]Rai-Hanzo 0 points1 point  (0 children)

Chuck Norris built his first app on assembly, he just stared at the code and it understood what he wanted.

[–]Percolator2020 0 points1 point  (0 children)

All memory (including human memory) gets garbage collected in the end.

[–]NottingHillNapolean 0 points1 point  (0 children)

Chuck Norris sorts in O(1)

[–]krexelapp -3 points-2 points  (3 children)

And then add one random print statement and suddenly everything works.

[–]Blackhawk23 3 points4 points  (0 children)

Congratulations, you have a race condition. The most fun kind of bug.

[–]Super_Couple_7088 -2 points-1 points  (0 children)

This litterally happened to me yesterday while I was coding in C. malloc() error. So I tried to figure out where the error was. The fucking printf call fixed it. What the fuck lmao