Explore the wonderful quotes under this tag
When I was at Tek, I was frustrated that computer hardware was being improved faster than computer software. I wanted to invent some software that was completely different, that would grow and change as it was used. That's how wiki came about.
Sep 11, 2025
I am confident that we can do better than GUIs because the basic problem with them (and with the Linux and Unix interfaces) is that they ask a human being to do things that we know experimentally humans cannot do well. The question I asked myself is, given everything we know about how the human mind works, could we design a computer and computer software so that we can work with the least confusion and greatest efficiency?
The computer was born to solve problems that did not exist before.
It's hardware that makes a machine fast. It's software that makes a fast machine slow.
If you think your users are idiots, only idiots will use it.
It is easier to change the specification to fit the program than vice versa.
In software, we rarely have meaningful requirements. Even if we do, the only measure of success that matters is whether our solution solves the customer's shifting idea of what their problem is.
Optimism is an occupational hazard of programming; feedback is the treatment.
Software is like sex: It's better when it's free.
There's an old story about the person who wished his computer were as easy to use as his telephone. That wish has come true, since I no longer know how to use my telephone.
It has been said that the great scientific disciplines are examples of giants standing on the shoulders of other giants. It has also been said that the software industry is an example of midgets standing on the toes of other midgets.
I mean, if 10 years from now, when you are doing something quick and dirty, you suddenly visualize that I am looking over your shoulders and say to yourself "Dijkstra would not have liked this," well, that would be enough immortality for me.
That's the thing about people who think they hate computers. What they really hate is lousy programmers.
Software is like entropy. It is difficult to grasp, weighs nothing, and obeys the second law of thermodynamics; i.e. it always increases.
Premature optimization is the root of all evil in programming.
We should forget about small efficiencies, say about 97% of the time: premature optimization is the root of all evil.
Premature optimization is the root of all evil.
Computers are good at following instructions, but not at reading your mind.
Computers make it easier to do a lot of things, but most of the things they make it easier to do don't need to be done.
Should array indices start at 0 or 1? My compromise of 0.5 was rejected without, I thought, proper consideration.
The cheapest, fastest, and most reliable components are those that aren't there.
Beauty is more important in computing than anywhere else in technology because software is so complicated. Beauty is the ultimate defense against complexity.
The trouble with programmers is that you can never tell what a programmer is doing until it's too late.
One of my most productive days was throwing away 1,000 lines of code.
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. The first method is far more difficult.
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.
Any fool can write code that a computer can understand. Good programmers write code that humans can understand.
When debugging, novices insert corrective code; experts remove defective code.
At first I hoped that such a technically unsound project would collapse but I soon realized it was doomed to success. Almost anything in software can be implemented, sold, and even used given enough determination. There is nothing a mere scientist can say that will stand against the flood of a hundred million dollars. But there is one quality that cannot be purchased in this way - and that is reliability. The price of reliability is the pursuit of the utmost simplicity. It is a price which the very rich find most hard to pay.
Testing by itself does not improve software quality. Test results are an indicator of quality, but in and of themselves, they don't improve it. Trying to improve software quality by increasing the amount of testing is like trying to lose weight by weighing yourself more often. What you eat before you step onto the scale determines how much you will weigh, and the software development techniques you use determine how many errors testing will find. If you want to lose weight, don't buy a new scale; change your diet. If you want to improve your software, don't test more; develop better.
The information contained in an English sentence or computer software does not derive from the chemistry of the ink or the physics of magnetism, but from a source extrinsic to physics and chemistry altogether. Indeed, in both cases, the message transcends the properties of the medium. The information in DNA also transcends the properties of its material medium.
The most amazing achievement of the computer software industry is its continuing cancellation of the steady and staggering gains made by the computer hardware industry.
More than the act of testing, the act of designing tests is one of the best bug preventers known.
Beware of bugs in the above code; I have only proved it correct, not tried it.
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.
You know, IBM was almost knocked out of the box by other types of computer software and manufacturing.
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.
Since when has the world of computer software design been about what people want? This is a simple question of evolution. The day is quickly coming when every knee will bow down to a silicon fist, and you will all beg your binary gods for mercy.
In 1970, Americans spent about $6 billion on fast food; in 2000, they spent more than $110 billion. Americans now spend more money on fast food than on higher education, personal computers, computer software, or new cars. They spend more on fast food than on movies, books, magazines, newspapers, videos, and recorded music—combined.
The best performance improvement is the transition from the nonworking state to the working state.
A computer once beat me at chess, but it was no match for me at kick boxing.
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.
If the automobile had followed the same development as the computer, a Rolls Royce would today cost $100 and get a million miles per gallon, and explode once a year killing everyone inside.
Computer science is no more about computers than astronomy is about telescopes.
The most revolutionary aspect of technology is its mobility. Anybody can learn it. It jumps easily over barriers of race and language. ... The new technology of microchips and computer software is learned much faster than the old technology of coal and iron. It took three generations of misery for the older industrial countries to master the technology of coal and iron. The new industrial countries of East Asia, South Korea, and Singapore and Taiwan, mastered the new technology and made the jump from poverty to wealth in a single generation.
You can either have software quality or you can have pointer arithmetic, but you cannot have both at the same time.
As a rule, software systems do not work well until they have been used, and have failed repeatedly, in real applications.
Computers are useless. They can only give you answers.
I think it's a new feature. Don't tell anyone it was an accident.
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.