The Ruby Way, Second Edition: Solutions and Techniques in Ruby Programming (2nd Edition) Paperback – Oct 25 2006
|New from||Used from|
There is a newer edition of this item:
Customers Who Bought This Item Also Bought
No Kindle device required. Download one of the Free Kindle apps to start reading Kindle books on your smartphone, tablet, and computer.
Getting the download link through email is temporarily not available. Please check back later.
To get the free app, enter your mobile phone number.
About the Author
Hal Fulton has two degrees in computer science from the University of Mississippi. He taught computer science for four years at the community college level before moving to Austin, Texas, for a series of contracts (mainly at IBM Austin). He has worked for more than 15 years with various forms of UNIX, including AIX, Solaris, and Linux. He was first exposed to Ruby in 1999, and in 2001 he began work on the first edition of this book, which was the second Ruby book in the English language. He has attended six Ruby conferences and has given presentations at four of those, including the first European Ruby Conference in Karlsruhe, Germany. He currently works at Broadwing Communications in Austin, Texas, working on a large data warehouse and related telecom applications. He works daily with C++, Oracle, and of course, Ruby.
Hal is still active daily on the Ruby mailing list and IRC channel, and has several Ruby projects in progress. He is a member of the ACM and the IEEE Computer Society. In his personal life, he enjoys music, reading, writing, art, and photography. He is a member of the Mars Society and is a space enthusiast who would love to go into space before he dies. He lives in Austin, Texas.
Most Helpful Customer Reviews on Amazon.com (beta)
This is really two books in the guise of one. One the surface, The Ruby Way appears to be a cookbook of Ruby recipes, and a very thorough one at that. But The Ruby Way also manages to capture the gestalt of Ruby, that intangible, indefinable philosophy behind the Ruby idioms that old-timers now take for granted.
Every programming language has its own "way" of doing things. You don't want to write Java code in Ruby, or VB code in Ruby, you should be writing *real* Ruby code. If you want to see Ruby code the way it was "meant" to be written, this is your book.
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.
Contents: Ruby in Review; Working with Strings; Working with Regular Expressions; Internationalization in Ruby; Performing Numerical Calculations; Symbols and Ranges; Working with Times and Dates; Arrays, Hashes, and Other Enumerables; More Advanced Data Structures; I/O and Data Storage; OOP and Dynamic Features in Ruby; Graphical Interfaces for Ruby; Threads in Ruby; Scripting and System Administration; Ruby and Data Formats; Testing and Debugging; Packaging and Distributing Code; Network Programming; Ruby and Web Applications; Distributed Ruby; Ruby Development Tools; The Ruby Community; Index
Fulton states in the introduction that this book is not designed to be a "teach yourself Ruby" title. Instead, it's meant to explore the power and utility of the language by means of examples. Think of it as a *really* large cookbook-style volume. In each chapter, there are a series of how-to sections that are practical examinations of a particular technique. For instance, in the regular expressions chapter, you'll see sections such as using anchors, positive and negative lookahead, recursions in regular expressions, and detecting doubled words in text. This solutions-based approach to Ruby is perfect for someone who has covered the basics via a tutorial or some other book, but now has to actually use the language to do something. Personally, I find having a book like this is extremely valuable in making the jump from rank novice to functional developer. I know good code when I steal it... :)
Coming from a Perl programming background I found several things (mostly syntax) in Ruby quite odd and am very happy to have this reference on hand.
The GTK section of the book is very nice as I haven't seen it covered elsewhere. The additional coverage of Rails adds to the completeness of the material and helps the book win some popularity on a current hot topic.
This is a very well-rounded text for Ruby programmers. I would recommend it to anyone interested in learning Ruby, regardless of programming experience.
That is not to say that there aren't many interesting things to be found in the book, however, the question is weather they are worth the time you have to spent searching for them as if you were a desperate cowboy sifting through the river sands of the wild west to find few grains of gold. If you are not seeking adventure and useless wandering around and about, do not bother reading this pedagogically unsound concoction. Perhaps best use of this book is on the book shelf - for occasional picking up at random times to check out the most obscure and weak areas of your Ruby proficiency, providing that such indeed is the case.
Let me give you an example for instance, on page 425 you will find the following conclusion after arguably too trivial treatment of the pertinent subject: "You can nest a class within a module, a module within a class, and so on. If you find an interesting and creative uses for these technique, please let us all know about it." This statement tells us very much about the mindset you ought to have in order to appreciate this book. This suites a description of a pioneer, an explorer in a research institute, or indeed an adventurer. Continuing on the same page, author is discussing Ruby peculiarity - "class instance variables" in the shadow of commonly known "class variables", failing to explain the most important mechanics behind the example he presents, which makes this paragraph interesting only for someone very well versed in Ruby intricacies.
However, if you are a Ruby novice, perhaps even proficient in C++, Java or in something similar, unless you have tones of spare time and are just trying to test your understanding of Ruby and explore someone else's take on the subject, I then recommend instead to read a much less voluminous an far superior book on Ruby by D. Flanagan and Y. Matsumoto entitled "The Ruby Programming Language". If you feel after reading Flanagan's and Matz's book you may be ready for something like "The Ruby Way", I believe a second or even a third reading of "The Ruby Programming Language" is a far better choice.
Look for similar items by category
- Books > Computers & Technology > Programming > Languages & Tools > Ruby
- Books > Computers & Technology > Programming > Software Design, Testing & Engineering > Object-Oriented Design
- Books > Computers & Technology > Software
- Books > Textbooks > Computer Science & Information Systems > Object-Oriented Software Design
- Books > Textbooks > Computer Science & Information Systems > Programming Languages