Book Reviews

Book Reviews

Author(s): James Mohr

A Balanced Introduction to Computer Science

Even a cursory glance shows that this is intended to be a textbook; however, it is difficult to say at what level this book might be useful. I thought it was overly simplistic for university courses and too detailed for classes taught alongside cooking and painting in Adult Ed.

The author seems to have thought that simply alternating between web programming and other topics made it "balanced." However, the choice of additional topics and how they were covered makes me wonder whether the book started out to be one on web programming, and then additional material was added so that it could be marketed as a general computing book instead of competing in the already satiated web programming book market.

The additional material lacked coherency or logic in the order or depth of its coverage. For example, if the Data Representation chapter had been followed by one on programming with different data types, it might have made sense.

Instead, the chapter was preceded by Conditional Execution and followed by Conditional Repetition, so it seems that the choice of where to insert non-programming chapters was almost random.

Sometime during your career, it might be useful to know how transistors and gates work, and there is a whole chapter on this; however, with the exception of a brief explanation of GUIs, less than one page is devoted to what an operating system is and does. Furthermore, I don't understand why you are told how flip-flops work, but nothing about virtual memory or multi-tasking.Material is presented at a level at which most people can understand it, but some places are so overly simplified that they are misleading, if not outright wrong. The book gets another big ding for the price – US$ 100.

If this book is a requirement for any college computer course, it is no wonder that a college education can break the bank.

Second Edition

David Reed

Paperback, 408 Pages

Prentice Hall, 2008

ISBN: 978-0-13-601722-6

£ 42.99, US$ 100.00, EUR 74.99

Your Brain: The Missing Manual

Network admins know how the network functions and how their tools work. Programmers also understand the development tools they are using, such as IDEs and versioning software. Naturally, knowledge workers need to understand the systems with which they are working. One tool that knowledge workers tend not to know much about is the most important one: their brains.

Your Brain: The Missing Manual begins with a brief overview of your brain and nervous system. Despite the brevity, you get a nice introduction to the architecture of the primary tool of knowledge workers, followed by a chapter about how the brain is powered, which addresses how different kinds of foods and chemicals, such as caffeine, affect our brains.

Next comes a chapter about sleep, which includes what it is, how it affects us, how lack of it affects it, and so forth. For example, I didn't know that sleep actually reinforces things that we learn during the day.

The rest of the book covers less concrete, yet important, aspects of how our brains work, including a look at perception, memory, emotions, and reason. In the chapter about perception, the author discusses how our brains interpret optical illusions, and how our culture can influence how we interpret certain images. In addition to the biological and psychological aspects, the chapter on memory provides some tricks to help improve memory.

Although a few examples relate directly to knowledge work or computers in general, connecting the book's topics to the process of setting up a new database environment or troubleshooting a server problem is straightforward. Overall, this book is an informative, enjoyable read.

Matthew MacDonald

Paperback, 261 Pages

O'Reilly, 2008

ISBN: 978-0-596-51778-6

£ 14.99, US$ 24.99, EUR 24.99

Sams Teach Yourself Ajax, JavaScript, and PHP All in One

The publisher's description of this book says, "Using a straightforward, step-by-step approach, each lesson in this book builds on the previous ones, enabling you to learn the essentials of Ajax programming with JavaScript, PHP, and related technologies from the ground up." This sounds like a big goal for one book. I have never been a big fan of books that attempt to teach several different topics at once, and this book didn't change my opinion.

On the other hand, considering all of the limitations of trying to cram so much between the covers, the authors do a reasonable job, with just a few exceptions.

An introduction to how browsers and the web work is followed by a chapter on very basic HTML and CSS. Although knowing this background information is necessary to use Ajax, JavaScript, and PHP, hopefully the reader already knows how to create HTML tables or set colors using CSS before even thinking about using Ajax. According to the book, its target audience is web developers, so those pages could have been put to much better use.

Because each of these primary topics could fill an entire book, the authors do not go into much depth. For example, six pages are dedicated to PHP "classes," and the only thing said about things such as inheritance is that it can be done and extended.

Although authors Phil Ballard and Michael Moncur do a good job of presenting what material is there, they provide an introduction rather than enough material to be put to practical use.

Despite having "Linux" mentioned on the cover, the book seems to be geared specifically toward Windows programmers and browsers because Windows-specific features are mentioned without explanation of how to implement them for Linux.

The book includes a CD with a number of software packages for Windows, Mac OS X, and Linux, as well as a reference library that, oddly enough, is in PDF instead of HTML. The XAMPP package on the CD is for Linux 1.6.6, which hopefully is not the kernel version, but I didn't find anything more about the package or how to install it.