Books

Books : reviews

Andrew Hunt, David Thomas.
The Pragmatic Programmer: from journeyman to master.
Addison-Wesley. 2000

rating : 2.5 : great stuff
review : 23 March 2001

There are many books on "how to program", but they tend to err on the theoretical side. This wonderful book bridges the gap, by showing how some of those theoretical ideas can be made to work in reality. It is chock full of pragmatic techniques to help make you a better programmer, to make your programs more robust, more flexible, more usable, more what the user wanted, to make your process for producing those programs more effective and productive. Importantly, it also covers meta-techniques to help you continue to improve even further.

It covers the whole process: coding, testing, debugging, configuration management, documentation, tools, automation, architecture, design, requirements gathering. Obviously, not all of these can be covered in depth in a single book. So a short section describes each basic concept, then gives good references off to other books or web-sites that cover the topic in more depth. For example, the salient points of refactoring are covered in a few well-written pages, followed up with a pointer to Martin Fowler's in-depth treatment.

The whole book is very well written, with a lightness of touch that makes it a pleasure to read, yet covering some deep, thought-provoking material. It is clear the authors care deeply about their craft, and there is something in here for every programmer. Recommended.

David Thomas, Andrew Hunt.
Programming Ruby: the Pragmatic Programmer's guide.
Addison-Wesley. 2001

Ruby is a true object-oriented programming language that makes the craft of programming easier. Ruby is a transparent language: It doesn’t obscure your program behind unnecessary syntax or reams of extra support code.

Guided by the Principle of Least Surprise, Ruby embodies the values of consistency and simplicity of expression. It’s more than a programming language: It’s a concise way of expressing ideas. Ruby supports natural intelligence&emdash;yours.

Programming Ruby: The Pragmatic Programmer’s Guide is your complete Ruby resource. It provides a tutorial and overview of Ruby version 1.6; a detailed description of the language’s structure, syntax, and operation; a guide to building applications with Ruby; and a comprehensive library reference.

Mining real rubies is hard work done with a pickaxe, but mining Ruby the language is simple. With this book, you’ll find it remarkably easy to:
• Learn Ruby basics&emdash;You’ll find normal stuff like classes, objects, and exceptions, as well as more interesting features, such as infinite-precision integers, iterators, mixins, and threads.
• Write large, well-structured Ruby programs
• Write CGI scripts and create dynamic Ruby pages for the Web
• Create cross-platform GUI applications
• Access Microsoft Windows® native API calls and automate Windows applications
• Extend Ruby using C code

Other gems you’ll find in Programming Ruby include:
• An alphabetical reference to all of the built-in classes, modules, and the standard library, documenting over a thousand methods
• A reference to object-oriented design libraries, network and Web libraries, and Microsoft Windows support
• A guide to downloading the Ruby language itself, as well as other Ruby resources

Numerous examples (that really work) appear throughout the book. You will come away from this book with an appreciation for Ruby’s power, flexibility, and clarity. You’ll be armed with the information you need to put Ruby to work for you and your projects.