Re:You say “cave dweller debugging”, I say debug logging
by supermatt on Friday May 06, 2022 @10:55AM
(#31285892)
Oh yeah, most definitely - tooling isn't just debuggers, after all. I often use network traffic monitors, packet analysers, etc. No doubt in the microcontroller and EE world theres specific tooling too. That includes the humble logger :)
Re:You say “cave dweller debugging”, I say debug logging
by dahfizz on Friday May 06, 2022 @10:13AM
(#31285346)
I will add
C) debugging signal handlers is somewhere between tricky and impossible depending on the scenario because of how debuggers work.
D) debugging optimized code. -O2 or -O3 code will have everything executing out of order, all variables are optimizes out, everything is inlined, etc.
A) When developing for a microcontroller (however large or small). Stepping debuggers are limited, and sometimes unavailable at all. Most are clunky. ARM is the best here.
B) Running real time things. E.g. you can't step through a Bluetooth comms process because the moment you hit a breakpoint you aren't servicing a link and everything falls over.
There are some good tools like reverse time debuggers (e.g. https://undo.io/) that deal with the real time thing, but nothing deals with the combination. Plus a well maintained set of log outputs often tells you exactly what went wrong with just a cursory glance through the logs.