Donald Knuth

From Quotes
While one person hesitates because he feels inferior, another is busy making mistakes and becoming superior.
Henry C. Link
Jump to: navigation, search

Donald Ervin Knuth (born 10 January 1938), Professor Emeritus of the Art of Computer Programming at Stanford University, is a renowned computer scientist and winner of the 1974 Turing Award.


  • Premature optimization is the root of all evil (or at least most of it) in programming.
    • in "Computer Programming as an Art", Turing Award lecture (1974)
  • Beware of bugs in the above code; I have only proved it correct, not tried it.
    • Donald Knuth's webpage states the line was used to end a memo entitled Notes on the van Emde Boas construction of priority deques: An instructive use of recursion (1977)
  • 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.
  • 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.
  • 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.
  • The whole thing that makes a mathematician’s life worthwhile is that he gets the grudging admiration of three or four colleagues.
    • Jack Woehr. An interview with Donald Knuth. Dr. Dobb's Journal, pages 16-22 (April 1996)

  • Science is what we understand well enough to explain to a computer. Art is everything else we do.
  • A mathematical formula should never be "owned" by anybody! Mathematics belong to God.
    • Digital Typography, ch. 1, p. 8 (1999)
  • I define UNIX as 30 definitions of regular expressions living under one roof.
    • Digital Typography, ch. 33, p. 649 (1999)
  • I can’t go to a restaurant and order food because I keep looking at the fonts on the menu.
    • Knuth, Donald (2002). "All Questions Answered". Notices of the AMS 49 (3): 321.
  • 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.

The Art of Computer Programming (1968-2005)

  • An algorithm must be seen to be believed.
    • Vol. I, Fundamental Algorithms, Section 1.1 (1968)
  • The sun comes up just about as often as it goes down, in the long run, but this doesn't make its motion random.
    • Vol. II, Seminumerical Algorithms, Section 3.3.2 part B, first paragraph (1969)
  • The reason is not to glorify "bit chasing"; a more fundamental issue is at stake here: Numerical subroutines should deliver results that satisfy simple, useful mathematical laws whenever possible. [...] Without any underlying symmerty properties, the job of proving interesting results becomes extremely unpleasant. The enjoyment of one's tools is an essential ingredient of successful work.
    • Vol. II, Seminumerical Algorithms, Section 4.2.2 part A, final paragraph [Italics in source]
  • Any inaccuracies in this index may be explained by the fact that it has been sorted with the help of a computer.
    • Vol. III, Sorting and Searching, End of index (1973)


  • A list is only as strong as its weakest link.
  • 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.
  • 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.
    • On the biggest challenge facing programmers today
  • 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.

External links

Wikipedia has an article about: