Programming Ruby, 2nd Edition
The Pragmatic Programmer's Guide, Second Edition
By Dave Thomas, Chad Fowler, Andy Hunt
Publisher: Pragmatic Bookshelf
Final Release Date: October 2004
Pages: 864

Ruby is an increasingly popular, fully object-oriented dynamic programming language, hailed by many practitioners as the finest and most useful language available today. When Ruby first burst onto the scene in the Western world, the Pragmatic Programmers were there with the definitive reference manual, Programming Ruby: The Pragmatic Programmer's Guide.

Now in its second edition, author Dave Thomas has expanded the famous Pickaxe book with over 200 pages of new content, covering all the improved language features of Ruby 1.8 and standard library modules. The Pickaxe contains four major sections:

  • An acclaimed tutorial on using Ruby.
  • The definitive reference to the language.
  • Complete documentation on all built-in classes, modules, and methods
  • Complete descriptions of all 98 standard libraries.

If you enjoyed the First Edition, you'll appreciate the expanded content, including enhanced coverage of installation, packaging, documenting Ruby source code, threading and synchronization, and enhancing Ruby's capabilities using C-language extensions. Programming for the World Wide Web is easy in Ruby, with new chapters on XML/RPC, SOAP, distributed Ruby, templating systems, and other web services. There's even a new chapter on unit testing.

This is the definitive reference manual for Ruby, including a description of all the standard library modules, a complete reference to all built-in classes and modules (including more than 250 significant changes since the First Edition). Coverage of other features has grown tremendously, including details on how to harness the sophisticated capabilities of irb, so you can dynamically examine and experiment with your running code. "Ruby is a wonderfully powerful and useful language, and whenever I'm working with it this book is at my side" --Martin Fowler, Chief Scientist, ThoughtWorks
Product Details
Recommended for You
Customer Reviews


by PowerReviews
oreillyProgramming Ruby, 2nd Edition

(based on 4 reviews)

Ratings Distribution

  • 5 Stars



  • 4 Stars



  • 3 Stars



  • 2 Stars



  • 1 Stars



Reviewed by 4 customers

Displaying reviews 1-4

Back to top


Brutal reading. you will learn if you do the work.

By RubyFreak

from Undisclosed

Comments about oreilly Programming Ruby, 2nd Edition:

I was reading Dave Thomas' "Agile Web Development with Rails" and decided that I need to read the Pickaxe book in order to understand the first one.(it is called the Pickaxe book because of the pick-axe on the cover)

All tech authors, instructors etc, have to make a choice: Cater to the slowest meathead in the class or cater to the sharpest tack.

I guess I fit the meathead definition as the Pickaxe kicked my butt(so did Dave's other book).

Don't get me wrong, the Pickaxe was a good book for me, in fact if you are a pretty well versed "curly Brace" programmer in PHP or Java or C it would is a great book for you. Lets face it, Dave Thomas is the "take no prisoners", Chuck Norris of Ruby. Ruby would not exist in it's current form without him (Thanks Dave).

I am a veteran Visual Basic guy (AKA not a real programmer) and a lot of what was in the Pickaxe was new to me. For a newbie like myself, it was a huge amount of work. The problem is that I did not have the assumed background knowledge to understand most of the examples. Dave would be describing one point of the Ruby language and give a code example that interjected as many as 3 other, heretofore unexplained functions or Ruby calls. I suppose that many people would not have had to look them up, I did. Things like Grep and gsub and many regExp options plus just a lot of fancy Ruby calls. I Did learn a HUGE amount looking these things up, and it was worth it to me. The actual book I needed would have twice or three times as thick and an experienced curly brace programmer would have hated it.

So, This is a great book and you should buy it as there is not a better book out there, but, if you are a newbie, be ready to work. It took me about 50 hours to read and FULLY understand the first 173 pages. Yup, Like 15 to 20 minutes per page. (you are thinking this guy is a fricking moron, read the book first and then decide) I put alphabetical markers in the index and I recommend that you do that first thing, as YOU WILL BE IN THE INDEX all the time and you will be looking up stuff on the internet when it isn't in the index.

Part of me would like to give the book a rating of less than 5, but "Definitive" does describe this book. It IS the definitive guide to Ruby.


Excellent Book, if somewhat lacking in places

By crowe

from Undisclosed

Comments about oreilly Programming Ruby, 2nd Edition:

I found this book to be very well written and concise, though clearly intended for someone with some level of prior programming experience. My only real complaint is that some of the chapters, while covering a wide amount of material, seem to be lacking in depth. Aside from that, however, I found this book to be more than adequate to give a solid a foundation in Ruby, and after it serves as an extremely useful reference for the classes and modules that are built-in to Ruby.

All in all, if you're interested in learning Ruby, this book should definitely be in your collection.


Well worth the price

By msoulier

from Undisclosed

Comments about oreilly Programming Ruby, 2nd Edition:

Not only was this book easy to read, it is my definitive Ruby language reference in day to day programming. This might have something to do with the fact that freely available Ruby documentation sucks or in non-existent, but this would be my reference in any case.

Well written, easy to read, great reference for later work. This is the way it should be done.


great introduction to a language

By Zed Lopez

from Undisclosed

Comments about oreilly Programming Ruby, 2nd Edition:

When Dave Thomas and Andy Hunt, authors of The Pragmatic Programmer, published the first edition of Programming Ruby in 2000, it was the first English language Ruby book. Ruby documentation was so scant that they had to study the source code to do it, as Ruby's author, Matz, explains in his foreword. For 2005, they revised it to cover Ruby 1.8, the latest major release.

Though there are now several other Ruby books, Programming Ruby is still trying to do it all -- language tutorial, language reference, a guide to thinking in Ruby (which includes thinking in objects), and an introduction to the Ruby community's conventions. The book is broader than it is deep, but, given its breadth, that's praising with faint damns.

It's not a book for a programming novice, but the language tutorial was thorough and clear. Moderately experienced programmers should have no problems with it. If you've done object-oriented and functional programming before, it'll be easy going.

I was impressed by how much the book includes of what you need to actually develop in Ruby -- trying code snippets in the interactive Ruby shell, debugging, watching out for Ruby's gotchas, developing a test suite, documenting (in Rdoc, a Ruby standard), packaging code into a Ruby Gem (RubyGems is Ruby's equivalent to Perl's CPAN), profiling your code to find the slow parts, and how to extend Ruby in C to speed them up.

There's a brief survey of using Ruby for Web, Tk, and Win32 programming. The book's emphasis on breadth over depth is most obvious here -- 18 pages on web programming doesn't just cover CGI programming, but touches on cookies, session maintenance, two template systems for HTML generation, eruby (a means of embedding Ruby in HTML, like PHP, Mason, PSP, or the other *SPs), SOAP, WSDL, and the Google API. (Ruby on Rails is mentioned only as a framework "currently attracting mindshare in the Ruby community.")

For all their brevity, these chapters were still useful. They're a starting point for learning available tools for those problem domains. More importantly, they demonstrate the breadth of the standard library and other available packages, and provide a lesson in looking for existing solutions first. That's old hat to people used to the open source world, but it could prove invaluable to someone who wandered in from the outside.

Almost half the book is a reference to the built-in classes and modules, and to the standard library. Ruby has dozens of built-in classes, each, typically, with dozens of methods, so it's no surprise that a lot of this information went unmentioned in the language tutorial. In my use of the reference so far, I've found it clear and well-organized.

Perl played a part in inspiring Ruby. Likewise, it strikes me that Programming Ruby's authors probably took inspiration from Programming Perl. It's even nicknamed for its cover illustration -- the PickAxe Book. And, like the Camel Book, it goes beyond the language at hand to advance general principles of good programming: code reuse, writing for maintainability, and avoiding reinventing the wheel. And it's all written with an infectious joy in programming.

My only complaint about the book is that the index is spotty in its coverage of the language tutorial chapters -- I've felt frustrated trying to find discussions of things because, too often, the index only pointed to the reference section's coverage of them.

But the book left me excited about programming in Ruby, and gave me all I needed to begin. That's all I could ask from an introduction to a new language.

Displaying reviews 1-4

Back to top

Buy 2 Get 1 Free Free Shipping Guarantee
Buying Options
Print:  $44.95