Beware of bugs in the above code; I have only proved it correct, not tried it.
Donald Knuth
Science is what we understand well enough to explain to a computer. Art is everything else we do.
If you optimize everything, you will always be unhappy.
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.
An algorithm must be seen to be believed.
Everyday life is like programming, I guess. If you love something you can put beauty into it.
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 eachother, like a wall of mini stones.
I am worried that algorithms are getting too prominent in the world. It started out that computer scientists were worried nobody was listening to us. Now I'm worried that too many people are listening.
Email is a wonderful thing for those 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.
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.
I've never been a good estimator of how long things are going to take.
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.
The most important thing in the kitchen is the waste paper basket and it needs to be centrally located.
I currently use Ubuntu Linux, on a standalone laptop - it has no Internet connection. I occasionally carry flash memory drives between this machine and the Macs that I use for network surfing and graphics; but I trust my family jewels only to Linux.
People who are more than casually interested in computers should have at least some idea of what the underlying hardware is like. Otherwise the programs they write will be pretty weird.
I decry the current tendency to seek patents on algorithms. There are better ways to earn a living than to prevent other people from making use of one's contributions to computer science.
A list is only as strong as its weakest link.
There's ways to amuse yourself while doing things and thats how I look at efficency.
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.
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.
God is a challenge because there is no proof of his existence and therefore the search must continue.
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 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.
I'm obsessively detail-oriented.
To me, it looks more or less like the hardware designers have run out of ideas and that they're trying to pass the blame for the future demise of Moore's Law to the software writers by giving us machines that work faster only on a few key benchmarks!