Ruby Books

D

Dave Dave

I am trying to get into Ruby programming so that I could eventually work
with Ruby on Rails. Anyone know of good books to get started with Ruby
Programming, or even better any Rails books with a good
overview/tutorial of the Ruby language?
 
P

pat eyler

Hi Dave,

I am trying to get into Ruby programming so that I could eventually work
with Ruby on Rails. Anyone know of good books to get started with Ruby
Programming, or even better any Rails books with a good
overview/tutorial of the Ruby language?

Are you a beginning programmer? If so, Learn To Program is the book
for you.

If you already have some coding chops, you might look at Programming
Ruby (also known as the Pick-axe) and Ruby for Rails. The upcoming
2nd Edition of The Ruby Way looks to be a good one, but it's not (quite)
out yet.


responded to via the ruby-talk mailing list ;^)
 
J

James Britt

Dave said:
I am trying to get into Ruby programming so that I could eventually work
with Ruby on Rails. Anyone know of good books to get started with Ruby
Programming, or even better any Rails books with a good
overview/tutorial of the Ruby language?

Ruby for Rails by David A. Black on both accounts.
 
A

Alvin Ryder

Dave said:
I am trying to get into Ruby programming so that I could eventually work
with Ruby on Rails. Anyone know of good books to get started with Ruby
Programming, or even better any Rails books with a good
overview/tutorial of the Ruby language?

Hi,

Every reader's needs are different but I got up to speed quickly with
Dave Thomas and co's books.

I really like "Agile Web Development with Rails" (pdf and or print). I
was able to get started with Rails over one weekend.

For the language itself you can use the Pickaxe book, the first edition
is available on-line for free or you can buy a pdf and or printed copy
of the 2nd edition which covers Ruby 1.8.

Both books have a gentle introduction, meatier middle and reference at
the end. I like "The Depot" case study in the Rails book.

HTH,
Cheers.
 
R

Rick DeNatale

Every reader's needs are different but I got up to speed quickly with
Dave Thomas and co's books.

I really like "Agile Web Development with Rails" (pdf and or print). I
was able to get started with Rails over one weekend.

I do too, although the first ed. is getting to be a bit behind the
curve. For example it doesn't cover migrations.

Does anyone have a comment on how the 2nd de. is coming along. I
guess that that's really a question for the rails forum, but drinking
from this one fire hose is enough. <G>
 
D

Dark Ambient

2nd edition is keeping my head spinning. I mean this in a positive
way. I'm taking your question as a way to find out if the 2nd edition
is worth investing in. It is ! Get it now!
Don't delay. Seriously, it is quite full and packed with plenty of
information both for ways to do things and guidance and just old plain
referencing.

If I can ever write an app it's going to be because of AWDWR 2nd edition.

Stuart

p.s. user mileage may vary
 
D

Dark Ambient

I should add that I have no experience with the 1st edition of the
book. Certainly there is plenty in the API manual that may not be
touched on in the book but it seems like a great springboard.


Stuart
 
A

Alvin Ryder

Rick said:
I do too, although the first ed. is getting to be a bit behind the
curve. For example it doesn't cover migrations.

Does anyone have a comment on how the 2nd de. is coming along. I
guess that that's really a question for the rails forum, but drinking
from this one fire hose is enough. <G>

I agree that one fire hose is plenty enough for most of us.

Otherwise I've only had the 2nd ed for a couple of days but from what I
can tell, except for the last chapter, it appears to be nearly
completed, You can buy now and upgrade as newer versions come alone.

Cheers
 
E

Eduardo Yáñez Parareda

Does anyone have a comment on how the 2nd de. is coming along. I
guess that that's really a question for the rails forum, but drinking
from this one fire hose is enough. <G>

I have both of them, and 2nd ed although is a beta version covers many new
Rails features (migrations, REST, some of AJAX...). First ed. is really good, but
2nd is better.

Answering the original post, I think Pickaxe is the better choice. But I must say
I haven't read Ruby for Rails.
 
D

Dark Ambient

The recently released book , Ruby Cookbook while not an outright
learning book, used in adjunct can be quite helpful. There is a
chapter devoted to Rails, the first chapter covers ERB templates and
many other recipes can be very useful in a Rails app.

Stuart
 
M

Matt Todd

Hi, I'm surprised nobody's mentioned it yet, but, _Why's Poignant
Guide to Ruby (http://www.poignantguide.net/) is an excellent, free,
trippy resource for going over the fundamentals of Ruby. It's not
finished yet, unfortunately, but it covers a great deal, and in a very
entertaining way, too. _Why's writing style is unique and quite
entertaining considering it's a programming book. If you can read
through it, it's a great way to get introduced to the language. It was
my first introduction to Ruby.

I've also read through the Pick-axe, which is a great, great, great
resource. If you've got any experience with programming and know what
control structures and object orientation is (even if only a little),
then the Pick-axe is a great option.

I've not had the chance to read through Ruby For Rails, so I can't
vouche for that. I can recommend it, though, on the sample chapters
that I read (which were quite excellent) and the fact that David is an
active expert (or at least a damn-good programmer and writer) here on
the list and elsewhere.

Cheers,

M.T.
 
J

J2M

The perfect toolkit to get you going with rails and ruby is;

Agile Web Development - for your rails knowledge
Ruby for Rails - The best explanation of ruby I have seen. Just full of
those moments when you just finally get it.

I would actually -and this is my preference only- combine the 2
attempts because you will learn so much about ruby by trying to work
out how rails does things and you will learn so much about rails at
the same time.
 
R

Rick DeNatale

Hi, I'm surprised nobody's mentioned it yet, but, _Why's Poignant
Guide to Ruby (http://www.poignantguide.net/) is an excellent, free,
trippy resource for going over the fundamentals of Ruby. It's not
finished yet, unfortunately, but it covers a great deal, and in a very
entertaining way, too. _Why's writing style is unique and quite
entertaining considering it's a programming book. If you can read
through it, it's a great way to get introduced to the language. It was
my first introduction to Ruby.

I enjoy it, but...

I've got a few quibbles with some of why's terminology, which may lead
the unaware off track.

For example in the "Parts of speech chapter" which occurs fairly soon:
http://www.poignantguide.net/ruby/chapter-3.html#section2 he says:

" front_door.open

In the above, open is the method. It is the action, the verb. "

Well, open here isn't really a method, it's a name which is used to
find a particular method. It gets turned into the symbol :eek:pen, then
a search is done for a method which is associated with that symbol,
starting with the (singleton) class of the object referenced by
front_door, and proceeding up the superclass chain. So it's a verb,
but it's not really an action, 'sit' is a verb, but it produces very
different actions depending on whether it's said to a person, a dog, a
robot, or something else.

Now this might be getting into a little too much detail at this stage
of an introduction to Ruby, but the lack of a separation between a
method call, and the method itself troubles me. The Pickaxe DOES make
this distinction on the second page of the chapter which starts
discussing Ruby programming.

It might seem a minor point, but to my mind it's this separation which
is the hallmark of object-orientation as Alan Kay first defined it,
and Ruby practices it. There doesn't seem to be an official Ruby name
for the name of a requested method. In Smalltalk we call it a message
selector.

The Pickaxe borrows terminology from Smalltalk, distinguishing
messages and methods. Dave's use in the pickaxe might be considered
informal by some, but the RDoc hints at this as well.

* Object#method - "looks up the named method in obj"
* Object#method_missing - is "invoked by Ruby when obj is sent a
message it cannot handle, and args are any arguments that were passed
to it.
* Object#send - "invokes the method identified by symbol, passing
it any arguments and block."

It looks a lot like Smalltalk semantics to me. The only real
difference is that Smalltalk actually has a Message class which gets
instantiated when it's needed, such as for the argument to the
doesNotUnderstand: message which corresponds to Ruby's method_missing.
 
E

Eric Mill

That's being a little oversemantical. Going into the details of Ruby's
call chain and how method lookups work underneath the hood would totally
defeat the intent of why's book, which is to welcome new blood and
inspire curiosity as to how Ruby could possibly be as magic as why
(accurately) portrays it.

To the inquiring soul, unlearning a simple conception about methods
later is easier than learning a complex conception about methods now.
And I don't even really agree that calling a method a verb is
inaccurate. It's poetry, like the rest of his book.

-- Eric Mill
 
J

John Johnson

I've got a few quibbles with some of why's terminology, which may lead
the unaware off track.

For example in the "Parts of speech chapter" which occurs fairly soon:
http://www.poignantguide.net/ruby/chapter-3.html#section2 he says:

" front_door.open

In the above, open is the method. It is the action, the verb. "

Well, open here isn't really a method, it's a name which is used to
find a particular method. It gets turned into the symbol :eek:pen, then
a search is done for a method which is associated with that symbol,
starting with the (singleton) class of the object referenced by
front_door, and proceeding up the superclass chain. So it's a verb,
but it's not really an action, 'sit' is a verb, but it produces very
different actions depending on whether it's said to a person, a dog, a
robot, or something else.

Nothing personal, but if that paragraph were in why's guide, you wouldn't
have heard of why's guide. It is sufficient to omit some detail in
introductions. Much like saying, "When you press the accelerator, the car
goes faster." Omitting details like fuel injector timing, spark timing, O2
sensor feedback, etc. is acceptable.

Regards,
JJ
 
W

why the lucky stiff

That's being a little oversemantical. Going into the details of Ruby's
call chain and how method lookups work underneath the hood would totally
defeat the intent of why's book, which is to welcome new blood and
inspire curiosity as to how Ruby could possibly be as magic as why
(accurately) portrays it.

Actually, the book *only* aspires to be underground (and, hopefully, one day:
illegal.) Anything else is incidental. I second the de-recommending of this
book -- in the hopes that it will stay a dark, misunderstood and unknown guide.

But, yes, I will change that to read "method call" rather than "method" after
I've had an autumn or two to think about it.

_why
 
C

Chad Perrin

Sometimes I leave copies of why's book on the train, for children to find.

Do you leave it with an onion? I love to see little children cry. Or
something.
 
R

Rick DeNatale

Nothing personal, but if that paragraph were in why's guide, you wouldn't
have heard of why's guide. It is sufficient to omit some detail in
introductions. Much like saying, "When you press the accelerator, the car
goes faster." Omitting details like fuel injector timing, spark timing, O2
sensor feedback, etc. is acceptable.

I've got no quibble with the poetry, in fact I admire the offbeat
nature of the work, and I'd never suggest inserting what was intended
as explanatory criticism.

On the other hand, poetry is about careful choice of wording, and
since the book goes pretty deeply into metaprogramming by the end, a
little more careful choice of words at the beginning might be a good
thing.
 

Ask a Question

Want to reply to this thread or ask your own question?

You'll need to choose a username for the site, which only take a couple of moments. After that, you can post your question and our members will help you out.

Ask a Question

Members online

Forum statistics

Threads
474,263
Messages
2,571,061
Members
48,769
Latest member
Clifft

Latest Threads

Top