Sponsored links

Valid XHTML 1.0!
Valid CSS!

Product: Book - Paperback
Title: A Programmer's Guide to Java Certification: A Comprehesive Primer, Second Edition
Publisher: Addison-Wesley Professional
Authors: Khalid Mughal, Rolf Rasmussen
Rating: 5/5
Customer opinion - 5 stars out of 5
Excellent study guide, excellent reference

If you are studying to become a Sun Certified Programmer for the Java 2 Platform 1.4 this book will help you to receive not just a passing grade but an excellent understanding of the intricacies of the Java programming language. Mughal and Rasmussen aren't satisfied with simply giving you a minimal understanding of Java so that you can pass a test. They are interested in helping you to understand the language at a deeper level. After all, it is much easier to pass the certification exam when you actually understand the material rather than when you have simply memorized a lot of details.

I'll give you an example of the level of detail that the book covers. Section 5.2 of the book covers Selection statements. The section starts with a description of the if statement followed by an activity diagram which explains the flow of the statement. The authors then show a simple example followed by a clear explanation of the if statement. Then they do the same with if-else, this time using several examples. The same level of detail follows for the switch statement, again providing clear text, with a simple activity diagram, followed by several well explained examples. Finally, the section ends with several review questions. What this means is that this book can serve you well even after you have passed the certification exam. You will be hard pressed to find a better written reference.

The book covers all the information you need to pass the certification exam and covers the material needed to connect all the pieces together. The included CD has several mock exams with questions that will help you understand the type of questions that you will face on the actual exam. If you do well on the mock exams you will do well on the real thing. Overall, this is an excellent book for studying for the Java certification. But it is such a good reference that you will want to keep it nearby even after you have passed the certification.

Product: Book - Hardcover
Title: Managing the Software Process
Publisher: Addison-Wesley Professional
Authors: Watts S. Humphrey
Rating: 1/5
Customer opinion - 1 stars out of 5
Devoid of sense

It's amazing that Humphrey can be so popular, given his ineptitude at forming coherent arguments for his positions.
This book is filled with unjustified, unreasoned dogma. For example, he argues that the reason for an SQA organization is that software quality is a good thing. This is a non-sequitor; the point he should have been arguing for is WHY an SQA organization improves software quality.
Read this book--for an example of a modern miracle cure peddler. Or, read it to see how gullible some software engineering managers can be. But don't expect it to help you improve your product.

Product: Book - Paperback
Title: Designing Web Usability : The Practice of Simplicity
Publisher: New Riders Press
Authors: Jakob Nielsen
Rating: 4/5
Customer opinion - 4 stars out of 5
Great book, very helpful.

I have seen harsh criticisms of this book. I suspect they may come from "artists" who are set on the defensive when Nielsen says something like, "Relish simplicity, and focus on the users' goals rather than glitzy design."
His book is based on research. And years of it. When he says something is confusing to a user, it's not because he doesn't like it, or thinks that the users are dunderheads, but rather because he has statistically seen it fail.
If you want good tips on usability based on statistics and research, this is your book. If you want to be pandered to and have some one tell you your graphics are king based on anecdotal information, look elsewhere.
NOTE- For those of you get the impression that this book limits creativity, think again. Nielsen in NO way tries to limit creativity. He simply adds "usability" to the list of page requirements [meaningful graphic content, navigation, etc.]. For some, this will add a new, bigger, and more exciting "creative" challenge. For others it may be threatening.
I doubt ANY BOOK can be a complete authority on any subject. But for usability, this has a LOT of information. It's not a "technical" book, so I found it easy reading. He may be repetitive at times, but lets face it, that's how humans learn (another statistical fact). So enjoy it, the ideas Nielsen shares can improve your site.

Product: Book - Hardcover
Title: Refactoring: Improving the Design of Existing Code
Publisher: Addison-Wesley Professional
Authors: Martin Fowler, Kent Beck, John Brant, William Opdyke, Don Roberts
Rating: 5/5
Customer opinion - 5 stars out of 5
Finally, the technique has a name!

Although this book has been around for a few years now, the technique that Fowler names "Refactoring" is as old as programming. I've been doing refactoring for the twelve years I've been a professional programmer, often to the chagrin of my supervisors; they often seemed to subscribe to the "if it ain't broke, don't fix it" mentality. Yet I could always tell that the code *was* broken, even if it didn't appear that way when the product was used. I was beginning to suspect that I was the only one who saw this, and then I read this book - written by an eminent researcher in the field and one of the brightest people to ever put pen to paper.

By giving a name to the technique, it can be talked about in planning/design meetings, discussed as a best practice, measured, and demonstrated. But Fowler takes it much further - he gives names to common refactoring techniques as well as what he calls "bad smells", or signs that you need to refactor. ("Speculative generality", for example - a perfect name for an annoying tendency of the 10,000-foot architects).

This book is well-researched and well thought out, and is a must-read for anybody who's serious about software development. It's principal value is in providing common terminology for common actions, in addition to good justifications for each refactoring.