Computer Science Illuminated

Author: Nell Dale & John Lewis
Publisher: Jones & Bartlett
Pages: 672
ISBN: 978-1449672843
Audience: Undergraduate students
Rating: 4
Reviewer: Mike James

A gentle introduction to computer science - just what a lot of people are looking for.

But before you read on you need to know that the list price of this textbook is a crazy $122.95. It is well produced on good paper with full color and there is lots of backup in the form of online code and a year-long subscription to a companion website, but this is a very high price for a book on the standard topics of computing.

The high price is a shame, because this book could appeal to lots of self study readers, not just college course takers. It starts off with a slow-paced look at computing in a social context and then works its way though number systems, data representation, gates and logic and the overall design of a computer. The pace is slow, but it's about right if you are new to the material.

There are also boxouts on the social implications of computing which, while occasionally interesting, seemed completely out of place. Yes, it is needed because of the typical curriculum, but why do we have to have social science, ethics and so on pushed into a course on computer science? Do philosophy majors have computer science forced upon them as a side story? It's time we got back to the idea of "orthogonality" in courses and stopped polluting one course with the ideas of another with all of the wasteful repetition it entails.

Banner

The programming section of the book begins with the introduction to a machine language for a machine that doesn't exist. However software is provided so you can try it out. It is a great idea and a good way to learn assembler. There are the usual arguments that it would be better to use the assembly language of a real machine but the only real machine that counts at the moment is the x86 and this isn't and easy architecture to learn for a beginner.

The software section continues with a look at problems solving methods - divide and conquer and the usual algorithms - sorting, searching and so on. The final chapters of the section look at abstract data types - trees, stacks and so on - and object oriented ideas.

The Next section tackles the operating system and deals with the usual topics of batch, timesharing, CPU scheduling, file systems and so on. The section on the application layer is perhaps the least effective, mainly because it is a difficult and ever changing area. It explains about data processing, AI, simulation and graphics and so on. The final section deals wit communications - networks, the web and finally computer security. The book rounds off with a conclusion.

If you read this book from cover to cover then you will have a good grounding in computing. You will even have a brief look at academic computer science - Turing machines and computability - but only in the final chapter. You also don't really get to learn to program as part of the course but this is supposed to be about computer science.

As the basis for a course on the topic of computing it would make an excellent choice. It's also suitable for self study apart from its high price. It is, however, well written, well produced and well supported. 

Banner


Python Distilled (Addison-Wesley)

Author: David Beazley
Publisher: Addison-Wesley
Date: September 2021
Pages: 352
ISBN: 978-0134173276
Print: 0134173279
Rating: 4
Reviewer: Alex Armstrong
Python isn't a big language but it's getting bigger all the time.



Core Java for the Impatient, 3rd Ed

Authors:  Cay S. Horstmann 
Publisher: Addison Wesley
Pages: 576
ISBN: 9780138052102
Print: 0138052107
Kindle: B0B8RZZBDJ
Audience: Smart programmers wanting in-depth coverage
Rating: 4.8
Reviewer: Mike James

The key to this book is the word "impatient" in the title. What does this m [ ... ]


More Reviews

Last Updated ( Thursday, 16 August 2012 )