Eloquent Ruby (Addison-Wesley Professional Ruby Series) and over one million other books are available for Amazon Kindle. Learn more



or
Sign in to turn on 1-Click ordering
Sell Us Your Item
For a $13.44 Gift Card
Trade in
More Buying Choices
Have one to sell? Sell yours here
Start reading Eloquent Ruby (Addison-Wesley Professional Ruby Series) on your Kindle in under a minute.

Don't have a Kindle? Get your Kindle here, or download a FREE Kindle Reading App.
Sorry, this item is not available in
Image not available for
Color:
Image not available

To view this video download Flash Player

 

Eloquent Ruby (Addison-Wesley Professional Ruby Series) [Paperback]

Russ Olsen
5.0 out of 5 stars  See all reviews (29 customer reviews)

List Price: $44.99
Price: $27.00 & FREE Shipping. Details
You Save: $17.99 (40%)
o o o o o o o o o o o o o o o o o o o o o o o o o o o o o o o o o o o o o o o o o o o o o o o o o o o o o o o o o o o o o o o o
In Stock.
Ships from and sold by Amazon.com. Gift-wrap available.
Want it Tuesday, May 21? Choose One-Day Shipping at checkout. Details
Free Two-Day Shipping for College Students with Amazon Student

Formats

Amazon Price New from Used from
Kindle Edition $17.27  
Paperback $27.00  
Sell Back Your Copy for $13.44
No matter where you bought them, get up to 70% back when you sell your books at Amazon.com.
Used Price$19.29
Trade-in Price$13.44
Price after
Trade-in
$5.85

Book Description

February 21, 2011 0321584104 978-0321584106 1

It’s easy to write correct Ruby code, but to gain the fluency needed to write great Ruby code, you must go beyond syntax and absorb the “Ruby way” of thinking and problem solving. In Eloquent Ruby, Russ Olsen helps you write Ruby like true Rubyists do–so you can leverage its immense, surprising power.

 

Olsen draws on years of experience internalizing the Ruby culture and teaching Ruby to other programmers. He guides you to the “Ah Ha!” moments when it suddenly becomes clear why Ruby works the way it does, and how you can take advantage of this language’s elegance and expressiveness.

 

Eloquent Ruby starts small, answering tactical questions focused on a single statement, method, test, or bug. You’ll learn how to write code that actually looks like Ruby (not Java or C#); why Ruby has so many control structures; how to use strings, expressions, and symbols; and what dynamic typing is really good for.

 

Next, the book addresses bigger questions related to building methods and classes. You’ll discover why Ruby classes contain so many tiny methods, when to use operator overloading, and when to avoid it. Olsen explains how to write Ruby code that writes its own code–and why you’ll want to. He concludes with powerful project-level features and techniques ranging from gems to Domain Specific Languages.

 

A part of the renowned Addison-Wesley Professional Ruby Series, Eloquent Ruby will help you “put on your Ruby-colored glasses” and get results that make you a true believer.


Frequently Bought Together

Eloquent Ruby (Addison-Wesley Professional Ruby Series) + Practical Object-Oriented Design in Ruby: An Agile Primer (Addison-Wesley Professional Ruby Series) + Ruby on Rails Tutorial: Learn Web Development with Rails (2nd Edition) (Addison-Wesley Professional Ruby Series)
Price for all three: $84.20

Some of these items ship sooner than the others.

Buy the selected items together


Editorial Reviews

Review

"R>Eloquent Ruby is like programming in Ruby itself: fun, surprisingly deep, and you'll find yourself wishing it was always done this way. Wherever you are in your Ruby experience from novice to Rails developer, this book is a must read."

--Ethan Roberts

Owner, Monkey Mind LLC

 

"Eloquent Ruby lives up to its name. It's a smooth introduction to Ruby that's both well organized and enjoyable to read, as it covers all the essential topics in the right order. This is the book I wish I'd learned Ruby from."

--James Kebinger

Senior Software Engineer, PatientsLikeMe

www.monkeyatlarge.com

 

"Ruby's syntactic and logical aesthetics represent the pinnacle for elegance and beauty in the ALGOL family of programming languages. Eloquent Ruby is the perfect book to highlight this masterful language and Russ's blend of wit and wisdom is certain to entertain and inform."

--Michael Fogus

Contributor to the Clojure programming language and author of The Joy of Clojure

About the Author

Russ Olsen’s career spans three decades, during which he has written everything from graphics device drivers to document management applications. These days, he diligently codes GIS, web service security, and process automation solutions. He spends much of his otherwise free time writing and speaking about programming, especially Ruby and Clojure. His first book was the highly regarded Design Patterns In Ruby (Addison-Wesley, 2007). He is also the lurking presence behind the Technology As If People Mattered blog at www.russolsen.com.


Product Details

  • Paperback: 448 pages
  • Publisher: Addison-Wesley Professional; 1 edition (February 21, 2011)
  • Language: English
  • ISBN-10: 0321584104
  • ISBN-13: 978-0321584106
  • Product Dimensions: 7.4 x 0.9 x 8.9 inches
  • Shipping Weight: 1.5 pounds (View shipping rates and policies)
  • Average Customer Review: 5.0 out of 5 stars  See all reviews (29 customer reviews)
  • Amazon Best Sellers Rank: #57,123 in Books (See Top 100 in Books)

More About the Author

Discover books, learn about writers, read author blogs, and more.

Customer Reviews

5.0 out of 5 stars
(29)
5.0 out of 5 stars
3 star
0
2 star
0
1 star
0
Most Helpful Customer Reviews
47 of 49 people found the following review helpful
5.0 out of 5 stars The first Ruby book I read in full within 24 hours February 26, 2011
Format:Paperback
This book is so easy to read yet so useful and informative that I read it in its entirety within 24 hours (across 2 distinct days admittedly ;-)).

Eloquent Ruby is a book published by Addison Wesley and written by Russ Olsen (who also wrote Design Patterns in Ruby a few years ago). It clocks in at around 400 pages and has 31 chapters clocking in at around a punchy 10 pages each. Each chapter is titled as a guideline you should follow to write "eloquent" Ruby - things like Create Classes That Understand Equality and Write Code That Looks Like Ruby - and typically the claim is explained, some code examples shown and discussed, some real world examples pointed to, and that's it. As with Design Patterns in Ruby, Russ adopts a chatty, familiar tone. Reading this book is like reading a book specifically written for you by a friend. He doesn't shoot off on many unnecessary tangents and he keeps the stories short and sweet but this book certainly couldn't be called dry.

The book is also notably short of egregious errors or omissions. Even when I don't read something with a fine-toothed comb on standby, I can usually pick out a laundry list of factual and grammatical errors or omissions (as both Obie Fernandez and my wife will attest) but Eloquent Ruby gave me little to chew on. I can only bring to mind a few spacing and formatting issues and only one true "error": a > instead of a < in a class definition on a single example.

Russ tries to remain neutral with his choice of Ruby implementations but the book seems to focus primarily on Ruby 1.9 (Ruby 1.9.1 specifically but that's just due to when he wrote it) while providing useful footnotes in the cases where there are differences to Ruby 1.8. No matter what Ruby implementation you're using, there's little to confuse you as most of it is very non-implementation and non-version specific.

I wholeheartedly recommend this book to anyone except those who, well, could have written a similar book themselves. The short punchy chapters make it a delight to read and gives the option of reading it merely 10 minutes at a time before bed or similar. The short chapters also make it useful as a reference if you forget how to do a certain thing like, say, use method_missing, even though it's not put together as a reference book at all. Lastly, this book is a must read if you're not confident with Ruby idioms and the best way to structure and lay out your code - Russ's approaches reinforce the current "standard" way to write Ruby and this alone is worth the price of admission.
Comment | 
Was this review helpful to you?
28 of 28 people found the following review helpful
5.0 out of 5 stars Eloquent Olsen March 7, 2011
By Fogus
Format:Paperback
For better or worse the vast majority of my work life journey has been travelled with Java as my vehicle of expression. However, by nature I have a burning desire to learn new languages and at one point or another I discovered Russ Olsen's (also the author of Eloquent Ruby) "Design Patterns in Ruby". Having at one time counted myself as a true-believer in everything pattern-esque, I was excited for the opportunity to learn Ruby under the aegis of The Gang of Four. However, what I found was something else entirely. I absolutely loved "Design Patterns in Ruby" for reasons that I was not expecting. That is, what I found was an extremely interesting book that was playful and as a nice side-effect *actually taught me how Ruby's powerful features make many design patterns unnecessary*.

Olsen, with his latest effort has mastered the art of writing a book that is extremely interesting, fun, and informative. As an author myself, I greatly admire the ability in other authors to take what many would consider dry and bland, a programming language book, and create something that is truly special. Let me not give the impression that "Eloquent Ruby" is filled with fluff however; on the contrary, of any Ruby book that I've read I have learn the most from Mr. Olsen's masterpiece.

"Eloquent Ruby" is written for the programmer like me: someone with previous programming experience, but with only a passing understanding of Ruby itself. The structure of the book will help guide the Ruby neophyte toward a stronger understanding of not only the language constructs and idioms, but also the Ruby culture. As an outsider to said culture, I've always viewed the Ruby community as merely a collection of characters, but Olsen's book helps to illustrate that (almost universally) Ruby practitioners first and foremost strive to create correct and robust solutions. As a proponent of the Lisp family of languages, I tend to look askance at languages falling into the ALGOL family, but "Eloquent Ruby" has succeeded in convincing me that with the right approach and mindset then Ruby can be a stunningly beautiful language. And this is really the key point to take away from Mr. Olsen's book. That is, he guides the reader through the Ruby mindset to drive home the point that Ruby's features -- from its powerful and fluent blocks and modules, to the mind-bending metaprogramming facilities, to its to its humble symbol, and through its philosophy of "Objects all the way down" -- play together in such a way as to foster ... well, elegance.

The highlight of the book is of course its dénouement that succeeds in pulling together all of the lessons presented throughout the book into explaining the role that Domain-Specific Languages (DSL) serve in solving programming problems with Ruby. I can't possibly do justice in summarizing this important technique, but the punch-line is that Ruby's features foster the creation of powerful and expressive DSLs used to simplify the development of complex solutions by allowing the language itself to be molded into a form that is highly expressive to said solution! It takes a while to see the power in this technique, but "Eloquent Ruby" makes a compelling case indeed.

Russ Olsen has helped me to gain more experience points in Ruby, and I must say that I am excited to learn more. If you too wish to learn more about Ruby, then you would be hard-pressed to find a better book than "Eloquent Ruby" in helping you to do so.
Comment | 
Was this review helpful to you?
15 of 15 people found the following review helpful
5.0 out of 5 stars A Great Book for Rubyist at All Skill Levels March 5, 2011
Format:Paperback
I can't even begin to imagine how difficult it would be to write a book covering such an in-depth topic as the Ruby Programming language. Add to that a target audience with a widely diverse range of skills and the tasks seems to be out right impossible. Fortunately for us mere mortals Russ Olsen has taken on this challenge and surpassed my high expectations in his second book, Eloquent Ruby.

The first part of the book is for the Ruby newbies, but takes an interesting deviation from most programming books. Instead of focusing simply on the syntax and language libraries, Eloquent Ruby focuses on the community aspect of the Ruby programming language. Each programming community has its own style and norms and without a lot of direction and practice, these style and norms can be difficult to learn. The Ruby community is heavily opinionated and Russ's book does a great job of explaining these opinions and their manifestation in many Ruby codebases.

In Part Two of Eloquent Ruby, Olsen dives into the core concepts and building blocks of the Ruby programming language. This section of the book covers the everyday usage patterns and common best practices when working with Ruby's classes, iterators, blocks, and modules.

The power and flexibility of Ruby is put on full display in Part Three of Russ's book. Newcomers to Ruby are often mystified by Ruby code that appears to be doing magical things like dynamically adding methods to a class. In this section, Russ pulls back the curtain and explains the magic that is metaprogramming. Those unfamiliar with the concept may find the topic confusing at first, but Olsen breaks it down in a way that is easy to understand. This section thoroughly covers Ruby's method_missing hook and how to open classes to add your own customizations.

In the last section Russ ties a lot of the concepts of the book together through a discussion on how Ruby can be used to create Domain Specific Languages (DSLs). As a bonus Russ finishes the book with a chapter on how to package your code into a gem (Ruby library) and a chapter on the different Ruby Implementations.

At almost 400 pages I feared Eloquent Ruby would take a while to read, but I was pleasantly surprised at the pace at which I made it through the book. Even though the book was a quick read it still felt as if I had gained a lot of new knowledge after its completion. I credit the speed reading and depth of understanding to Olsen's writing style. The book is broken up into 30 concise chapters that each focus on a specific topic. This makes the book's information very easy to digest.

Following a similar pattern from his first book, Design Patterns in Ruby, each chapter of Eloquent Ruby describes code examples "In the Wild" where Olsen discusses code snippets from open source projects using the topics covered within that chapter. In my opinion giving "real world" code examples was a great way to prove the relevance of the information covered in the book. Overall, Eloquent Ruby was a great read and I'd highly recommend it to Rubyist at all skill levels.
Comment | 
Was this review helpful to you?
Most Recent Customer Reviews
5.0 out of 5 stars Great book, just not for beginners
I like the writing style as well as the content of the book enough that I'm going to get his beginner book though I've gone past the beginner stage.
Published 7 days ago by Wayne
5.0 out of 5 stars A must read for every rubyist to be.
It is a guide to understand better the depths of the Ruby language itself and use them for good.
Clear code examples and a very well written prose.
Published 1 month ago by fabricio
5.0 out of 5 stars A must for best practices
if you are learning or already practicing ruby, and want to become better at it and have your coworkers like you more, this is what you are looking for. Read more
Published 3 months ago by Jonathan Pepin
5.0 out of 5 stars Wonderful best practices book
Anybody who has ever programmed ruby should read this book. If nothing else, it gives ruby coders a nice set of best practices when it comes to the actual lines of code they... Read more
Published 3 months ago by Jeffery Durand
5.0 out of 5 stars Wow
I've been learning part-time how to program for about a year and a half. I decided on learning Ruby, because quite frankly, there was no other programming language group where I'm... Read more
Published 3 months ago by Shicholas
5.0 out of 5 stars Agree with the other reviewers on 5 stars!
This is probably the most enjoyable and interesting programming book I've ever read. Part of it is just how "cool" ruby is, and part of it is the great balance of code and... Read more
Published 3 months ago by Justin Gordon
5.0 out of 5 stars Eloquent indeed
A beautifully written book with clearly explained topics. Out of all the other books on this topic that I've read, this one really helped to further my understanding of Ruby and... Read more
Published 5 months ago by Robert A. Phillips
5.0 out of 5 stars Well written
My husband is self teaching himself Ruby. He likes the book and says that is as described and well written. I know that see him using the book a lot.
Published 5 months ago by Kettleb
5.0 out of 5 stars Perfect
Eloquent Ruby is a perfect book if you want to get into Ruby programming. The book gives good examples and shows different ways to solve a problem with Ruby. Read more
Published 8 months ago by Jankees
5.0 out of 5 stars This should be your second Ruby book
A pleasant journey through how Ruby makes expressing certain solutions more pleasant. It gradually builds in complexity from basic syntax through metaprogramming to creating DSLs... Read more
Published 8 months ago by Brian Wisti
Search Customer Reviews
Only search this product's reviews


Forums

There are no discussions about this product yet.
Be the first to discuss this product with the community.
Start a new discussion
Topic:
First post:
Prompts for sign-in
 



So You'd Like to...


Create a guide


Look for Similar Items by Category