The most effective tool in my debugging toolbox continues to be "log everything in sight to the console until something looks weird"
@joepie91
Yep, with a recent course we had about a very specific SDK one of my coworkers asked how to attach a debugger. It didn't take very long for him to realize that this was annoying to do and the classic print to log type debugging was going to be easier.
@joepie91 Same. I've always been a print debugger. I know how to use breakpoint/step debuggers, but I find that in many cases, print debugging is significantly faster and easier. My main reason for breakpoints on lines/variables/events is to figure out what the heck is calling/changing it, and after that I usually add some more print statements.
One of my favourite extremely simple features of Perl is that a bare "warn();" will print the file and line number to stderr at runtime.