Print debugging is basically variable watch points, but IMHO easier.
The only time to really beware is embedded and real time systems where printing can throw timing way off or cause other side effects.
I heard of a case once where printing via JTAG caused an issue due to the power draw of sending all the extra data out. But that was trying to debug a novel board design and its software at once.
You won’t hit that kind of thing on normal computers like desktop, mobile, or cloud unless you are writing drivers.
The only time to really beware is embedded and real time systems where printing can throw timing way off or cause other side effects.
I heard of a case once where printing via JTAG caused an issue due to the power draw of sending all the extra data out. But that was trying to debug a novel board design and its software at once.
You won’t hit that kind of thing on normal computers like desktop, mobile, or cloud unless you are writing drivers.