I believe this is still on topic.
This question comes from a mixture of curiosity and exasperation. A colleague refuses to use native debugging; whether in a stand-alone debugging tool or in an integrated IDE. I wouldn't care, except the colleague constantly complains he doesn't understand what the code is doing in the project we are working on and provides poor code contribution in return, affecting my work output.
Remarks about documentation, code clarity etc aside, I want to build a strong argument for the use of an IDE or at the very least a debugger. One point is that most modern IDEs come bundled with an inbuilt native debugging feature with very little setup involved.
This question is a tangent to one flippant point that crossed my mind; as to how long people have been using native debugging for. I cannot actually find out much information on when people started using native debuggers or when it became 'wide spread'.
When I say native debugging, I mean using breakpoints to pause code execution, see all variable values in the current scope, the call stack and stepping through the code. As such, echo and console log is out.