The most effective debugging tool is still careful thought, coupled with judiciously placed print statements.
Brian KernighanC is a razor-sharp tool, with which one can create an elegant and efficient program or a bloody mess.
Brian KernighanDo what you think is interesting, do something that you think is fun and worthwhile, because otherwise you won't do it well anyway.
Brian KernighanSome compilers allow a check during execution that subscripts do not exceed array dimensions. This is a help, but not sufficient. First, many programmers do not use such compilers because They're not efficient. (Presumably, this means that it is vital to get the wrong answers quickly.)
Brian Kernighan