Science is what we understand well enough to explain to a computer. Art is everything else we do.
Everyday life is like programming, I guess. If you love something you can put beauty into it.
Programs are meant to be read by humans and only incidentally for computers to execute.
If you optimize everything, you will always be unhappy.
I have a hunch that the unknown sequences of DNA will decode into copyright notices and patent protections.
Computer programming is an art, because it applies accumulated knowledge to the world, because it requires skill and ingenuity, and especially because it produces objects of beauty. A programmer who subconsciously views himself as an artist will enjoy what he does and will do it better.
Programming is the art of telling another human being what one wants the computer to do.
By understanding a machine-oriented language, the programmer will tend to use a much more efficient method; it is much closer to reality.
My general working style is to write everything first with pencil and paper, sitting beside a big wastebasket. Then I use Emacs to enter the text into my machine.
The whole thing that makes a mathematician’s life worthwhile is that he gets the grudging admiration of three or four colleagues.
Computers are good at following instructions, but not at reading your mind.
I can’t go to a restaurant and order food because I keep looking at the fonts on the menu.
If you find that you’re spending almost all your time on theory, start turning some attention to practical things; it will improve your theories. If you find that you’re spending almost all your time on practice, start turning some attention to theoretical things; it will improve your practice.
TeX has found at least one bug in every Pascal compiler it’s been run on, I think, and at least two in every C compiler.
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.
The best theory is inspired by practice.
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.
Let us change our traditional attitude to the construction of programs. Instead of imagining that our main task is to instruct a computer what to do, let us concentrate rather on explaining to human beings what we want a computer to do.
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.
We should forget about small efficiencies, say about 97% of the time: premature optimization is the root of all evil. Yet we should not pass up our opportunities in that critical 3%.