Top 50 Programming Quotes of All Time

I hope you have enjoyed our collection of funny computer quotes, Linux quotes, and all those quotes that we have shared with you so far. For today, I've decided to gather a good number of my all-time favorite programming-related quotes.

Most of the programming quotes I've collected are made by some of the famous names in the industry, while others came from not-so-famous people. Nevertheless, they are all witty so I hope you will find them fascinating and enlightening.

Without further delay, here are my top 50 programming quotes of all time:

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

- Rick Cook

49. "Lisp isn't a language, it's a building material."

- Alan Kay.

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

- Edward V Berard

47. "They don't make bugs like Bunny anymore."

- Olav Mjelde.

46. "A programming language is low level when its programs require attention to the irrelevant."

- Alan J. Perlis.

45. "A C program is like a fast dance on a newly waxed dance floor by people carrying razors."

- Waldi Ravens.

44. "I have always wished for my computer to be as easy to use as my telephone; my wish has come true because I can no longer figure out how to use my telephone."

- Bjarne Stroustrup

43. “Computer science education cannot make anybody an expert programmer any more than studying brushes and pigment can make somebody an expert painter.”

- Eric S. Raymond

42. “Don’t worry if it doesn’t work right. If everything did, you’d be out of a job.”

- Mosher’s Law of Software Engineering

41. “I think Microsoft named .Net so it wouldn’t show up in a Unix directory listing.”

- Oktal

40. “Fine, Java MIGHT be a good example of what a programming language should be like. But Java applications are good examples of what applications SHOULDN’T be like.”

- pixadel

39. “Considering the current sad state of our computer programs, software development is clearly still a black art, and cannot yet be called an engineering discipline.”

- Bill Clinton

38. "The use of COBOL cripples the mind; its teaching should therefore be regarded as a criminal offense."

- E.W. Dijkstra

37. "In the one and only true way. The object-oriented version of 'Spaghetti code' is, of course, 'Lasagna code'. (Too many layers)."

- Roberto Waltman.

36. "FORTRAN is not a flower but a weed — it is hardy, occasionally blooms, and grows in every computer."

- Alan J. Perlis.

35. “For a long time it puzzled me how something so expensive, so leading edge, could be so useless. And then it occurred to me that a computer is a stupid machine with the ability to do incredibly smart things, while computer programmers are smart people with the ability to do incredibly stupid things. They are, in short, a perfect match.”

- Bill Bryson

34. "In My Egotistical Opinion, most people's C programs should be indented six feet downward and covered with dirt."

- Blair P. Houghton.

33. "When someone says: 'I want a programming language in which I need only say what I wish done', give him a lollipop."

- Alan J. Perlis

32. "The evolution of languages: FORTRAN is a non-typed language. C is a weakly typed language. Ada is a strongly typed language. C++ is a strongly hyped language."

- Ron Sercely

31. "Good design adds value faster than it adds cost."

- Thomas C. Gale

30. "Python's a drop-in replacement for BASIC in the sense that Optimus Prime is a drop-in replacement for a truck."

- Cory Dodt

29. "Talk is cheap. Show me the code."

- Linus Torvalds

28. "Perfection [in design] is achieved, not when there is nothing more to add, but when there is nothing left to take away."

- Antoine de Saint-Exupéry

27. "C is quirky, flawed, and an enormous success."

- Dennis M. Ritchie.

26. "In theory, theory and practice are the same. In practice, they’re not."

- Yoggi Berra

25. “You can’t have great software without a great team, and most software teams behave like dysfunctional families.”

- Jim McCarthy

24. "PHP is a minor evil perpetrated and created by incompetent amateurs, whereas Perl is a great and insidious evil, perpetrated by skilled but perverted professionals."

- Jon Ribbens

23. "Programming is like kicking yourself in the face, sooner or later your nose will bleed."

- Kyle Woodbury

22. "Perl – The only language that looks the same before and after RSA encryption."

- Keith Bostic

21. "It is easier to port a shell than a shell script."

- Larry Wall

20. "I invented the term 'Object-Oriented', and I can tell you I did not have C++ in mind."

- Alan Kay

19. "Learning to program has no more to do with designing interactive software than learning to touch type has to do with writing poetry"

- Ted Nelson

18. “The best programmers are not marginally better than merely good ones. They are an order-of-magnitude better, measured by whatever standard: conceptual creativity, speed, ingenuity of design, or problem-solving ability.”

- Randall E. Stross

17. “If McDonalds were run like a software company, one out of every hundred Big Macs would give you food poisoning, and the response would be, ‘We’re sorry, here’s a coupon for two more.’ “

- Mark Minasi

16. "Beware of bugs in the above code; I have only proved it correct, not tried it."

- Donald E. Knuth.

15. "Computer system analysis is like child-rearing; you can do grievous damage, but you cannot ensure success."

- Tom DeMarco

14. "I don't care if it works on your machine! We are not shipping your machine!"

- Vidiu Platon.

13. "Sometimes it pays to stay in bed on Monday, rather than spending the rest of the week debugging Monday's code."

- Christopher Thompson

12. "Measuring programming progress by lines of code is like measuring aircraft building progress by weight."

- Bill Gates

11. "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.

10. "People think that computer science is the art of geniuses but the actual reality is the opposite, just many people doing things that build on each other, like a wall of mini stones."

- Donald Knuth

9. “First learn computer science and all the theory. Next develop a programming style. Then forget all that and just hack.”

- George Carrette

8. “Most of you are familiar with the virtues of a programmer. There are three, of course: laziness, impatience, and hubris.”

- Larry Wall

7. “Most software today is very much like an Egyptian pyramid with millions of bricks piled on top of each other, with no structural integrity, but just done by brute force and thousands of slaves.”

- Alan Kay

6. “The trouble with programmers is that you can never tell what a programmer is doing until it’s too late.”

- Seymour Cray

5. “To iterate is human, to recurse divine.”

- L. Peter Deutsch

4. "On two occasions I have been asked [by members of Parliament]: 'Pray, Mr. Babbage, if you put into the machine wrong figures, will the right answers come out?' I am not able rightly to apprehend the kind of confusion of ideas that could provoke such a question."

- Charles Babbage

3. "Most good programmers do programming not because they expect to get paid or get adulation by the public, but because it is fun to program."

- Linus Torvalds

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

- Martin Golding

1. “There are two ways of constructing a software design. One way is to make it so simple that there are obviously no deficiencies. And the other way is to make it so complicated that there are no obvious deficiencies.”

- C.A.R. Hoare

If you have other interesting programming quotes to add, you may share them with us via comment.

YOU MAY ALSO LIKE

186 comments

As soon as we started programming, we found to our surprise that it wasn't as easy to get programs right as we had thought. Debugging had to be discovered. I can remember the exact instant when I realized that a large part of my life from then on was going to be spent in finding mistakes in my own programs. -- Maurice Wilkes, designer of EDSAC, on programming, 1949")

Creating computer software is always a demanding and painstaking process -- an exercise in logic, clear expression, and almost fanatical attention to detail. It requires intelligence, dedication, and an enormous amount of hard work. However, a certain amount of unpredictable and often unrepeatable inspiration is what usually makes the difference between adequacy and excellence.--(From the Unix "fortune" program.)

From http://blogs.sitepoint.com/2009/11/12/google-closure-how-not-to-write-javascript/ :

« In his talk on building JavaScript libraries, Dmitry [Baranovskiy, creator of the Raphaël JavaScript library for vectorial graphics ] compared JavaScript’s global scope to a public toilet. “You can’t avoid going in there,” he said. “But try to limit your contact with surfaces when you do.” »

The major difference between a thing that might go wrong and a thing that cannot possibly go wrong is that when a thing that cannot possibly go wrong goes wrong it usually turns out to be impossible to get at or repair.

Windows 9x: n. 32 bit extensions and a graphical shell for a 16 bit patch to an 8 bit operating system originally coded for a 4 bit microprocessor, written by a 2 bit company that can't stand 1 bit of competition. -- Cygwin FAQ

"You know, when you have a program that does something really cool, and you wrote it from scratch, and it took a significant part of your life, you grow fond of it. When it's finished, it feels like some kind of amorphous sculpture that you've created. It has an abstract shape in your head that's completely independent of its actual purpose. Elegant, simple, beautiful.

Then, only a year later, after making dozens of pragmatic alterations to suit the people who use it, not only has your Venus-de-Milo lost both arms, she also has a giraffe's head sticking out of her chest and a cherubic penis that squirts colored water into a plastic bucket. The romance has become so painful that each day you struggle with an overwhelming urge to smash the fucking thing to pieces with a hammer."

Software entities are more complex for their size than perhaps any other human construct because no two parts are alike. If they are, we make the two similar parts into a subroutine - - open or closed. In this respect, software systems differ profoundly from computers, buildings, or automobiles, where repeated elements abound. -- Fred Brooks, Jr.

Features are assets; Code is a liability. -- Paul Jensen

If you want to win in a software business, just take on the hardest problem you can find, use the most powerful language you can get, and wait for your competitors' pointy-haired bosses to revert to the mean. -- Paul Graham

"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

"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."

And my personal favorite:

"The most likely way for the world to be destroyed, most experts agree, is by accident. That's where we come in. We're computer professionals. We cause accidents."

It goes like this: If carpenters built houses the way programmers build programs, the first woodpecker that came along would destroy civilization. -- Jerry Weinberg (whose influence on many of us can never be overstated).

The Bill Clinton quote is actually fake and comes from an ancient (in internet terms) April Fools joke, in which Clinton was going to ban the term "Software Engineer", see http://tab.computer.org/fase/fase-archive/v4/v4n08.txt and look closely at the congressional bill number.

2. The human mind is not designed to do programming. It takes a good mind plus a brave heart to do programming well. You need to be smart enough to do it, but you need to be dumb enough to get it done.

Eric's quote doesn't rate being in the Top 50. The analogy doesn't work (art students don't study chemistry). His resume confirms he never took a single Comp Sci course at U of P, so has no direct basis for his claim. And some universities do teach more practical programming courses than theoretical ones. Obviously this topic is subjective, but I'm sorry, Eric's quote definitely isn't a top 50. You could probably find a Top 50 quote from him somewhere else, though.

To the person who wanted to correct the spelling of St. Antoine de Exupery's name: Don't you get it? This is all about programming, software and computers. Did you expect them to get it right the first time?

"The end of BASIC is just around the corner" (1977)"The end of BASIC is just around the corner" (1984)"The end of BASIC is just around the corner" (1998)"The end of BASIC is just around the corner" (2003)"The end of BASIC is just around the corner" (2007)

The context: "By failing to constrain a domain model along the same lines that a particular business in a particular industry operates, you are rejecting any real insight into its workings, and will struggle in the future to implement features that will seem to you like awkward special cases in your elegant metaworld."

I can't even begin to recount how many awkward special cases there are in my elegant metaworlds.

* "Every program has at least one bug and can be shortened by at least one instruction — from which, by induction, it is evident that every program can be reduced to one instruction that does not work."

* "First you listen to the users; then you ignore them."

"Simplicity has real value on its own that makes the system more usable. It's the difference between reading a 100-page manual and reading a 500-page manual. It is more than five times the size."

"Now that we have all this useful information, it would be nice to do something with it. (Actually, it can be emotionally fulfilling just to get the information. This is usually only true, however, if you have the social life of a kumquat.)" -Ken Arnold

There are two ways of constructing a software design. One way is to make it so simple that there are obviously no deficiencies. And the other way is to make it so complicated that there are no obvious deficiencies.

All programs contain at least one bug and one line of useless code. By fixing the bug and removing the useless line of code, you should be able to simplify any program to one line of useless code with a bug in it.

"A day may come when the courage of devs fail, when we forsake our QA friends and break all bonds of fellowship, but it is not this day. An hour of bugs and shattered features, when the age of devs comes crashing down! But it is not this day! This day we RELEASE!"