Take the 2-minute tour ×
Programmers Stack Exchange is a question and answer site for professional programmers interested in conceptual questions about software development. It's 100% free, no registration required.

What's your favourite quote about programming?

One quote per answer, and please check for duplicates before posting!

share

locked by Yannis Rizos Sep 14 '12 at 17:07

This question exists because it has historical significance, but it is not considered a good, on-topic question for this site, so please do not use it as evidence that you can ask similar questions here. This question and its answers are frozen and cannot be changed. More info: help center.

closed as not constructive by Walter, ChrisF Feb 7 '11 at 13:10

As it currently stands, this question is not a good fit for our Q&A format. We expect answers to be supported by facts, references, or expertise, but this question will likely solicit debate, arguments, polling, or extended discussion. If you feel that this question can be improved and possibly reopened, visit the help center for guidance.If this question can be reworded to fit the rules in the help center, please edit the question.

comments disabled on deleted / locked posts

166 Answers

I'm not sure if he's the originator of this quote, but I attended a session at a conference once where Alex Pukinskis said this and I love it!

Untested code has no business value - Alex Pukinskis

share
add comment

Commenting your code is like cleaning your bathroom - you never want to do it, but it really does create a more pleasant experience for you and your guests.

— Ryan Campbell

share
1  
Meh...Most comments I've encountered in my life are written under the assumption that comments can make up for poorly written code.. –  Stargazer712 Oct 14 '10 at 20:53
2  
I enjoy writing comments too, but you wouldn’t want to see my bathroom. –  Timwi Dec 26 '10 at 12:48
show 3 more comments

Walking on water and developing software from a specification are easy if both are frozen.

— Edward V Berard

share
4  
+1. Printed that one out for the office notice board –  billy.bob Oct 8 '10 at 11:38
1  
+1 This one is now our departmental motto. –  Reallyethical Oct 24 '10 at 13:44
show 2 more comments
up vote 232 down vote
+100

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 W. Kernighan

share
6  
A corolloary of an otherwise true maxim: Don't forget that a diagram can increase your brain power. You can swap out "remember structure of big thing" to nonvolatile paper. –  Tim Williscroft Oct 25 '10 at 0:49
1  
I love the quote but the implication is that we should at most put 50% of our effort into coding in the first place. –  Jon Hopkins Nov 12 '10 at 9:55
4  
I think the implication is that you should avoid that programmer's urge to use the 'clever' way to do something when the slightly longer, more obvious way of doing something works just fine. –  Fishtoaster Nov 12 '10 at 17:48
2  
But what if it's "perfect" code? There's no way to "debug" that. –  muntoo Dec 12 '10 at 4:34
show 1 more comment

This isn't strictly a programming quote and I don't recall where I first heard it, but I've repeated it plenty of times on the job:

If you don't test it, it doesn't work.

share
show 1 more comment

Keep it simple, stupid!

The KISS principle

share
1  
Is that specifically a programming quote? –  Peter Coulton Sep 10 '10 at 19:22
5  
No, it's a generally-applicable engineering principle. –  Mason Wheeler Sep 13 '10 at 0:01
add comment

Programming is like sex: one mistake and you have to support it for the rest of your life.
  — Michael Sinz

share
add comment

The fool wonders, the wise man asks.
  — Benjamin Disraeli

share
show 2 more comments

The real question is not whether machines think but whether men do.

— B. F. Skinner

Related more to AI than to simple programming, but I still like it.

share
add comment

It always takes longer than you expect, even when you take into account Hofstadter's Law.
  — Hofstadter's Law

share
72  
Brain stack overflow. –  Nathan Taylor Sep 2 '10 at 1:45
3  
@Joe D: I'm curious how you'd rewrite a recursive English sentence into a single non-recursive sentence. –  Jon Purdy Sep 22 '10 at 4:08
4  
It may converge for sufficient small values of "longer" –  mouviciel Sep 22 '10 at 18:02
3  
+1 - I'm proud to count myself among the top billion programmers along with Douglas Hofstadter. –  Peter Turner Oct 11 '10 at 16:09
show 3 more comments

As formulated by Eric S. Raymond:

Linus's Law

Given a large enough beta-tester and co-developer base, almost every problem will be characterized quickly and the fix obvious to someone.

Or, less formally,

Given enough eyeballs, all bugs are shallow.

share
show 3 more comments

A clever person solves a problem. A wise person avoids it.
  — Albert Einstein

share
5  
Programming quote? –  Jonas Sep 2 '10 at 9:06
22  
This quote is very relevant to programming –  finnw Sep 6 '10 at 3:16
add comment

Programming today is a race between software engineers striving to build bigger and better idiot-proof programs, and the Universe trying to produce bigger and better idiots. So far, the Universe is winning.

— Rick Cook

share
add comment

Quoting Kent Beck:

Make It Work
Make It Right
Make It Fast

share
1  
Pick 2............ –  WalterJ89 Oct 7 '10 at 16:45
2  
Whew! For a minute there I thought you had written "Glenn" Beck... ;-) –  MikeSchinkel Dec 4 '10 at 10:51
add comment

Some people, when confronted with a problem, think "I know, I'll use regular expressions."
Now they have two problems.

— Jamie Zawinski

share
5  
A timeless classic –  Factor Mystic Sep 8 '10 at 23:52
5  
Some people, when confronted with a problem, think "I know, I'll use <some problem solving implementation>." Now they have two problems. –  Callum Rogers Sep 22 '10 at 18:58
40  
Some people when confronted with a problem don't think, they just post on StackOverflow –  Matt Ellen Oct 11 '10 at 8:16
5  
Some people don't understand regular expressions, and hate them because others do. –  Orbling Dec 16 '10 at 17:14
3  
@Yar - I've never found the syntax obtuse personally, and the density is a good thing. Why express something like a pattern match in a more verbose format? Where clarity is required for something complicated, the extended mode can be used with comments. –  Orbling Dec 26 '10 at 3:59
show 3 more comments

Software is like sex: it's better when it's free.

— Linus Torvalds

share
9  
Can you split this in two different answers so that they can be voted independently? –  Lorenzo Sep 2 '10 at 7:36
8  
The real question is, how did Linus come to find this out? –  Kieran Senior Sep 29 '10 at 14:49
4  
Software is like sex because it's never really free. –  Darel Jan 20 '11 at 19:39
show 5 more comments

It's all talk until the code runs.
  — Ward Cunningham

share
add comment

What's the simplest thing that could possibly work?

— Ward Cunningham

share
show 1 more comment

You can use an eraser on the drafting table or a sledgehammer on the construction site - Frank Lloyd Wright

Not exactly a programming quote but it most certainly applies.

share
14  
Highly applicable IMO –  John MacIntyre Sep 9 '10 at 1:06
3  
Luckily for us when most software goes wrong it doesn't collapse and kill people. –  Neil Aitken Sep 29 '10 at 10:58
8  
Except when it blows up an Ariane 5 (Flight 501), or doses people with lethally high levels of radiation... –  Frank Shearar Oct 2 '10 at 19:58
2  
Ironically, I believe many of Frank Lloyd Wright's more convoluted buildings have fallen into disrepair. –  Maxpm Dec 16 '10 at 5:03
1  
@TomWij, @Walter, @Roger: Please refrain from dirtying this site with your metatalk. If I wanted to hear bickering, I would visit meta.stackoverflow.com. This is where you should be having this fascinating and timeless conversation. –  Yar Dec 26 '10 at 0:49
show 17 more comments

There is always one more bug.
  — Lubarsky's Law of Cybernetic Entomology

share
add comment

You wanted a banana but what you got was a gorilla holding the banana and the entire jungle.
  — Joe Armstrong on object-oriented programming

share
2  
Still laughing... |) –  AareP Dec 16 '10 at 19:00
show 2 more comments

In Hebrew there's a saying (mostly by army conscripted programmers):

באג בדיזיין -> זין בדיבאג

Which is an anagram, and it roughly translates to

Bugs in the design -> you're f^#ked while debugging

share
5  
I don't think there's any way to translate the humor to English, but nice quote. –  EpsilonVector Sep 2 '10 at 10:10
show 1 more comment

There are two major products that come out of Berkeley: LSD and UNIX. We don't believe this to be a coincidence.

Jeremy S. Anderson

share
3  
This quote is wrong. Just wrong. See web.morons.org/feature/rants/bsdlsd.jsp –  imgx64 Sep 22 '10 at 3:00
3  
That's a shame because it's a great phrase. –  Neil Aitken Sep 29 '10 at 11:26
2  
@Neil: "If 'accurate' isn't a requirement, I could write an arbitrarily great phrase," to paraphrase another quote. :) –  Roger Pate Oct 11 '10 at 16:08
2  
What exactly is LSD? –  hasenj Nov 12 '10 at 10:19
2  
@hasen j, Traditionally, pounds, shillings, and pence, but nowadays a hallucinogen. –  TRiG Dec 1 '10 at 18:45
show 9 more comments

There are 10 kinds of people in the world — those who understand binary and those who don't.

share
12  
and those who confuse it with ternary –  eds Sep 4 '10 at 1:30
51  
Every base is base 10. –  Larry Wang Sep 4 '10 at 3:10
4  
10 in what base? –  MIA Sep 21 '10 at 22:37
2  
@Malfist: Click. –  g.f Sep 28 '10 at 21:55
2  
all your base 10 are belong to us –  Sean Patrick Floyd Nov 12 '10 at 10:08
show 10 more comments

Debuggers don't remove bugs. They only show them in slow motion.

— Unknown

share
35  
Or in many cases, make them stop appearing entirely. –  Graeme Perrow Sep 27 '10 at 14:44
12  
@Graeme those cases are called Heisenbugs :) –  Here Be Wolves Sep 27 '10 at 19:40
add comment

We should forget about small efficiencies, say about 97% of the time: premature optimization is the root of all evil. Yet we should not pass up our opportunities in that critical 3%.
  — Donald Knuth, Structured Programming with go to Statements, JACM Computing Surveys, Vol 6, No. 4, Dec. 1974, p.268

This is extracted from the below two paragraphs, which not only say why he comes to the above conclusion, but gives information on how to avoid this mistake:

There is no doubt that the grail of efficiency leads to abuse. Programmers waste enormous amounts of time thinking about, or worrying about, the speed of noncritical parts of their programs, and these attempts at efficiency actually have a strong negative impact when debugging and maintenance are considered. We should forget about small efficiencies, say about 97% of the time: premature optimization is the root of all evil.

Yet we should not pass up our opportunities in that critical 3%. A good programmer will not be lulled into complacency by such reasoning, he will be wise to look carefully at the critical code; but only after that code has been identified. It is often a mistake to make a priori judgments about what parts of a program are really critical, since the universal experience of programmers who have been using measurement tools has been that their intuitive guesses fail. (…)

share
2  
@Roger Pate: I suspect you're right, most people don't realize there is more to the quote. –  Scott Dorman Sep 9 '10 at 14:01
27  
+1 for posting the whole thing. –  Mason Wheeler Sep 9 '10 at 23:41
5  
Hope you don't mind that I included a bit more. I think it's really important and maybe this will encourage more to read the full paper. :) –  Roger Pate Sep 10 '10 at 17:36
5  
+1 Thanks for the full quote. I never know there was more to it. –  Evan Plaice Sep 11 '10 at 9:10
2  
It's great that you posted the entire quote. A lot of people just know the sort version and have no idea what Knuth actually meant by that. –  DasIch Dec 26 '10 at 1:15
show 2 more comments

You can have the project:

  • Done On Time
  • Done On Budget
  • Done Properly

Pick two.

— Unknown

share
22  
5  
Reminds me of a similar triangle, but with women. "You can have a girlfriend that: Is smart, is attractive, has a good personality." –  Maxpm Dec 16 '10 at 4:59
5  
@Maxpm: The version I heard was "The 4 S's: Smart, Sexy, Sane, Single. Pick 3." –  Mason Wheeler Jan 20 '11 at 18:27
1  
So, when there are no constraints on time and budget you cannot do it properly. Good to know. –  Antsan Jan 20 '11 at 20:22
show 4 more comments

The art of simplicity is a puzzle of complexity.

Doug Horton

share
add comment

Always code as if the guy who ends up maintaining your code will be a violent psychopath who knows where you live.

— Rick Osborne

share
12  
it seems I keep ending up maintaining code that I wish I knew where the creator lived, but its probably a good thing I don't. –  WalterJ89 Sep 10 '10 at 7:00
8  
@webbiedave You work on ReiserFS? :) –  Neil Aitken Nov 1 '10 at 15:08
show 3 more comments

Not the answer you're looking for? Browse other questions tagged or ask your own question.