## Extracts from Reviews of Books by Richard Hamming

The reviews of Richard Hamming's books are particularly interesting since he has tried to offer a distinct approach to the topics he has presented. We give a few extracts below which attempt to give a flavour of the reviews. We highly recommend that the reader read the full reviews, many of which make fascinating reading. The references are to the articles referenced in Richard Hamming's biography.

**Numerical Methods for Scientists and Engineers (1962).**

**(1)**Review by V D Barnett [1]:

With the widely increasing use of electronic computers for numerical calculations it is refreshing and valuable to find a book which provides a coherent, unified and very readable account of some methods of numerical analysis, with particular reference to the use of these methods on computers. This book is described in the preface as "written for scientists and engineers who expect to use modern large-scale digital computers ... and as a text for advanced undergraduate-level courses in numerical analysis". ... This is a very well written book and the reader is kept constantly aware of the aims and objects of the subject and of the inherent problems involved in applying numerical methods on computers. ... its main function is to instruct rather than to serve as a work of reference. The author is to be congratulated, however, on a very fine "advanced-undergraduate" textbook, providing a clear and attractive account of the topics covered in relation to their use on computers.

**(2)**Review by Mario L Juncosa [20]:

"The purpose of computing is insight, not numbers" is the slogan frequently shouted in this delightful, very readable, intermediate book on numerical methods. Except for a few cases, such as in the computation of engineering design data, few of those experienced in numerical analysis will disagree with the tenet that the vast disgorgements of electronic computers are not ends in themselves. Unfortunately, the computer user, under pressure to deliver early answers, seldom has time for reflection on the choice and careful planning of the computational aspects of a program. Thus, the author does a potentially receptive readership a service by repeating this maxim often. ... A certain air of informality that, with the exception of 'Practical Analysis' by C Lanczos, is seldom encountered in books on numerical analysis is exuded by the author's frequent remarks about his experience and by his opinions. Here and there one sees neat tricks of the trade and finds discussions of topics not usually found in texts - for example, the summation of series and the abovementioned band-limited functions. Simplicity is a guiding principle throughout the text; huge computational examples do not appear, and the use of special operators is kept to a minimum.

**(3)**Review by Philip J Davis [5]:

I've known for some time that one can make a living with numerical analysis, but I never suspected that one day I would find a book on the subject that was pleasant to read, a book that I would sit down to lunch with. The day has arrived; here it is. ... At the entrance to his edifice, the author has placed the sign "The Purpose of Computing is Insight, Not Numbers." This sign is so important that it would be worth publishing by itself. In the several hundred pages that follow, it is used to set the text, the tone, and the task. The moral is developed implicitly in the selection of material and explicitly in numerous discursive passages. The student will learn the pitfalls of common processes. He will learn to accept his results cautiously and with a grain of salt. He will learn that though theory is indispensable, it can be so remote as to be of limited assistance and comfort. But on the other hand, he will learn that a good thought is worth a hundred hours on the machine. The author teaches both the science and the art of numerical analysis. The electronic machines disgorge a Niagara of numbers, and I am glad to see a book with the conscious task of providing countervailing wisdom.

**(4)**Review by George E Forsythe [MathSciNet]:

"The purpose of computing is insight, not numbers." With this motto the author introduces a textbook on scientific computation which has the most interesting and broadest point of view of any known to the reviewer. The motto need hardly be directed to mathematicians, but computer programmers need to be reminded. There seems to be another motto implicit in the author's book, and this is for mathematicians: "The purpose of analysis is to solve problems, not create pretty theorems."

As a research mathematician at the Bell Telephone Laboratories, the author has worked extensively on problem solving, both by analysis and by computer. He is exceptionally well qualified to write this book, which originated as a textbook for the senior-graduate course on numerical analysis at Stanford University, which he taught in 1960-61.

When a physical scientist or engineer has a quantitative problem to solve, it is important that he have a wide variety of tools. Apart from the experimental methods and analytical tools of his own discipline, he should be able to use mathematical analysis (either exact or approximate), numerical methods on a digital computer, simulation on a digital computer, or even pure intuition. Moreover, he should be facile at combining these methods with each other and with those of his own discipline, for each will reinforce the other.

How, then, do we train a scientist or engineer in these tools? Generally, we subject him to a succession of narrow specialists: he learns modern mathematical analysis from pure mathematicians; he learns numerical analysis as a branch of classical mathematics; he learns digital computing from a specialist in programming; and he learns his own field largely apart from any of the above.

The author's point of view is that one should use a balanced combination of these different tools, and look at all aspects of the problem before rushing to any attack. He wishes to discard special tricks, and to develop general attacks on problems. He points out missing theories, together with the well-developed ones. In short, the author conceives of his subject not as a branch of pure mathematics, not as a branch of applied mathematics, and not as a branch of computer science, but rather as part of an organic whole of scientific research and development. But in the course of developing the material he teaches us a great deal about each of these fields, and particularly about computer science.

As a research mathematician at the Bell Telephone Laboratories, the author has worked extensively on problem solving, both by analysis and by computer. He is exceptionally well qualified to write this book, which originated as a textbook for the senior-graduate course on numerical analysis at Stanford University, which he taught in 1960-61.

When a physical scientist or engineer has a quantitative problem to solve, it is important that he have a wide variety of tools. Apart from the experimental methods and analytical tools of his own discipline, he should be able to use mathematical analysis (either exact or approximate), numerical methods on a digital computer, simulation on a digital computer, or even pure intuition. Moreover, he should be facile at combining these methods with each other and with those of his own discipline, for each will reinforce the other.

How, then, do we train a scientist or engineer in these tools? Generally, we subject him to a succession of narrow specialists: he learns modern mathematical analysis from pure mathematicians; he learns numerical analysis as a branch of classical mathematics; he learns digital computing from a specialist in programming; and he learns his own field largely apart from any of the above.

The author's point of view is that one should use a balanced combination of these different tools, and look at all aspects of the problem before rushing to any attack. He wishes to discard special tricks, and to develop general attacks on problems. He points out missing theories, together with the well-developed ones. In short, the author conceives of his subject not as a branch of pure mathematics, not as a branch of applied mathematics, and not as a branch of computer science, but rather as part of an organic whole of scientific research and development. But in the course of developing the material he teaches us a great deal about each of these fields, and particularly about computer science.

**Numerical Methods for Scientists and Engineers (2nd edition) (1973):**

**(1)**From the Preface:

The material has been extensively rearranged, rewritten, and added to, so that in some respects it is a new book; however, the main aims, style, and motto have not changed.

**(2)**Review by J S [23]:

After eleven years, the first edition of Hamming's text had gradually vanished from the consciousness of numerical analysts. Thus, the encounter with this second edition will be a first encounter for many of the younger scientists in the computer field. Moreover, the text has been rewritten and expanded to such an extent that it reads like new, even to those who have known the previous version rather well. What has remained and is even more present than before is the author's original opinion on many subjects in numerical mathematics, an attitude which is based on a wealth of experience and a continuous striving to understand what happens in numerical computations. "The purpose of computing is insight, not numbers"; the author's motto for this book indeed describes his basic attitude well. (And his pun "the purpose of computing numbers is not yet in sight" characterizes a lot of the work that keeps our computers busy.) Although most sections treat standard problems of numerical mathematics, there is hardly a page in the book which does not contain something of interest even to those who have handled these problems for a long time. Here it is a particularly intuitive approach to a well-known result, there a new illustrative example, here an ironic side-remark, there a statement which throws new light onto a whole line of development. The careful consideration of the interaction between mathematics and digital computing is ever present. ... the book is a must for everybody teaching numerical mathematics at any level to any audience: There is hardly a subject in the field on which such a person will not find some new stimulation for his teaching job. And for those whom Hamming is addressing directly - scientists and engineers with numerical computing needs and some computing experience - the book is probably the best there is.

**(3)**Review by W J Cunningham [4]:

There is much new material, both text and problems, and extensive rewriting of the old material, all in a more attractive format. The spirit, however, "insight not numbers," remains the same. Anyone who uses a digital computer to study practical scientific problems will find a great deal of useful in formation in this volume.

**Introduction to Applied Numerical Analysis (1971):**

**(1)**Review by Barron Brainerd [3]:

it contains many insights, accessible to mathematically naive readers, into the problems that statisticians and computer scientists face daily when they design computer programs. There is much background material here to prepare humanists for their interchanges with such colleagues. ... The author, who is a well-known computer scientist, provides pithy suggestions and timely warnings which should be useful to scientists and humanists alike.

**(2)**Review by John Karon [21]:

Hamming's text is designed to introduce engineers and scientists to the basic ideas of numerical analysis through a brief survey of many (twelve) topics at an elementary level, including optimization, Fourier series, and random processes. Each is treated "as simply as possible and in a uniform way". The algorithms are explained geometrically and often illustrated by a simple numerical example, sometimes showing the limitations of the algorithm. Since the emphasis is on basic ideas, rather than computer implementation, there are no computer, programs for the algorithms, and only a few flowcharts (for solving one nonlinear equation, the first problem discussed). The exercises are consistent with Hamming's philosophy and level of presentation: there are very few compared to most texts, and most are designed to show the student how a method performs on different problems by a direct application of the material just covered. There are references to advanced or research level literature scattered through the text, as well as substantial doses of the author's well-known and distinctive philosophy toward numerical analysis. Although Hamming is successful in introducing the reader to the main ideas of a wide variety of methods, I think most mathematics instructors would agree that this text is too cursory for use in a mathematics course.

**Digital Filters (2nd edition) (1983):**

**(1)**Review by Peter Bloomfield [2]:

Overall, this is a most useful introduction to the technology of digital filtering.

**Computers and Society (1972):**

**(1)**From the Preface:

The purpose of this book is to present many of the ideas involving the digital computer and its relation to modern society. The presentation is designed for liberal arts and humanities-oriented people who wish to know about computers without learning to run them.

**(2)**Review by Michael Thompson [24]:

'It is not foreordained that computers shall make the world a hideous place to live in' we are assured by the author who believes 'the evil or good does not rest in the computer, it rests with the user'. I concur with this, with the reservation that it is the goodness of the users that worries me. However, Hamming does not present us with suggestions as to how evil users may be controlled, indeed he does not discuss misuse at any length. The whole book is designed to inform the reader on the subject of computers so that, presumably, the reader himself will be able to come to conclusions as to how he should act when faced by machines and their consequences. ... I have no hesitation in recommending the book as a simple introduction to computers and their uses. In particular, the author has a flair for presenting abstract ideas easily. Computers are tools to aid our minds and it is essential to stress the abstract features of the subject matter.

**Coding and information theory (1980):**

**(1)**Review by Eberhard Lüdde [MathSciNet]:

The author combines the fields of coding and information theory in a natural way. He also points out that "sending information from here to there" (transmission of information) is equivalent to "sending information from now to then" (storage of information). However, he neglects the connection between these fields and the theory of searching (only hashing is considered), since this would duplicate the size of this book. ... The author's purpose is to explain why the theorems are true. Thus, he does not require advanced knowledge. He introduces all needed notions and relations. Therefore, this book is easily readable. Many examples of codes used in practice underline the author's goal to make these theories easily available.

**The Art of Probability for Scientists and Engineers (1991):**

**(1)**Review by Peter Guttorp [6]:

Richard Hamming is taking a look at the art of probability. This sounds like an interesting exercise. But, alas, it is not. Hamming has produced a book that is one part personal preaching, one part poorly written textbook, and one part collection of interesting pedagogical devices. Those readers interested in teaching probability to undergraduates may be interested in the book for the latter contribution. Among the positive features are a serious discussion about the robustness of certain standard probability calculations, in the sense of sensitivity to small perturbations in assumptions such as birthdays occurring with equal probability for each day. Moreover, he gives a brief presentation of quantum probability. On the negative side is a presentation which, albeit aimed at novice students, requires understanding of probability concepts to be understood ... This book is very personal. I doubt that it will gain a large following. It tries to cover too many bases at once, and by doing so, leaves them wide open.