Skip to content
quotesby

31 Donald Knuth Quotes

Donald Knuth offers witty, thoughtful takes on design, programming, and science.

Donald Knuth quotes

  1. Premature optimization is the root of all evil (or at least most of it) in programming.

    Permalink to quote #1
  2. Beware of bugs in the above code; I have only proved it correct, not tried it.

    Permalink to quote #2
  3. I can't be as confident about computer science as I can about biology. Biology easily has 500 years of exciting problems to work on. It's at that level.

    Permalink to quote #3
  4. The psychological profiling [of a programmer] is mostly the ability to shift levels of abstraction, from low level to high level. To see something in the small and to see something in the large.

    Permalink to quote #4
  5. The important thing, once you have enough to eat and a nice house, is what you can do for others, what you can contribute to the enterprise as a whole.

    Permalink to quote #5
  6. Science is what we understand well enough to explain to a computer. Art is everything else we do.

    Permalink to quote #6
  7. A mathematical formula should never be 'owned' by anybody! Mathematics belong to God.

    Permalink to quote #7
  8. I define UNIX as 30 definitions of regular expressions living under one roof.

    Permalink to quote #8
  9. I can't go to a restaurant and order food because I keep looking at the fonts on the menu.

    Permalink to quote #9
  10. Email is a wonderful thing for people whose role in life is to be on top of things. But not for me; my role is to be on the bottom of things. What I do takes long hours of studying and uninterruptible concentration.

    Permalink to quote #10
  11. An algorithm must be seen to be believed.

    Permalink to quote #11
  12. The sun comes up just about as often as it goes down, in the long run, but this doesn't make its motion random.

    Permalink to quote #12
  13. Any inaccuracies in this index may be explained by the fact that it has been sorted with the help of a computer.

    Permalink to quote #13
  14. A list is only as strong as its weakest link.

    Permalink to quote #14
  15. In fact what I would like to see is thousands of computer scientists let loose to do whatever they want. That's what really advances the field.

    Permalink to quote #15
  16. The hardest thing is to go to sleep at night, when there are so many urgent things needing to be done. A huge gap exists between what we know is possible with today's machines and what we have so far been able to finish.

    Permalink to quote #16
  17. The most important thing in the programming language is the name. A language will not succeed without a good name. I have recently invented a very good name and now I am looking for a suitable language.

    Permalink to quote #17

Also attributed

  1. I'll never know everything. My life would be a lot worse if there was nothing I knew the answers about - and if there was nothing I didn't know the answers about.

  2. [The Euclidean algorithm is] the granddaddy of all algorithms, because it is the oldest nontrivial algorithm that has survived to the present day.

  3. The process of preparing programs for a digital computer is especially attractive, not only because it can economically and scientifically rewarding, but also because it can be an aesthetic experience much like composing poetry or music.

  4. When certain concepts of TeX are introduced informally, general rules will be stated; afterwards you will find that the rules aren't strictly true. In general, the later chapters contain more reliable information than the earlier ones do. The author feels that this technique of deliberate lying will actually make it easier for you to learn the ideas. Once you understand a simple but false rule, it will not be hard to supplement that rule with its exceptions.

  5. In fact, my main conclusion after spending ten years of my life working on the TEX project is that software is hard. It's harder than anything else I've ever had to do.

  6. My first program taught me a lot about the errors that I was going to be making in the future, and also about how to find errors. That's sort of the story of my life, making errors and trying to recover from them. I try to get things correct. I probably obsess about not making too many mistakes.

  7. It would be nice if we could design a virtual reality in Hyperbolic Space, and meet each other there.

  8. I have a hunch that the unknown sequences of DNA will decode into copyright notices and patent protections.

  9. If you optimize everything, you will always be unhappy.

  10. Computers are good at following instructions, but not at reading your mind.

  11. Always remember, however, that there’s usually a simpler and better way to do something than the first way that pops into your head.

  12. The manuals we got from IBM would show examples of programs and I knew I could do a heck of a lot better than that. So I thought I might have some talent.

  13. I've never been a good estimator of how long things are going to take.

  14. AI has by now succeeded in doing essentially everything that requires 'thinking' but has failed to do most of what people and animals do 'without thinking'-that, somehow, is much harder.