Ruby Way: Solutions and Techniques in Ruby Programming / Edition 2

Paperback (Print)
Used and New from Other Sellers
Used and New from Other Sellers
from $1.99
Usually ships in 1-2 business days
(Save 96%)
Other sellers (Paperback)
  • All (22) from $1.99   
  • New (7) from $27.26   
  • Used (15) from $1.99   


Ruby is an agile object-oriented language, borrowing some of the best features from LISP, Smalltalk, Perl, CLU, and other languages. Its popularity has grown tremendously in the five years since the first edition of this book.

The Ruby Way takes a “how-to” approach to Ruby programming with the bulk of the material consisting of more than 400 examples arranged by topic. Each example answers the question “How do I do this in Ruby?” Working along with the author, you are presented with the task description and a discussion of the technical constraints. This is followed by a step-by-step presentation of one good solution. Along the way, the author provides detailed commentary and explanations to aid your understanding.

Coverage includes

  • An overview of Ruby, explaining terminology and basic principles
  • Operations on low-level data types (numbers, strings, regular expressions, dates)
  • The new regular expression engine (Oniguruma)
  • Internationalization (I18N) and message catalogs in Ruby
  • Operations on hashes, arrays, and other data structures such as stacks, trees, and graphs
  • Working with general I/O, files, and persistent objects
  • Database coverage including MySQL, SQLite, Oracle, DBI, and more
  • Ruby-specific techniques in OOP and dynamic programming
  • Graphical interfaces in Ruby (Tk, GTK+, Fox, and Qt)
  • Working with Ruby threads for lightweight multitasking
  • Everyday scripting and system administration in Ruby
  • Working with image files, PDFs, YAML, XML, RSS, and Atom
  • Testing, debugging, profiling, and packaging Ruby code
  • Low-level network programming and client-server interaction
  • Web development tools including Rails, Nitro, Wee, IOWA, and more
  • Working with distributed Ruby, Rinda, and Ring
  • Ruby development tools such as IDEs, documentation tools, and more

The source code for the book can be downloaded from

Read More Show Less

Editorial Reviews

From Barnes & Noble
The Barnes & Noble Review
Ruby's early evangelists responded passionately to its simplicity, transparency, power, and sense of fun. More recently, many are discovering Ruby through web frameworks like Rails. Whatever's brought you to Ruby, The Ruby Way, Second Edition will help you make the most of it.

A seminal text in Ruby's early days, it's been revamped from top to bottom. The goal hasn't changed, though: to provide superior code examples that solve the problems you're most likely to encounter. Just look up a function or task, and you'll find the methods, classes, and code needed to handle it.

New chapters address data formats (including XML and RSS), testing/debugging, packaging/distribution, internationalization, and development tools. There's extensive new coverage of data management and regular expressions. And, yes, Hal Fulton introduces Rails, Nitro, and other Ruby-based web development tools. If you already know a little Ruby, he'll guide you to real mastery. Bill Camarda, from the January 2007 Read Only

Read More Show Less

Product Details

  • ISBN-13: 9780672328848
  • Publisher: Addison-Wesley
  • Publication date: 11/7/2006
  • Series: Addison-Wesley Professional Ruby Series
  • Edition number: 2
  • Pages: 888
  • Sales rank: 1,454,281
  • Product dimensions: 7.00 (w) x 9.00 (h) x 2.10 (d)

Meet the Author

Hal Fulton has two degrees in computer science, in addition to 16 years of industry experience. He has been using Ruby since 1999 for a variety of programming tasks from large application and system programming to programming embedded applications.

Guy Hurst is the founder and proprietor of Hurstlinks, a Web development firm in Norfolk, VA. He has been using Ruby for many years, in place of Perl for a full range of Web programming tasks.

Read More Show Less

Table of Contents

Chapter 1: Ruby in Review

Chapter 2: Working with Strings

Chapter 3: Manipulating Regular Expressions

Chapter 4: Internationalization in Ruby

Chapter 5: Performing Numerical Calculations

Chapter 6: Using Symbols and Ranges

Chapter 7: Manipulating Times and Dates

Chapter 8: Arrays, Hashes, and Other Enumerables

Chapter 9: More Advanced Data Structures

Chapter 10: Manipulating files and external data

Chapter 11: Ruby and OOP

Chapter 12: Graphical Interfaces for Ruby

Chapter 13: Threads in Ruby

Chapter 14: System Administration and Scripting

Chapter 15: Ruby and Data Formats

Chapter 16: Testing and Debugging

Chapter 17: Packaging and Distributing Code

Chapter 18: Network Programming

Chapter 19: Ruby and Web Applications

Chapter 20: Distributed Ruby

Chapter 21: Ruby and External Software

Chapter 22: Ruby Development Tools

Chapter 23: The Ruby Community

Read More Show Less

Customer Reviews

Be the first to write a review
( 0 )
Rating Distribution

5 Star


4 Star


3 Star


2 Star


1 Star


Your Rating:

Your Name: Create a Pen Name or

Barnes & Review Rules

Our reader reviews allow you to share your comments on titles you liked, or didn't, with others. By submitting an online review, you are representing to Barnes & that all information contained in your review is original and accurate in all respects, and that the submission of such content by you and the posting of such content by Barnes & does not and will not violate the rights of any third party. Please follow the rules below to help ensure that your review can be posted.

Reviews by Our Customers Under the Age of 13

We highly value and respect everyone's opinion concerning the titles we offer. However, we cannot allow persons under the age of 13 to have accounts at or to post customer reviews. Please see our Terms of Use for more details.

What to exclude from your review:

Please do not write about reviews, commentary, or information posted on the product page. If you see any errors in the information on the product page, please send us an email.

Reviews should not contain any of the following:

  • - HTML tags, profanity, obscenities, vulgarities, or comments that defame anyone
  • - Time-sensitive information such as tour dates, signings, lectures, etc.
  • - Single-word reviews. Other people will read your review to discover why you liked or didn't like the title. Be descriptive.
  • - Comments focusing on the author or that may ruin the ending for others
  • - Phone numbers, addresses, URLs
  • - Pricing and availability information or alternative ordering information
  • - Advertisements or commercial solicitation


  • - By submitting a review, you grant to Barnes & and its sublicensees the royalty-free, perpetual, irrevocable right and license to use the review in accordance with the Barnes & Terms of Use.
  • - Barnes & reserves the right not to post any review -- particularly those that do not follow the terms and conditions of these Rules. Barnes & also reserves the right to remove any review at any time without notice.
  • - See Terms of Use for other conditions and disclaimers.
Search for Products You'd Like to Recommend

Recommend other products that relate to your review. Just search for them below and share!

Create a Pen Name

Your Pen Name is your unique identity on It will appear on the reviews you write and other website activities. Your Pen Name cannot be edited, changed or deleted once submitted.

Your Pen Name can be any combination of alphanumeric characters (plus - and _), and must be at least two characters long.

Continue Anonymously
Sort by: Showing all of 2 Customer Reviews
  • Anonymous

    Posted December 6, 2006

    random access

    Yes, there are some typos in Fulton's book. But the vast bulk (and it is indeed a big text) can be profitably read. Either by someone wanting to learn Ruby from scratch or by a Ruby programmer searching for a solution to some common problem. For the former, the book may be too long. If you want to come up to speed on Ruby, ab initio, perhaps you might consider a slimmer text. The book is best suited as a random access resource, for a Ruby programmer. As implied by the title. The 400 odd examples demonstrate a good diversity of usages of the language. Grouped according to broad topics like threads, user interfaces and networks. This helps you focus on finding a possible solution. However, suppose you can't find an exact match. The numerous examples may have one close enough to suggest an easy mod. Granted, if a relevant example has typos, so that it won't run, that's a drag. But only a minor one. If you already know Ruby, fixing this should be a low level detail. As far as comparing with other scripting languages, well the book does not do this. No mention at all of Perl or PHP. Probably the author regards this as outside the book's remit. The decision of whether you should use Ruby over those alternatives is something that cannot be answered by this book alone.

    Was this review helpful? Yes  No   Report this review
  • Anonymous

    Posted November 8, 2006

    Well-received on Slashdot

    [reviewed by Tim Hunter] Hal Fulton's The Ruby Way, Second Edition doesn't try to be the only book a Ruby programmer needs. It tries to be a book every serious Ruby programmer needs, and it succeeds. The Ruby Way is a book about programming with Ruby, the object-oriented programming language from Japan. Ruby is free software and runs on Linux, Microsoft Windows, Apple OS X, and other operating systems. [...] The goal of The Ruby Way is nothing less than describing the universe around the Ruby programming language. In one 800+ page volume, it describes Ruby's design principles, history, syntax, built-in classes, standard libraries, 3rd-party add-on libraries, related development tools, and user community. The examples and Fulton's explanations emphasize Ruby programming best practices, hence the title. Fulton describes The Ruby Way as an 'inverted reference.' A typical reference book for a programming language lists the libraries, classes and methods by name, which you can use to discover their purpose. The Ruby Way, on the other hand, groups Ruby's libraries, classes and methods by purpose, from which you can discover their names. Section titles tend to describe tasks, such as 'Tokenizing a String' and 'Interacting with an IMAP Server'. The sections then describe the split method in the String class and the net/imap library, respectively. Several chapters group Ruby libraries by related tasks. For example, Chapter 15 describes Ruby libraries used to process specialized data formats such as XML, RSS, images, and PDF. In this chapter you will learn that XML processing in Ruby is typically done with REXML and that PDF files can be created with PDF::Writer, etc. Organizing topics by purpose or function instead of by name makes it easy to discover what parts of Ruby you need to complete a task. See

    Was this review helpful? Yes  No   Report this review
Sort by: Showing all of 2 Customer Reviews

If you find inappropriate content, please report it to Barnes & Noble
Why is this product inappropriate?
Comments (optional)