Sponsored links

Valid XHTML 1.0!
Valid CSS!

Product: Book - Paperback
Title: An Introduction to Genetic Algorithms (Complex Adaptive Systems)
Publisher: The MIT Press
Authors: Melanie Mitchell
Rating: 4/5
Customer opinion - 4 stars out of 5
Excellent Introduction For Beginners!

From the very first page Mitchell has the reader hooked as she unleashes the various applications of GAs. With each example the various elements of GAs are illustrated, making it an enjoyable but still very educational experience. The technical material is not too hard to follow, and the mathematical proofs presented are easy to understand given a modest background in maths. I recommend this book as a first read for anyone who is interested in learning more about GAs, and an entertaining read for the GA veterans.

Product: Book - Hardcover
Title: Domain-Driven Design: Tackling Complexity in the Heart of Software
Publisher: Addison-Wesley Professional
Authors: Eric Evans
Rating: 3/5
Customer opinion - 3 stars out of 5
Reality Check - Yet Another Patterns Book

I bought this book due in part to the glowing reviews here on Amazon so I feel a duty to inject a bit of skepticism, now that I've read it.
5 stars for a technical book indicates to me a book of profound quality that really breaks through with penetrating insights -- The kind of book that makes me think, "Wow, this book has really brought my development practice into a renewed, sharper focus." It doesn't necessarily have to provide radically new material, but it does have to package whatever material it contains in a way that causes the gears in my head to shift around and reorganize themselves. Design Patterns is such a book. XP Explained is such a book. I don't think this one qualifies.
Some good points: The author makes a good case for agile development/extreme programming (close relationship with the customer, unit tests, refactoring...). He seems to believe there may be a tendency to over-emphasize the importance of code and to neglect design in such practices, which may or may not be true in industry at large. But in any case, his major thesis is that it is also important to consider the overall domain model and how well-aligned it is to the goals of the business. He proposes developing a common ("ubiqitous") language between developers and business users, and to unify the various traditional views of a software system (requirements, analysis model, design model, etc..) into one. The advice is quite wholesome and will hopefully promote bringing some harmony between the agile camp and the adherents of high-ceremony approaches such as RUP and CMM.
Some bad points: The book is rather wordy, and a lot of common-sense ideas are repeated at length. I don't feel that the patterns in the book are much more than re-statements of basic principles of OO design. I am not convinced that giving every possible variation on OO programming a fancy name is particularly helpful. Most of the patterns in this book come down to "produce a clean design that removes duplication and attempts to match the business domain." If you're new to OO, I suggest you'd be much better off reading some other books, such as GoF's Design Patterns, Fowler's Refactoring, Page-Jones' Object-Oriented Design in UML, and Kent Beck's XP Explained.
I give this book 3 stars because it's not a bad thing to read a book that makes you think about the importance of the business domain when programming. It's true that this emphasis, while fairly basic, does get lost in a world where specific technologies dominate good design and common sense. I don't think this book can really hurt -- although I have found the "declarative" approach it mentions can be very dangerous in inexperienced hands and can produce utterly unmaintainable code. It's not a bad effort, but it's not an earth shattering revelation either.

Product: Book - Paperback
Title: A Programmer's Guide to Java (tm) Certification
Publisher: Addison-Wesley Professional
Authors: Khalid A. Mughal, Rolf W. Rasmussen
Rating: 5/5
Customer opinion - 5 stars out of 5
Excellent Book

Though the title says for java certification, the book covers much more than that.This book gives a deep insight in to java fundamental concepts.
Chapters like Language Fundamentals,Inner Classes, AWT are explained very well. A must read for any one preparing for the java certifiction exam.

Product: Book - Paperback
Title: Large-Scale C++ Software Design
Publisher: Addison-Wesley Professional
Authors: John Lakos
Rating: 5/5
Customer opinion - 5 stars out of 5
If you think you're an expert, think again.

I'm a single developer of about eight years who used to go around thinking that, being alone, the systems I write will always be small, and the interfaces between packages can be casual since I own both ends. Boy was I wrong! Lakos' book is the direct answer to the most persistent problems I've had with quality, maintainability and extensibility for the last year.
Even if you're a C++ genius, I'll bet the section on how redundancy (as in duplicated code) may be desirable will teach you something you didn't realize you needed to learn. And, the extensive coverage of physical insulation shows the path away from the dark side of development that logical design texts hardly even allude to. Read this book!