110
votes

What's your favourite quote about programming?

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

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.

locked by yannis 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.

Read more about locked posts here.

166 Answers 166

11
votes

Relationship between length and quality

If you want me to give you a two-hour presentation, I am ready today. If you want only a five-minute speech, it will take me two weeks to prepare.
  — Mark Twain

The shortest version:

If I had more time, I would have written a shorter letter.
  — Marcus T. Cicero

The near-perfectionist's version:

You know that I write slowly. This is chiefly because I am never satisfied until I have said as much as possible in a few words, and writing briefly takes far more time than writing at length.
  — Karl Friedrich Gauss

Several more discuss this concept from various angles.

11
votes

Crockford is the sole user of the super-strict equality operator (====), which either returns true or kicks you in the balls.

11
votes

Not really a programming quote, more of an IT one, but one that my A-Level IT teacher drummed into me aged 16:

Typing is no substitute for Thinking

  • 3
    Admirably ambiguous. – Randall Schulz Sep 22 '10 at 17:49
  • That comment is ambiguous,hence admirable :P – dog0 May 15 '11 at 11:03
10
votes

A good algorithm is like a sharp knife - it does exactly what it is supposed to do with a minimum amount of applied effort. Using the wrong algorithm to solve a problem is trying to cut a steak with a screwdriver: you may eventually get a digestible result, but you will expend considerable more effort than necessary, and the result is unlikely to be aesthetically pleasing.

  • 3
    A mouthful, but good. Like steak! – webbiedave Oct 12 '10 at 22:01
10
votes

Open source is free only if your time costs nothing

Heard it from a guy I worked with. Don't know who came up with this.

  • 1
    That's not so true, though. – Mark C Sep 28 '10 at 12:37
  • @Mark Why? (ps. it's a translation from Hebrew, and "free" is translated from a word that means "at no charge" and not "liberated/released/etc"). – Hila Sep 28 '10 at 14:50
  • I doesn't seem true because skilled programmers take on open source projects in their spare time, even though they could be working on extra "paid" projects instead. – Mark C Sep 28 '10 at 19:21
  • 1
    @Mark That's not what I meant... This quote is about the misconception that choosing an open source product over a commercial one is better because you don't have to pay for license (use, not develop). This is stupid, of course, since most of the time whatever you saved in licences you pay in programmer time due to lack of support and/or using products that are not good enough. There are good reasons to use OS. License price, I think, is not one of them. – Hila Sep 28 '10 at 19:46
  • 1
    My quote file attributes this to JWZ. – Michael H. Oct 1 '10 at 21:03
9
votes

Computers are useless. They can only give you answers.
  — Pablo Picasso

  • 1
    Considering Picasso died in 1973, I'm highly doubtful that he actually said this.. – Billy ONeal Jan 27 '11 at 23:20
  • "The first electronic computers were developed in the mid-20th century (1940–1945)" and Intel was already creating CPUs in 1971 (Intel 4004). So it doesn't make it impossible. – POSIX_ME_HARDER Feb 25 '11 at 16:22
  • @Billy There was a lot of talk amongst academics about the possibilities of computers at the time. – Rei Miyasaka Jun 19 '11 at 22:23
9
votes

Be nice to nerds. Chances are you'll end up working for one. - Bill Gates

The problem with quick and dirty...is that dirty remains long after quick has been forgotten. - Steve C McConnell

My site SoftwareQuotes.com is full of quotations about programming and software development.

  • 1
    I'm pretty sure it wasn't Bill Gates who made that quote – Terence Ponce Oct 2 '10 at 4:37
  • I remember it being attributed to him, along with a bunch of others that shouldn't be. Who was it? – Rei Miyasaka Dec 28 '10 at 1:57
9
votes

A normal person believes a kilobyte is 1000 bytes, a coder believes a kilometer is 1024 meters.

-Unknown

9
votes

It should be noted that no ethically-trained software engineer would ever consent to write a DestroyBaghdad procedure. Basic professional ethics would instead require him to write a DestroyCity procedure, to which Baghdad could be given as a parameter.

Nathaniel Borenstein

9
votes

A few months writing code can save you a few hours in design.

Which is modified from:

A few months in the laboratory can save you a few hours in the library.

  • what does it mean by that ??? – Sarawut Positwinyu Jul 7 '11 at 3:41
  • @Sarawut Positwinyu: It's a backwards way of saying 'do your research before doing your work'. – Steven Evers Jul 7 '11 at 12:25
8
votes

... one of the main causes of the fall of the Roman Empire was that, lacking zero, they had no way to indicate successful termination of their C programs.

-- Robert Firth

8
votes

xkcd "Compiling"

8
votes

Why fix an old bug if you can write three new ones in the same time?

— David Kastrup

7
votes

Quoting Kent Beck:

Make It Work
Make It Right
Make It Fast

  • 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
7
votes

Anyone attempting to produce random numbers by purely arithmetic means is, of course, in a state of sin.
  — John von Neumann

7
votes

Real Programmers don't comment their code. If it was hard to write, it should be hard to understand.
  — Tom Van Vleck

  • 5
    It's called code for a reason :) – Rook Oct 10 '10 at 21:42
  • While I love this quote, I tend to find the people maintaining my code disagree with it :) – Neil Aitken Nov 1 '10 at 15:18
7
votes

Those who try to build idiot-proof systems always underestimate the persistence and ingenuity of idiots.

— Anon

7
votes

One accurate measurement is worth more than a thousand expert opinions.

Admiral Grace Hopper

6
votes

I am one of those culprits who created the problem. I used to write those programs back in the '60s and '70s, and was so proud of the fact that I was able to squeeze a few elements of space by not having to put '19' before the year.

-- Alan Greenspan, former Federal Reserve chair

6
votes

How do we convince people that in programming simplicity and clarity—in short: what mathematicians call "elegance"—are not a dispensable luxury, but a crucial matter that decides between success and failure?

Edsger W. Dijkstra

  • Props to the guy who posted this on SO – Jonik Sep 22 '10 at 17:29
  • Answer: The same way you convince people that simplicity and clarity are essential to good writing! – Mark C Sep 28 '10 at 12:49
6
votes

A beautiful program is like a beautiful theorem: It does the job elegantly. It has a simple and perspicuous structure; people say, “Oh, yes. I see that’s the way to do it.”

-- Butler Lampson

6
votes

Every time I ask developers why their shiny new C# .NET version isn't nearly as fast and smooth as the old C/C++ version, I'm thinking of:

The most amazing achievement of the computer software industry is its continuing cancellation of the steady and staggering gains made by the computer hardware industry.
  — Henry Petroski

But they just tell me to shut up while they plaster on yet another level of abstraction...

  • Anders Hejlsberg also has a quote, which I don't remember in his exact words, that the goal of a language is to add layers of abstraction, not to move the window of abstraction upwards. You simply don't agree with the design goals of the platform. – Rei Miyasaka Dec 28 '10 at 1:55
6
votes

Programming is one of the most difficult branches of applied mathematics; the poorer mathematicians had better remain pure mathematicians

— Edsger W. Dijkstra

  • I find that incredibly pompous. – Mark C Oct 21 '10 at 5:39
  • 13
    @Mark: "You probably know that arrogance, in computer science, is measured in nanodijkstras." — Alan Kay, keynote speech at OOPSLA 1997 – Roger Pate Oct 22 '10 at 18:40
  • @RogerP Ah yes, I had forgotten that one. – Mark C Oct 22 '10 at 20:58
  • "Programmers are bozos" -- my high school math teacher. – Rei Miyasaka Jun 19 '11 at 22:29
6
votes

"The complexity you remove can never fail" -- Burt Rutan on the Ansari X Prize

5
votes

The art of simplicity is a puzzle of complexity.

Doug Horton

5
votes

The best code is no code at all

  • Butterflies!... – WalterJ89 Oct 7 '10 at 16:46
  • 1
    I think that's a corruption of the Taligent marketing catchphrase "there is no code faster than no code". – user4051 Oct 23 '10 at 19:48
5
votes

"It worked on MY computer!" -anon

"Programs must be written for people to read, and only incidentally for machines to execute." - Abelson and Sussman, from "The structure and interpretation of computer programs"

5
votes

Programmers are optimists by nature, they also have a keen eye for the downside. A hyperactive imagination for disaster scenarios is a professional asset; they have to think through everything that can go wrong in order to practice their craft.

-- Scott Rosenberg

5
votes

It's not about programming per se, but by a famous programmer:

The best way to predict the future is to invent it.
  — Alan Kay

Which is usually a good thing to remind myself to get moving and do things.

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