People tend to look down on print debugging as it's not using sophisticated tools at all. You're not using debuggers or profilers or sophisticated loggers.
But don't look down on print debugging. It's the tool that works for all languages. It's easy to understand and easy to implement. It focuses the mind on thorough reading and understanding of code, rather than getting lost in a forest of data.
Print debugging is really effective in many cases.