Mechanical rules are never a substitute for clarity of thought.
BRIAN KERNIGHANMechanical rules are never a substitute for clarity of thought.
BRIAN KERNIGHANDon’t document bad code – rewrite it.
BRIAN KERNIGHANTrying to outsmart a compiler defeats much of the purpose of using one.
BRIAN KERNIGHAN… it is a fundamental principle of testing that you must know in advance the answer each test case is supposed to produce. If you don’t, you are not testing; you are experimenting.
BRIAN KERNIGHANBelieve the terrain, not the map
BRIAN KERNIGHANIf you had done something twice, you are likely to do it again.
BRIAN KERNIGHANAnother effective [debugging] technique is to explain your code to someone else. This will often cause you to explain the bug to yourself.
BRIAN KERNIGHANC is a razor-sharp tool, with which one can create an elegant and efficient program or a bloody mess.
BRIAN KERNIGHANTrivia rarely affect efficiency. Are all the machinations worth it, when their primary effect is to make the code less readable?
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 KERNIGHAN