The Ruby Programming Language - what are your thoughts?

The new one by Flanagan and Matsumoto? I have it. Along with a few others
including two editions of the "pickaxe" book. It's already the one that
stays on my desk rather than the shelf.

I'm still fairly new to Ruby and there were many times the others would
leave me scratching my head about something. TRPL is, in my experience,
much more consistently clear. Makes for a good reference. Especially for
those of us who know how to program but Ruby is still a new experience.

(A *fun* experience but sometimes I confess to needing a map <G>)

···

On Mon, 03 Mar 2008 22:04:55 -0500, Esmail wrote:

hi,

does anyone have a copy of this book, and if so what do you think of it?

how does it compare to other ruby books?

While your mileage may vary (of course), it's definitely become my main
"quick lookup" book.

···

On Tue, 04 Mar 2008 18:02:15 -0500, Esmail wrote:

coigner wrote:

On Mon, 03 Mar 2008 22:04:55 -0500, Esmail wrote:

hi,

does anyone have a copy of this book, and if so what do you think of
it?

how does it compare to other ruby books?

The new one by Flanagan and Matsumoto?

Yup, that's the one!

's already the one that
stays on my desk rather than the shelf.

that's a good sign!

I'm still fairly new to Ruby and there were many times the others would
leave me scratching my head about something. TRPL is, in my experience,
much more consistently clear. Makes for a good reference. Especially
for those of us who know how to program but Ruby is still a new
experience.

that's me for sure, comfortable with programming, but switching between
languages often presents a challenge, maybe this can turn into a
quick-lookup-reference when I need to look up something or orient
myself.

Esmail wrote:

coigner wrote:

The new one by Flanagan and Matsumoto?

Yup, that's the one!
Anyone else want to chime in on the book if you have had a chance to look
at it?

I haven't finished reading it yet, but it's every bit the book
I wanted a few years ago when I had the misfortune to buy the
Pragmatic "Programming Ruby" instead. It's properly structured,
deals thoroughly with each subject before moving to the next,
and doesn't have any pointless and incomprehensible tutorial
content.

All up, an admirable reference. Just buy it.

Clifford Heath.

I think it's great that we now have books that suit different people. I'd encourage everyone who wants to get a Ruby book to check out David's book (and hopefully the PickAxe too). My hope is that the variety of books will simply encourage more people to start using Ruby.

Cheers

Dave

···

On Mar 9, 2008, at 7:24 AM, Clifford Heath wrote:

I haven't finished reading it yet, but it's every bit the book
I wanted a few years ago when I had the misfortune to buy the
Pragmatic "Programming Ruby" instead. It's properly structured,
deals thoroughly with each subject before moving to the next,
and doesn't have any pointless and incomprehensible tutorial
content.

I definitely like both books, but being the stubborn person that I am,
I do most of my learning of Ruby from irb, ruby-doc.org, and
ruby-talk. I think it's a great way to learn the language _if_ you
are not on a tight schedule. You need the references, of course, for
subtle/hidden things.

Todd

···

On Sun, Mar 9, 2008 at 10:56 AM, Dave Thomas <dave@pragprog.com> wrote:

On Mar 9, 2008, at 7:24 AM, Clifford Heath wrote:

> I haven't finished reading it yet, but it's every bit the book
> I wanted a few years ago when I had the misfortune to buy the
> Pragmatic "Programming Ruby" instead. It's properly structured,
> deals thoroughly with each subject before moving to the next,
> and doesn't have any pointless and incomprehensible tutorial
> content.

I think it's great that we now have books that suit different people.
I'd encourage everyone who wants to get a Ruby book to check out
David's book (and hopefully the PickAxe too). My hope is that the
variety of books will simply encourage more people to start using Ruby.

Dave Thomas wrote:

I think it's great that we now have books that suit different people.

I was more forceful than I needed to be. The problem I have with the
Pickaxe is not that any part of it is either useless or badly written,
but that it tries to be five different kinds of book in one, and just
ends up as a mess. You never know where to look to find what you want.

There's something for everyone in there, but I'd prefer three books;
a language reference (The RPL), a good API reference, and a tutorial
for those that want one (not me). The reference section of the original
Pickaxe was great, and I still use the free HTML version (with the one
page index that covers most of the core libraries; much easier to use
than ruby-doc) but there are way too many pages devoted to niche
libraries in the latest Pickaxe.

I think there's real scope for a good API reference book, preferably
in two volumes; core classes (String up to Net::slight_smile: and others (RexML,
etc). Just look at the class list of ruby-doc.org and select 30 classes
as core, leave the rest in the 2nd volume, or at least in "section 2"
of the single volume. Just as long as you don't have 1200 classes all
lumped together as in <http://ruby-doc.org/core-1.9/fr_class_index.html&gt;\.

Back when it first came out, there was only the one book, and not
enough market to support four more. I'm glad it has had the scope it
does - for me, and I suspect for a lot of long-time Rubyists, it was a
better holistic bootstrap into the world of Ruby coding than any
single-purpose tutorial, reference, or guide.

···

On Sun, Mar 9, 2008 at 8:46 PM, Clifford Heath <no@spam.please.net> wrote:

I was more forceful than I needed to be. The problem I have with the
Pickaxe is not that any part of it is either useless or badly written,
but that it tries to be five different kinds of book in one, and just
ends up as a mess. You never know where to look to find what you want.

--
Avdi

This request confuses me. The Net::* libraries are part of the standard library, no Ruby's core.

James Edward Gray II

···

On Mar 9, 2008, at 7:46 PM, Clifford Heath wrote:

I think there's real scope for a good API reference book, preferably
in two volumes; core classes (String up to Net::slight_smile: and others (RexML,
etc).

Anyone still struggling with RDoc or perusing dead trees for API
references (shudders!) really owes it to him/herself to bookmark
http://gotapi.com

···

On Sun, Mar 9, 2008 at 6:46 PM, Clifford Heath <no@spam.please.net> wrote:

Just as long as you don't have 1200 classes all
lumped together as in <http://ruby-doc.org/core-1.9/fr_class_index.html&gt;\.

--
Alexey Verkhovsky
CruiseControl.rb [http://cruisecontrolrb.thoughtworks.com]
RubyWorks [http://rubyworks.thoughtworks.com]

James Gray wrote:

···

On Mar 9, 2008, at 7:46 PM, Clifford Heath wrote:

I think there's real scope for a good API reference book, preferably
in two volumes; core classes (String up to Net::slight_smile: and others (RexML,

This request confuses me. The Net::* libraries are part of the standard library, no Ruby's core.

I don't think that folk wanting a reference care whether something's
defined as core or standard; what they want is a reference where the
stuff you look up often isn't completely drowned in stuff you don't.
I know that differs by the individual, but a useful subset isn't hard
to choose. Just look at ruby-doc.org if you don't see the problem.

Alexey Verkhovsky wrote:

···

On Sun, Mar 9, 2008 at 6:46 PM, Clifford Heath <no@spam.please.net> wrote:
  

Just as long as you don't have 1200 classes all
lumped together as in <http://ruby-doc.org/core-1.9/fr_class_index.html&gt;\.
    
Anyone still struggling with RDoc or perusing dead trees for API
references (shudders!) really owes it to him/herself to bookmark
http://gotapi.com

Very nice resource - thank you!

t.

--

~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
Tom Cloyd, MS MA, LMHC
Private practice Psychotherapist
Bellingham, Washington, U.S.A: (360) 920-1226
<< tc@tomcloyd.com >> (email)
<< TomCloyd.com >> (website & psychotherapy weblog) << sleightmind.wordpress.com >> (mental health issues weblog)
<< directpathdesign.com >> (web site design & consultation)
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~

Clifford Heath wrote:

James Gray wrote:

I think there's real scope for a good API reference book, preferably
in two volumes; core classes (String up to Net::slight_smile: and others (RexML,

This request confuses me. The Net::* libraries are part of the standard library, no Ruby's core.

I don't think that folk wanting a reference care whether something's
defined as core or standard; what they want is a reference where the
stuff you look up often isn't completely drowned in stuff you don't.
I know that differs by the individual, but a useful subset isn't hard
to choose. Just look at ruby-doc.org if you don't see the problem.

This is absolutely true, for me - an amateur trying to learn ruby in stolen moments. I'm continually looking up stuff in wrong place. Core? Standard? Huh? I have yet to really sort that out. Don't have the time. I love the easy lookup available in Arachno Ruby's IDE, but now that I'm in Linux, I don't yet have a substitute. This lookup stuff is definitely NOT yet "principal of least surprise", not for dolts like me, anyway. Perhaps in my next life...

t.

···

On Mar 9, 2008, at 7:46 PM, Clifford Heath wrote:

--

~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
Tom Cloyd, MS MA, LMHC
Private practice Psychotherapist
Bellingham, Washington, U.S.A: (360) 920-1226
<< tc@tomcloyd.com >> (email)
<< TomCloyd.com >> (website & psychotherapy weblog) << sleightmind.wordpress.com >> (mental health issues weblog)
<< directpathdesign.com >> (web site design & consultation)
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~

If it doesn't need a require, it's core. If it does need a require but the library comes with Ruby, it's a standard library.

Hope that helps.

James Edward Gray II

···

On Mar 11, 2008, at 3:11 AM, Tom Cloyd wrote:

Core? Standard? Huh? I have yet to really sort that out. Don't have the time.

James Gray wrote:

If it doesn't need a require, it's core. If it does need a require but the library comes with Ruby, it's a standard library.
Hope that helps.

It isn't the point.

The point is that resources like ri, qri, search everything, not just core,
so there's no effective way to browse the core APIs looking for what you
need.

Why does <http://ruby-doc.org/core/&gt; contains all the standard libraries
as well as core? Surely this is plain wrong?

Clifford Heath.

James Gray wrote:

···

On Mar 11, 2008, at 3:11 AM, Tom Cloyd wrote:

Core? Standard? Huh? I have yet to really sort that out. Don't have the time.

If it doesn't need a require, it's core. If it does need a require but the library comes with Ruby, it's a standard library.

Hope that helps.

James Edward Gray II

Oh, now that's helpful. Also explains why sometime require is needed, and sometimes not. Ah, the painfulness a beginner's ignorance....

t.

--

~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
Tom Cloyd, MS MA, LMHC
Private practice Psychotherapist
Bellingham, Washington, U.S.A: (360) 920-1226
<< tc@tomcloyd.com >> (email)
<< TomCloyd.com >> (website & psychotherapy weblog) << sleightmind.wordpress.com >> (mental health issues weblog)
<< directpathdesign.com >> (web site design & consultation)
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~

What standard libraries did you find at ruby-doc.org/core? From what
I've seen, they are located at /stdlib.

···

On Wed, Mar 12, 2008 at 4:55 AM, Clifford Heath <no@spam.please.net> wrote:

Why does <http://ruby-doc.org/core/&gt; contains all the standard libraries
as well as core? Surely this is plain wrong?

--
Andrei Maxim
http://andreimaxim.ro

Andrei Maxim wrote:

Why does <http://ruby-doc.org/core/&gt; contains all the standard libraries
as well as core? Surely this is plain wrong?

What standard libraries did you find at ruby-doc.org/core? From what
I've seen, they are located at /stdlib.

http://ruby-doc.org/core/fr_class_index.html has basically everything:

CSV CGI DOT DRb Generator GetoptLong IRB IXMLDOM* Logger Net OpenURI
OptionParser RDoc REXML RI RSS Resolv Rinda SM SOAP Shell Test::Unit
WEBrick WSDL XSD YAML Zlib

All of these have dozens or hundreds of classes each, and they
almost completely obscure the core classes. I omitted most of
the remaining non-core classes from the list above, just picked
the highlights.

On the other hand, the old 1.6 reference to the core classes here:
<Programming Ruby: The Pragmatic Programmer's Guide;
is great - we should have one for 1.8 and one for 1.9 as well.

Clifford Heath.

···

On Wed, Mar 12, 2008 at 4:55 AM, Clifford Heath <no@spam.please.net> wrote:

The 2nd and 3rd editions of Programming Ruby do have those.

Of course, the 2nd and 3rd editions aren't free.

···

On Wed, Mar 12, 2008 at 5:20 AM, Clifford Heath <no@spam.please.net> wrote:

On the other hand, the old 1.6 reference to the core classes here:
<Programming Ruby: The Pragmatic Programmer's Guide;
is great - we should have one for 1.8 and one for 1.9 as well.

Christopher Dicely wrote:

···

On Wed, Mar 12, 2008 at 5:20 AM, Clifford Heath <no@spam.please.net> wrote:

On the other hand, the old 1.6 reference to the core classes here:
<Programming Ruby: The Pragmatic Programmer's Guide;
is great - we should have one for 1.8 and one for 1.9 as well.

If someone wants to assemble these for 1.8 and 1.9 I will gladly put them on ruby-doc.org.

--
James Britt

"I suspect IDEs are like Bail Bondsmen. It may be a good sign if you
don't know what they're for."
  - Paul Graham

But I did contribute all the descriptions of the built-in methods and classes back into the source code, and then wrote RDoc so they could be extracted into HTML and published (for example on ruby-doc). So, really, they are free.

If you wanted just the builtins, it would be trivial to run rdoc on just the .c files in the ruby source directory itself.

Dave

···

On Mar 12, 2008, at 9:27 PM, Christopher Dicely wrote:

The 2nd and 3rd editions of Programming Ruby do have those.

Of course, the 2nd and 3rd editions aren't free.