Sponsored links

Valid XHTML 1.0!
Valid CSS!

Product: Book - Paperback
Title: Discovering Statistics Using SPSS for Windows : Advanced Techniques for Beginners (Introducing Statistical Methods series)
Publisher: SAGE Publications
Authors: Andy Field
Rating: 5/5
Customer opinion - 5 stars out of 5
Great for beginners or advanced students and researchers

The is the best SPSS book I have ever read, and I think I've read them all! It goes beyond the basic beginner's text, and yet I think new SPSS users, and new Stat students would also find this book understandable and useful. Field's explicit and well organized descriptions and explanations of the theory, methods,diagnostic steps, and interpretation of output for various statistical procedures are fantastic, and he has a wry sense of humor that reminds us that reasearch can actually be exciting and fun (honestly!). I know I will use this book for years to come, and will buy new editions as they are printed.

Product: Book - Paperback
Title: Beginning ASP Databases
Publisher: Wrox Press
Authors: John Kauffman, Kevin Spencer, Thearon Willis, John Kauffman
Rating: 5/5
Customer opinion - 5 stars out of 5
Excellent book on DB and ASP introduction.

I used this book to finish a real life ASP project at work with little prior knowledge of how the interface between ASP and DB works.

Product: Book - Paperback
Title: VB and VBA in a Nutshell: The Languages
Publisher: O'Reilly
Authors: Paul Lomax
Rating: 5/5
Customer opinion - 5 stars out of 5
The perfect reference.

I have never been dissapointed with an "In a Nutshell" book. This book is a must have guide for any programmer who finds themself programming with Visual Basic. I am a seasoned C++ and Powerbuilder programmer and picked up this book as an aid to learning the VB language and soon discovered this was the only book I needed. I especially like the "Rules at a glance" and the "Programming Tips and Gotchas" found after each function description. I often find myself going to this book first before searching Microsoft's online help.

Product: Book - Paperback
Title: Working Effectively with Legacy Code
Publisher: Prentice Hall PTR
Authors: Michael Feathers
Rating: 5/5
Customer opinion - 5 stars out of 5
Don't maintain code without it!

(Copy of a review found at http://www.masterprogrammer.info)

The Point

If you need to fix, maintain or extend code without tests, and you're trying to do it without having a copy of this book by your side, you might as well just jab yourself in the stomach with a knife. Michael Feathers does for legacy code what the Gang of Four did for design: establish a vocabulary to make it easier to understand and communicate about how to work with legacy code.

The Details

There are some books that we use as references when we teach courses or do some consulting. These are usually the fundamental texts that provide an appropriate foundation for the reader in a given topic area: Java programming, programmer testing, enterprise architecture, what have you. Even before the book had been released, we were recommending it in courses on Test-Driven Development. The reason is clear: true greenfield projects are few and far between. A team trying to adopt Test-Driven Development has enough to learn; we can't leave them to their devices to figure out what they're going to do starting Monday. "How do we deal with the 250,000 lines of untested code we still need to use?" A Master Programmer cannot leave a team like that hanging.

Enter Michael Feathers and his years of experience rescuing legacy codebases. He has distilled his secrets into a collection of fundamental techniques combined with a catalog of strategies and approaches. In many ways, WELC is like other "how to" books: it starts with setting the context for the techniques, describes them with examples, then adds a catalog of ways to break dependencies in the back. One of the things that differentiates this book is the chapter titles. They are whimsical and, as a result, effective. Some examples follow.

* It Takes Forever to Make a Change
* I Need to Make Many Changes in One Area
* My Application Has No Structure
* This Class Is Too Big and I Don't Want It to Get Any Bigger

We have struggled with maintaining existing code, and in the process have had many of the exact complaints that Michael has made into chapter titles. Each chapter is rich with useful examples in Java, C# and C++. You'd be surprised how many requests we get for courses teaching Test-Driven Development in C++, and they have plenty of legacy code to work around! Michael's conversational style gives you the feeling of having him along side while you work, and frankly, you can't get Michael for only USD 45 plus taxes, but the book is a bargain at twice the price.

Post Script

In order to add book reviews to this web site (masterprogrammer.info), we needed to add a feature to a small amount of legacy code in PHP. (We're still learning how to test-drive PHP-based web sites, so we've made the classic mistake of worrying about it later. See how easy it is?) We used techniques like Sprout Method to make safe changes to the code that generates our Self-Study bookshelf while adding the ability to link a book to our review. What more proof do you need? To purchase Michael's excellent book, go back to our Self-Study bookshelf and click on Working Effectively with Legacy Code.