💬 SenQuotes.com
 Quotes

Brian Kernighan Quotes

Brian Kernighan Quotes
1.
Debugging is twice as hard as writing the code in the first place. Therefore, if you write the code as cleverly as possible, you are, by definition, not smart enough to debug it.
Brian Kernighan

2.
Do 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

3.
Controlling complexity is the essence of computer programming.
Brian Kernighan

4.
The most effective debugging tool is still careful thought, coupled with judiciously placed print statements.
Brian Kernighan

5.
Another effective [debugging] technique is to explain your code to someone else. This will often cause you to explain the bug to yourself. Sometimes it takes no more than a few sentences, followed by an embarrassed "Never mind, I see what's wrong. Sorry to bother you." This works remarkably well; you can even use non-programmers as listeners. One university computer center kept a teddy bear near the help desk. Students with mysterious bugs were required to explain them to the bear before they could speak to a human counselor.
Brian Kernighan

Similar Authors: Ralph Waldo Emerson William Shakespeare Donald Trump Mahatma Gandhi Barack Obama Rush Limbaugh Henry David Thoreau Friedrich Nietzsche Mark Twain Rajneesh Cassandra Clare C. S. Lewis Albert Einstein Oscar Wilde Thomas Jefferson
6.
90% of the functionality delivered now is better than 100% delivered never.
Brian Kernighan

7.
C is a razor-sharp tool, with which one can create an elegant and efficient program or a bloody mess.
Brian Kernighan

8.
Don't document bad code - rewrite it.
Brian Kernighan

Quote Topics by Brian Kernighan: Debugging Way Programming Firsts Tools Writing Interesting Maps Defeat Thinking Believe Mean Bugs Inspirational Razors Data Tests Mind Language Functionality Statistics Clarity Efficiency Fundamentals Mathematics Technology Answers Clever Essence Software Engineering
9.
... 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 Kernighan

10.
Believe the terrain, not the map
Brian Kernighan

11.
Each new user of a new system uncovers a new class of bugs.
Brian Kernighan

12.
If you had done something twice, you are likely to do it again.
Brian Kernighan

13.
If you're as clever as you can be when you write it, how will you ever debug it?
Brian Kernighan

14.
Mechanical rules are never a substitute for clarity of thought.
Brian Kernighan

15.
As we said in the preface to the first edition, C "wears well as one's experience with it grows." With a decade more experience, we still feel that way.
Brian Kernighan

16.
Trivia rarely affect efficiency. Are all the machinations worth it, when their primary effect is to make the code less readable?
Brian Kernighan

17.
Some 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

18.
An effective way to test code is to exercise it at its natural boundaries
Brian Kernighan

19.
Trying to outsmart a compiler defeats much of the purpose of using one.
Brian Kernighan

20.
Get the weirdnesses into the data where you can manipulate them easily, and the regularity into the code because regular code is a lot easier to work with
Brian Kernighan