Quotes from The Art of Doing Science and Engineering

In science if you know what you are doing you should not be doing it. In engineering if you do not know what you are doing you should not be doing it. Of course, you seldom, if ever, see either pure state. (p. 7)

The purpose of computing is insight, not numbers. (p. 35)

At the time SAP [symbolic assembly program] first appeared I would guess about 1% of the older programmers were interested in it - using SAP was "sissy stuff", and a real programmer would not stoop to wasting machine capacity to do the assembly. (p. 42)

I was told repeatedly, until I was sick of hearing it, computers were nothing more than large, fast desk calculators ... Those who claimed there was no essential difference never made any significant contributions to the development of computers ... people always want to think something new is just like the past. (p. 179)

When you decide something is not possible, don't say at a later date it is still impossible without first reviewing all the details of why you originally were right in saying it couldn't be done. (p. 199)

Too often we see what we want to see, and therefore you need to consciously adopt a scientific attitude of doubting your own beliefs. (p. 211)

I am suspicious, to this day, of getting too many solutions and not doing enough very careful thinking about what you have seen. (p. 218)

Mathematics is nothing but clear thinking ... mathematics is the language of clear thinking. This is not to say mathematics is perfect - not at all - but nothing better seems to be available (p. 270)

I think in the past we have done the easy problems, and in the future we will more and more face problems which are left over and require new ways of thinking and new approaches. The problems will not go away - hence you will be expected to cope with them - and I am suggesting at times you may have to invent new Mathematics to handle them. (p. 280)

Progress is making us face ourselves in many ways, and computers are very central in this process. Not only do they ask us questions never asked before, but they also give us new ways of answering them. Not just in giving numerical answers, but in providing a tool to create models, simulations if you prefer, to help us cope with the fture. We are not at the end of the Computer Revolution, but at the start, or possibly near the middle, of it. (p. 290)

An expert is one who knows everything about nothing; A generalist knows nothing about everything. (p. 303)

All impossibility proofs must rest on a number of assumptions which may or may not apply in the particular situation. (p. 305)

If an expert says something can be done he is probably correct, but if he says it is impossible consider getting a second opinion. (p. 306)

Hamming's Rules for System Engineering

  1. "If you optimize the components you will probably ruin the system performance."

  2. "Part of systems engineering design is to prepare for changes so they can be gracefully made and still not degrade other parts."

  3. "The closer you meet specifications the worse the performance will be when overloaded."

The way you choose to measure things controls to a large extent what happens. You get what you measure. (p. 347)

If what you are working on is not important and not likely to lead to important things, then why are you working on it? (p. 352)

Looking around you can easily observe great people have a great deal of drive to do things ... 'How can anyone my age know as much as John Tukey does?' ... "You would be surprised how much you would know if you had worked as hard as he has for as many years' (p. 355)

I strongly recommend this taking the time, on a regular basis, to ask the larger questions and not stay immersed in the sea of detail. (p. 356)