What's your favourite quote about programming?
One quote per answer, and please check for duplicates before posting!
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.
Crockford is the sole user of the super-strict equality operator (====), which either returns true or kicks you in the balls.
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
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.
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.
Computers are useless. They can only give you answers.
— Pablo Picasso
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.
A normal person believes a kilobyte is 1000 bytes, a coder believes a kilometer is 1024 meters.
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.
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.
Why fix an old bug if you can write three new ones in the same time?
— David Kastrup
... 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
Quoting Kent Beck:
Make It Work
Make It Right
Make It Fast
Anyone attempting to produce random numbers by purely arithmetic means is, of course, in a state of sin.
— John von Neumann
Real Programmers don't comment their code. If it was hard to write, it should be hard to understand.
— Tom Van Vleck
Those who try to build idiot-proof systems always underestimate the persistence and ingenuity of idiots.
One accurate measurement is worth more than a thousand expert opinions.
Admiral Grace Hopper
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
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?
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
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...
Programming is one of the most difficult branches of applied mathematics; the poorer mathematicians had better remain pure mathematicians
— Edsger W. Dijkstra
"The complexity you remove can never fail" -- Burt Rutan on the Ansari X Prize
The art of simplicity is a puzzle of complexity.
The best code is no code at all
"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"
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
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.