Great Principles of Computing

Peter J. Denning, Craig H. Martell

Published by

MIT Press

ISBN

9780262527125

RRP

£20.95

Reviewed by

Anthony Sutcliffe, MSc CCI, MBCS

Score

7 out of 10

Computing has become a vast field that encompasses numerous disciplines; and with each passing year, emerging technologies produce opportunities for change, caused by new products and different methods of working.

However, this book argues that there are certain key principles that remain constant behind all of these upheavals; and it attempts to highlight these and show why they remain so fundamental to good practice within the field of computer science.

The book breaks the overall subject into a number of strategic themes within computing and gives each of these a separate chapter. It covers a variety of important developments that have occurred over the years and highlights how the problem was identified, as well as the solution that was developed in response; and tries to illustrate why these came about in the way that they did.

A lot of the material has been developed from academic papers and research studies; and it carries the weight of considerable authority on the topic.

Throughout, the book offers some solid explanations of the principles behind the particular aspect under discussion; and it provides a number of detailed elements to help with the description. Unfortunately, these are often inserted into the text across several pages mixed into the normal text without a clear division between the two, which can make it harder to follow and can lead to some confusion when trying to follow the discussion.

I also thought that there were a number of places where the book fell a little short as the authors failed to include a number of important contributions that would clearly have fitted into the material, in a way that might perhaps have rounded out the account more completely.

Although this is very noticeable, it does not detract too much from the main principle overall; however, it would make the volume less useful as an academic resource.

The authors also make use of a number of explanations of the mathematics behind the specific features; and these are generally clearly explained. However, I also felt that these descriptions might have been improved by making use of a slightly different layout from the normal script in order to allow the reader to identify the particular aspect and follow the argument with a little more precision.

Overall, it is a worthwhile read and could make a useful introduction to the important factors for anyone new to the study of computing science; and it would be a reasonable primer for study.

Further information: MIT Press

March 2015