Johannes is a Backend and Systems Engineer by trade and works at Microsoft since 2019 to help game studios across the globe implement Online Game Services on Azure.
It should not. However, I do see there are languages and environments, where setting up a debugger may be hard.
But most people are application developers and don't do embedded etc. Those folks should really only use a debugger if possible (yeah, parallel programming indeed is a prob here) because usually it's even faster than printing, gives a lot more info, you can usually change stuff in the process and you don't forget print statements which may find their way into a public release.
I am working mostly with .NET Core and starting to debug is a matter of pressing one single keyboard key. Writing a debug print statement is actually more effort to me.
Debugging actually takes a long time. There is a famous quote.
"The most effective debugging tool is still careful thought, coupled with judiciously placed print statements." - Brian W. Kernighan
I find that more to the point.
It should not. However, I do see there are languages and environments, where setting up a debugger may be hard.
But most people are application developers and don't do embedded etc. Those folks should really only use a debugger if possible (yeah, parallel programming indeed is a prob here) because usually it's even faster than printing, gives a lot more info, you can usually change stuff in the process and you don't forget print statements which may find their way into a public release.
I am working mostly with .NET Core and starting to debug is a matter of pressing one single keyboard key. Writing a debug print statement is actually more effort to me.
Kernighan said that in 1979. I don't know if you've noticed, but software and tools have evolved a little bit since then.