Bibliography 275
B Answers to Exercises 279
Index 309
Customer Reviews
Customer Reviews: 9 Average Customer Rating: 




Aug 15, 2006 



Ken LeGro (klegro@totality.com) from USA
Stupendous Work
Overall, a fabulous body of work. The content hits home with any seasoned programmer. And, the style engages the reader without resorting to silly gimmicks (like images of smirky looking teenage girls.) If you read this book and take time to digest its character, your career-advancement opportunities will definitely improve. No doubt about it.
I only have one ideological disagreement with the book (and, I'm not sure how deep the disagreement runs since the topic isn't presented in much depth.) Anyway, chapter two includes a section entitled "Reversibility". In that section, the authors indicate that it is advantageous to "abstract the idea of your database [out of your application]." They intimate that your database should be abstracted into a "persistence service" which the application uses. I has not clear how the authors would implement such abstractions. They seems to be advocating a minimalist database approach. That is, remove database concerns from the architecture and let the App Server drive persistence needs. If true, then I think this information is misguided.
Modern databases (like Oracle) are not data dumps. And, the data abstraction problem isn't solved by less database involvement. Rather, in most cases, the converse is true. The abstraction problem is better addressed by more database involvement. Databases do far more than provide simple persistence. Databases are the preeminent tool in a Master programmer's toolbox. They are like the nucleus of programmer mechanics. Learn your database and learn it well. Otherwise, you will fall well short of the mastery you seek.
Now, this does not mean that you shouldn't think about abstraction when it comes to your data-model. The book is clear and unequivocal in this respect. Indeed, not abstracting the data-model from an application is as foolish as using the database as a simple persistence layer. What is important to realize is that your database engine is probably the most effective and sophisticated means of layering data access needs. So don't be quick to dismiss your database; it isn't "the problem." The problem is that many programmers reject the database due to a gross misunderstanding; these programmers have swallowed the myth of "database independence" (which, in pragmatic terms, is rubbish.) If you find someone who "knows" that an Application Server can supplant the capabilities of a tool like Oracle, please bring them inside (they've had too much sun.) For more information, I suggest that you Ask Tom (asktom.oracle.com/pls/ask.)
Nov 26, 2005 



Changed me as a programmer
Can't say enough good about this book of gems.
It's short, concise, readable like a thriller, and bubbling with the joy of building software.
One of the first books where I actually sat down and did some of the exercises ("man, I've got to try _that_ and compare my solution to their's").
This book has simply changed the way I viewed my profession, and was a blessed wake-up call. One year after consuming its pages for the first time, I am extremely grateful to have stumbled across it.
No. 1 on my top-5 list of software books, hands down.
Jul 28, 2005 



Bill Costa (Bill.Costa@unh.edu) from New Hampshire (USA)
A solid foundation for newbies; a battery recharge for old pros.
I got this book many years ago and read it cover to cover; a rare thing for me to do with a technical book. Recently I pulled it off the bookshelf and put it on my nightstand, and I am enjoying it all over again. I have a Master's degree in CS and have been coding for over 25 years. From my own experience I can promise you that the information and advice in this book goes to the very heart of the art, science, and practice of computer programming -- in any language, in any environment. Even for an old coder, such as myself, it can serve as an inspiration to return to many of the best practices you already knew, but have unintentionally drifted away from over time. This valuable resource deserves a place on every coder's bookshelf.
May 2, 2004 



Shepard Towindo (sqlcertified@yahoo.com) from USA
Muat read for any serious Software developer
This is it! Its a must read for any software development profession from a newb to a professional.
Sep 17, 2002 



Sanjay Munjal from Auckland, New Zealand
Get this Book if you are serious about software development.
I suggest every programmer, software developer to read this book. I bet you will come back and write the same review like me. It is that simple!
Jan 2, 2002 



Zlatko from ... around (still)
Hard-core of any programer's background
I have not much more to add (to previous comments) ... just to support them. This is one of those books that give something that helps build, or goes right down into, the very basic programming skills (the most important ones, I mean). And it goes beyond this, but this I find to be its most important contribution.
In my mind, it rates rather well even when compared with the "Programming Pearls", "The Practice of Programming" and a (very) few more evergreens of similar class (it is yet a different book, what only adds to its usefulness). Of course, one can not learn anything serious from a book or two ... but this is one of the books that gives a *lot* of what one needs to pick up and understand.
On the practical side, I can not imagine a type of (serious) programming activity for which one would not benefit from it -- I most highly recommend it regardless of what exactly you are doing (and I mean it, quite literally.)
May 14, 2001 



Eric Rasmussen (ericr@ericr.org) from Alpharetta, GA
This is "The Timess Way of Building" for Software Development
This is one of those books that transcends time and technologies. The tools we use to implement software systems will evolve over time, but the skills we need to implement them well will not. This book offers wisdom and insight that will help you become a more effective software developer, regardless of the technology you use.
Mar 27, 2000 



John S. from Franklin, Massachusetts, USA
A must read -- an excellent book
A book I've had trouble reading...because my wife keeps stealing it!!! I'm a developer and she manages ten developers (and no I don't work for her...at least during the day!). She has sent me back to bookpool to order three more copies for her and her team. And once again, my copy will be mine, all mine!
Dec 25, 1999 



R. Bogetti from Illinois
Excellent!
Sure to be a classic! I highly recommend this book to anyone that would like to hone his or her programming skills. Filled with common sense and practical application of work experience and software development knowledge.