David Black's book _Ruby for Rails


#1

Hi all

Anyone of you have read the book, David Black’s book _Ruby for Rails?

I 'd like to know what you think about the book from a professional
perspective.

Your insight some might find it useful.

-Jimmy


#2

On 6/5/07, removed_email_address@domain.invalid removed_email_address@domain.invalid wrote:

Hi all

Anyone of you have read the book, David Black’s book _Ruby for Rails?

I’ve read it, recommended it, and lent out my copy on a few occasions.
It’s great.

I 'd like to know what you think about the book from a professional
perspective.

While not entirely about the book, I did interview David about it a
while
ago:

http://on-ruby.blogspot.com/2006/09/author-interview-david-black.html


#3

pat eyler wrote:

On 6/5/07, removed_email_address@domain.invalid removed_email_address@domain.invalid wrote:

Hi all

Anyone of you have read the book, David Black’s book _Ruby for Rails?

I’ve read it, recommended it, and lent out my copy on a few occasions.
It’s great.

+1

I 'd like to know what you think about the book from a professional
perspective.

I made a quick writeup a few months ago:

http://www.rubyrailways.com/the-sadly-neglected-pickaxe-killer/

Cheers,
Peter
__
http://www.rubyrailways.com :: Ruby and Web2.0 blog
http://scrubyt.org :: Ruby web scraping framework
http://rubykitchensink.ca/ :: The indexed archive of all things Ruby.


#4

unknown wrote:

I 'd like to know what you think about the book from a professional
perspective.

Your insight some might find it useful.

I’ve read through the book, and, like those above, loved it.

What I got most from it was its incredibly thorough explanation of the
concept of ‘self’ in Ruby. Moments after finishing the chapter on self I
ran to _why’s creature code and, line by line, explained exactly what it
was doing. I was so proud of myself. :slight_smile:

One of the above reviewers cited the book as a Pickaxe killer, and I
would tend to agree. While I, too, start with the Pickaxe, I could never
get passed the first hundred pages or so. I primarily used it as a
reference. R4R though was a smooth read through and through. Mr. Black’s
knowledge of how Ruby works is top-notch, and an awesome, awesome gift
for anyone serious about developing in Ruby.


#5

On 6/5/07, removed_email_address@domain.invalid removed_email_address@domain.invalid wrote:

Hi all

Anyone of you have read the book, David Black’s book _Ruby for Rails?

I 'd like to know what you think about the book from a professional
perspective.

Your insight some might find it useful.

I think it’s a great book, i would highly recommend it after reading
and understanding “Agile Development with Ruby on Rails”.

It gives you an idea of what Rails does at the Ruby level. I wouldn’t
recommend it as first book as i said before, maybe as a third
(“Agile…” and a good Ruby book first). It has some great practices
and you will be a better Ruby programmer while doing apps in RoR.

Cheers


#6

Emilio T. wrote:

Well … I think you can learn both Ruby and Rails from Ruby for
Rails
. Now “Agile” and “Pickaxe” are more or less mandatory as
referenced once you’re developing Ruby or Rails code for a living. But
if you know nothing about either, I’d recommend starting with Ruby for
Rails
.


#7

On 06.06.2007 03:24, Daniel W. wrote:

What I got most from it was its incredibly thorough explanation of the
concept of ‘self’ in Ruby. Moments after finishing the chapter on self I
ran to _why’s creature code and, line by line, explained exactly what it
was doing. I was so proud of myself. :slight_smile:

You make it sound as if there was something complex about “self”. Makes
me wonder whether I am missing something about “self”. As far as I can
see “self” is an ordinary variable with these additional properties:

  • it is automatically set to the current receiver and it cannot be
    altered by Ruby code

  • it is implicitly used for method invocations without an explicit
    receiver and for instance variable access

Did I miss anything?

Kind regards

robert


#8

On Jun 5, 2007, at 8:24 PM, Daniel W. wrote:

unknown wrote:

I 'd like to know what you think about the book from a professional
perspective.

Your insight some might find it useful.

I’ve read through the book, and, like those above, loved it.

What I got most from it was its incredibly thorough explanation
of the concept of ‘self’ in Ruby.

That’s a good point. I learned things from that explanation myself.

It is a very good book, though it will never kill the Pickaxe for me.

James Edward G. II


#9

On Jun 6, 2007, at 5:57 AM, removed_email_address@domain.invalid wrote:

Almost anything in the language can probably
be reduced to a couple of defining phrases, but just saying (for
example) that a class method is a singleton method of a class object
doesn’t actually make everyone understand or feel confident about
applying the concepts involved.

And David’s description of the singleton class is another terrific
feature of the book.

James Edward G. II


#10

Hi –

On Wed, 6 Jun 2007, Robert K. wrote:

  • it is automatically set to the current receiver and it cannot be altered
    by Ruby code

  • it is implicitly used for method invocations without an explicit receiver
    and for instance variable access

Did I miss anything?

Only the fact that in practice, grasping self is a stumbling-block for
a lot of people. In addition to just getting the concept of a
“default object”, which is not always easy, there’s the question of
where and when self changes, which can be confusing because it
sometimes overlaps with local scope but not always.

So I wanted to explain (and document and demonstrate) both self and
scope pretty thoroughly. Almost anything in the language can probably
be reduced to a couple of defining phrases, but just saying (for
example) that a class method is a singleton method of a class object
doesn’t actually make everyone understand or feel confident about
applying the concepts involved. People really do learn in different
ways :slight_smile:

David


#11

On 5-Jun-07, at 1:10 PM, removed_email_address@domain.invalid wrote:

Hi all

Anyone of you have read the book, David Black’s book _Ruby for Rails?

I 'd like to know what you think about the book from a professional
perspective.

I’m pretty enthusiastic about the book. Ruby for Rails, in my
opinion, is targeted at someone who is using Rails already and is
feeling that it is time to learn Ruby. The book uses Rails as a guide
to explaining Ruby. This is really quite unusual for general
programming language books. You normally expect to see this when a PL
is explained as an embedded language (autolisp in autocad, mel in
Maya, come to mind). Trouble is that these books usually limit
themselves to what the author thinks is important in the context
(autocad, Maya). David didn’t do that. He has managed to provide an
excellent how to program in Ruby guide within the context of Rails,
not just a how-to-use-ruby-while-working-with-rails book. I think
that it is better than that actually, David manages to use the
context of Rails to improve the presentation. This makes for a really
effective learning experience for people familiar with Rails, and
merely a really good experience for everyone else. It has the feel of
a well done tutorial.

On top of that, there are some really good explanations of
interesting aspects of Ruby in the book (e.g. the self/scope
discussion, Ruby-style domain specific languages).

It doesn’t act as a Ruby reference, you’ll need the Pickaxe for that.

Be aware: I’m quoted on the back of the book

Cheers,
Bob

Your insight some might find it useful.

-Jimmy


http://www.bestwhy.com


Bob H. – tumblelog at <http://
www.recursive.ca/so/>
Recursive Design Inc. – weblog at <http://www.recursive.ca/
hutch>
– works at http://www.recursive.ca/


#12

On 06.06.2007 12:57, removed_email_address@domain.invalid wrote:

You make it sound as if there was something complex about “self”.
Did I miss anything?

Only the fact that in practice, grasping self is a stumbling-block for
a lot of people. In addition to just getting the concept of a
“default object”, which is not always easy, there’s the question of
where and when self changes, which can be confusing because it
sometimes overlaps with local scope but not always.

This reminds me of the headaches I had when confronted with OOP the
first time. That’s quite a few years ago now and OOP has become my
second nature (or so) - that’s probably the reason why I did not find
anything strange about “self”. But true, for somebody relatively new to
OOP this might be considerably harder. I had forgotten that. But it’s
good to be reminded of this once in a while.

So I wanted to explain (and document and demonstrate) both self and
scope pretty thoroughly. Almost anything in the language can probably
be reduced to a couple of defining phrases, but just saying (for
example) that a class method is a singleton method of a class object
doesn’t actually make everyone understand or feel confident about
applying the concepts involved. People really do learn in different
ways :slight_smile:

Sure. I didn’t want to question the explanation (haven’t even read the
book as I am not doing any Rails), I was just curious whether I missed
something. Thank you for your explanation!

Kind regards

robert


#13

At 1:34 AM +0900 6/7/07, Logan C. wrote:

Seconded. I’d recommend Ruby for Rails even if you aren’t
necessarily doing Rails. It’s the best intro to ruby the
language I’ve ever read.

+1

I’d really like to see David to rework it into a Ruby-based
introductory programming text.

-r

http://www.cfcl.com/rdm Rich M.
http://www.cfcl.com/rdm/resume removed_email_address@domain.invalid
http://www.cfcl.com/rdm/weblog +1 650-873-7841

Technical editing and writing, programming, and web development


#14

On Wed, Jun 06, 2007 at 11:18:45AM +0900, M. Edward (Ed) Borasky wrote:

Well … I think you can learn both Ruby and Rails from Ruby for
Rails
. Now “Agile” and “Pickaxe” are more or less mandatory as
referenced once you’re developing Ruby or Rails code for a living. But
if you know nothing about either, I’d recommend starting with Ruby for
Rails
.
Seconded. I’d recommend Ruby for Rails even if you aren’t necessarily
doing Rails. It’s the best intro to ruby the language I’ve ever read.


#15

On Jun 6, 2007, at 12:37 PM, fREW wrote:

And David’s description of the singleton class is another terrific


-fREW

It all really depends on what you want to learn. But I’d say that you
really should be comfortable with Ruby before doing too much with
Rails. Rails makes a lot more sense if you’ve really delved into Ruby
first.

The Pickaxe is a vital Reference book. buy it, keep it handy.

Agile… is also a vital Reference book and tutorial, if you intend
to do Rails, you need to have it.

Ruby for Rails fills in a lot of blanks, and yes, the discussions in
it about self and several other topics are some of the best and most
often referred to. You’ll be glad you bought it. You could jump
straight into Ruby and Rails with only this book, but you should
always build a small library for any language and/or framework,
because one book will answer what another book will not.

If you really need to learn beginning Ruby, go for the book Beginning
Ruby: From Novice to Professional.
It won’t really get you to Professional, but it will get you to where
you have at least a basic understanding of a broad number of topics
touched by Ruby.

Also consider the Oreilly books, Ruby Cookbook, and Rails Cookbook.
The Ruby Cookbook unfortuanately doesn’t address some of the useful
topics in other language cookbooks (like the PHP book).
Luckily all but maybe 1 of the Ruby books out there are very very
good programming books.

The problem you may eventually encounter is situations where Rails
(or Camping even) are overkill for a web site, and all you need is
simpler stuff. Also, if you are planning to use Ruby technologies for
web sites, investigate hosting services very carefully. Ruby isn’t as
widely or well supported by hosting providers as is PHP. What’s more,
Rails, like some Python frameworks, is best hosted by companies that
specialize in these kinds of web apps. These kinds of web apps are
best served by having slice hosting or VPS (virtual private server)
hosting. Not the usual shared hosting. Of course, if you can afford
dedicated hosting, that works too.


#16

On 6/6/07, James Edward G. II removed_email_address@domain.invalid wrote:

James Edward G. II

I am now convinced. I am putting this on my to read list after I read
the Agile book (I have it and not the other and cannot order books
right now…)


#17

On 6/6/07, Rich M. removed_email_address@domain.invalid wrote:

At 1:34 AM +0900 6/7/07, Logan C. wrote:

Seconded. I’d recommend Ruby for Rails even if you aren’t
necessarily doing Rails. It’s the best intro to ruby the
language I’ve ever read.

+1

I’d really like to see David to rework it into a Ruby-based
introductory programming text.

I’d like to see that too, well unless I beat him to writing one

Actually I like Ruby For Rails, but I’m afraid to say that it’s gotten
pretty far behind the current state of Rails.


Rick DeNatale

My blog on Ruby
http://talklikeaduck.denhaven2.com/