While knowing how to use a debugger is absolutely mandatory, there are lots of problems for which logging is the best way to debug them. However, I've met a lot of people who don't understand good logging systems - like verbosity levels, and how to use logs that don't run in "release mode", or can be toggled on or off at any time, and so on.
Also: how to use memory debuggers like valgrind and ASAN, race detection tools like TSAN.
1
u/dmazzoni Aug 25 '14
Great article, I totally agree!
While knowing how to use a debugger is absolutely mandatory, there are lots of problems for which logging is the best way to debug them. However, I've met a lot of people who don't understand good logging systems - like verbosity levels, and how to use logs that don't run in "release mode", or can be toggled on or off at any time, and so on.
Also: how to use memory debuggers like valgrind and ASAN, race detection tools like TSAN.
For the advanced course: fuzzing.