What books to buy?

K

Kyrre Nygård

Hey all!

I aspire to become a great Ruby as well as Rails developer.
But what books should I buy?

01
<http://www.amazon.com/exec/obidos/t...72917?_encoding=UTF8&m=ATVPDKIKX0DER&v=glance>Programming
Ruby: The Pragmatic Programmers' Guide, Second Edition
02
<http://www.amazon.com/exec/obidos/t...72917?_encoding=UTF8&m=ATVPDKIKX0DER&v=glance>Agile
Web Development with Rails: A Pragmatic Guide (Pragmatic Programmers)
03
<http://www.amazon.com/exec/obidos/t...72917?_encoding=UTF8&m=ATVPDKIKX0DER&v=glance>Ruby
on Rails: Up and Running
04
<http://www.amazon.com/exec/obidos/t...72917?_encoding=UTF8&m=ATVPDKIKX0DER&v=glance>Rails
Cookbook (Cookbooks (O'Reilly))
05
<http://www.amazon.com/exec/obidos/t...72917?_encoding=UTF8&m=ATVPDKIKX0DER&v=glance>Ruby
Cookbook (Cookbooks (O'Reilly))

Is this a good mixture? For instance, with 02, do I really
need 03? Or with 03, do I really need 02? Please give me your input
guys. I don't have too much money to spend.

Thanks,
Kyrre
 
T

Timothy Hunter

Kyrre said:
Hey all!

I aspire to become a great Ruby as well as Rails developer.
But what books should I buy?
Start with David Black's _Ruby for Rails_.
 
M

M. Edward (Ed) Borasky

Kyrre said:
=20
Hey all!
=20
I aspire to become a great Ruby as well as Rails developer. But=
what books should I buy?
=20
01
<http://www.amazon.com/exec/obidos/tg/detail/-/0974514055/ref=3Dord_car= t_shr/102-8499224-6872917?%5Fencoding=3DUTF8&m=3DATVPDKIKX0DER&v=3Dglance=
Programming
Ruby: The Pragmatic Programmers' Guide, Second Edition
02
<http://www.amazon.com/exec/obidos/tg/detail/-/097669400X/ref=3Dord_car= t_shr/102-8499224-6872917?%5Fencoding=3DUTF8&m=3DATVPDKIKX0DER&v=3Dglance=
Agile
Web Development with Rails: A Pragmatic Guide (Pragmatic Programmers)
03
<http://www.amazon.com/exec/obidos/tg/detail/-/0596101325/ref=3Dord_car= t_shr/102-8499224-6872917?%5Fencoding=3DUTF8&m=3DATVPDKIKX0DER&v=3Dglance=
Ruby
on Rails: Up and Running
04
<http://www.amazon.com/exec/obidos/tg/detail/-/0596527314/ref=3Dord_car= t_shr/102-8499224-6872917?%5Fencoding=3DUTF8&m=3DATVPDKIKX0DER&v=3Dglance=
Rails
Cookbook (Cookbooks (O'Reilly))
05
<http://www.amazon.com/exec/obidos/tg/detail/-/0596523696/ref=3Dord_car= t_shr/102-8499224-6872917?%5Fencoding=3DUTF8&m=3DATVPDKIKX0DER&v=3Dglance=
Ruby
Cookbook (Cookbooks (O'Reilly))
=20
Is this a good mixture? For instance, with 02, do I really need=
03? Or with 03, do I really need 02? Please give me your input guys. I
don't have too much money to spend.
=20
Thanks,
Kyrre
=20
=20
=20
I would buy the Second Edition of Agile Web Development With Rails
directly from Pragmatic (in beta), and download the required "Edge
Rails". For background, I would buy Programming Ruby in PDF from
Pragmatic, since the paper versions aren't updated as frequently. And I
would buy David Black's "Ruby for Rails" from Manning, which isn't
listed in your selections. I believe it's available in both PDF and paper=
=2E

Well ... you said you aspire to becoming a *great* Ruby/Rails developer.
:) If that's too much for you, just get David Black's book and play
around with the tutorials.
 
J

James Britt

Kyrre said:
Hey all!

I aspire to become a great Ruby as well as Rails developer. But
what books should I buy?

Go get David Black's book, Ruby for Rails, and then use Google for free
Ruby tutorials and guides and API docs. And ask a lot of questions here.

Spend your remaining money on books about software development and
software engineering, not just Ruby stuff.
 
M

M. Edward (Ed) Borasky

James said:
=20
Go get David Black's book, Ruby for Rails, and then use Google for free=
Ruby tutorials and guides and API docs. And ask a lot of questions her= e.
=20
Spend your remaining money on books about software development and
software engineering, not just Ruby stuff.
=20
=20
You mean there aren't any Ruby-specific software engineering books? :)

But seriously, for someone on a low budget, start with David Black's
book, then start accumulating PDFs from Pragmatic on an "as-needed"
basis. All the good software engineering/agile practices are
well-represented in the Pragmatic bookshelf.

By the way, I never did see any info on the original poster's experience
level or background. I assumed from the post that he was an experienced
programmer who wanted to branch into Ruby and Rails, given his initial
selection.
 
J

J2M

Get Agile Web Development by Dave Thomas & Ruby for Rails by David
Black. I would also get the pdf of Programming Ruby by Dave Thomas as
it is a great reference.

Take the time to get out of rails and do some straight ruby coding.
 
K

Kyrre Nygård

Thank you all for such wonderful advice!

My background is basically just simple shell scripting.

I wish to avoid PDF because I don't want to hurt my eyes too much.

So anyway, how come nobody mentioned O'Reilly?
I thought they were good at it!

All the best,
Kyrre
 
K

Kyrre Nygård

Spend your remaining money on books about software development and
software engineering, not just Ruby stuff.


--
James Britt

"A principle or axiom is of no value without the rules for applying it."
- Len Bullard

Hello James!

Yes I would be really interested in that.
Any suggestions?

I see one here that looks good:

Ship it! A Practical Guide to Successful Software Projects

How about that?

Thanks,
Kyrre
 
H

Hal Fulton

Kyrre said:
I see one here that looks good:

Ship it! A Practical Guide to Successful Software Projects

I've looked at that, it seemed fairly good to me.

I also recommend _Refactoring_ and _Design Patterns_ and
_The Pragmatic Programmer_.

And if you want to look "under the hood" at all, you should
read _Structure and Interpretation of Computer Programs_.

There's also a second edition of _The Ruby Way_ coming out
in a week or two. Some people like it.


Hal
 
D

David Vallner

--------------enigAA256D987D4E5019C07C24C5
Content-Type: text/plain; charset=ISO-8859-1
Content-Transfer-Encoding: quoted-printable

Hal said:
I also recommend _Refactoring_ and _Design Patterns_ and
_The Pragmatic Programmer_.
=20

Along those lines, avoid "Head First", a little too detractingly silly
for me. And "Code Complete" could be a possible alternative / complement
to The Pragmatic Programmer. (Warning, C++ and its -isms inside. Very
down-to-earth and universally applicable book otherwise, especially for
making "real-world" software.)

For learning Ruby itself, I went fine with the free online Pickaxe and
then reading the 1.8 release changelog - more than enough if you've
learned enough programming languages already to know they're all the
same at a level anyway ;P

However, I'd get Pickaxe 2nd ed for the cleaned-up printable standard
lib reference.

David Vallner


--------------enigAA256D987D4E5019C07C24C5
Content-Type: application/pgp-signature; name="signature.asc"
Content-Description: OpenPGP digital signature
Content-Disposition: attachment; filename="signature.asc"

-----BEGIN PGP SIGNATURE-----
Version: GnuPG v1.4.5 (MingW32)

iD8DBQFFMlvMy6MhrS8astoRAh2vAJ92SFJ797cb4tPP4MCirowOiy2y0ACeIdN6
dH9YE2GS9i7d4qw1mzI2L8M=
=U3+V
-----END PGP SIGNATURE-----

--------------enigAA256D987D4E5019C07C24C5--
 
R

Rich Morin

At said:
So anyway, how come nobody mentioned O'Reilly?
I thought they were good at it!

Although I'm sure that O'Reilly has some books in the works,
their only Ruby/Rails book (that I know of) is

Ruby in a Nutshell: A Desktop Quick Reference
Yukihiro Matsumoto, 2002

Although it is certainly authoritative :)-), it is not really
appropriate as an introductory text.


Here are some books I'd like to see:

Algorithms in Ruby
Robert Sedgewick, ???

This would show how to implement assorted algorithms,
using Ruby's peculiar control structures, etc.

Higher Order Ruby
Mark-Jason Dominus, ???

This would take MJD's notions from Perl, where they
are hard to implement, to Ruby, where they aren't.

Programming in Ruby
David Black

This would be an "expanded subset" of "Ruby on Rails".
It would teach programming, using Ruby as the language.

-r
--
http://www.cfcl.com/rdm Rich Morin
http://www.cfcl.com/rdm/resume (e-mail address removed)
http://www.cfcl.com/rdm/weblog +1 650-873-7841

Technical editing and writing, programming, and web development
 
P

Paul Lynch

I'll +1 on the suggestions to go for Ruby for Rails, Agile Web =20
Development with Rails 2nd Ed, and Programming Ruby 2nd Ed. They all =20=

fill different niches, and I'm a book person.


So anyway, how come nobody mentioned O'Reilly?
I thought they were good at it!

The Pragmatic books have some sort of link in with O'Reilly, so =20
O'Reilly get credit by default. Having said that, O'Reilly have slid =20=

down a long way from the near perfection of their early books, pre-=20
perfect binding. Now they're just good, but publish the odd lemon.

There's also a second edition of _The Ruby Way_ coming out
in a week or two. Some people like it.

It's on my wish list, Hal.

Along those lines, avoid "Head First", a little too detractingly silly
for me. And "Code Complete" could be a possible alternative / =20
complement
to The Pragmatic Programmer. (Warning, C++ and its -isms inside. Very
down-to-earth and universally applicable book otherwise, especially =20=
for
making "real-world" software.)

I feel just as uncomfortable with the Head First books - although =20
some people seem to find them useful, and I always recommend students =20=

to review them. Too much ADD teen talk for me.

Refactoring is important to read and understand. 'Design Patterns', =20
however, have always felt to me like restating the obvious, and far =20
too tied in to C++ to be of much use outside; there is a feeling =20
that, in an ideal language, every case in Design Patterns would be a =20
trivial part of the language. Ruby makes a good example for that =20
argument.

I am also uncomfortable with Code Complete, although I find it hard =20
to express why - and it could just be the Microsoft association. I =20
view The Pragmatic Programmer as the junior introduction to The =20
Practice of Programming; pick one or both, according to your level.

Sticking with software engineering, you need some background on =20
version control (Subversion), possibly the Pragmatic book, and read =20
up on Test Driven Development; possibly the Pragmatic book as well, =20
although they don't do one specific to Ruby.

Paul=
 
P

Paul Lynch

Here are some books I'd like to see:

Algorithms in Ruby
Robert Sedgewick, ???

This would show how to implement assorted algorithms,
using Ruby's peculiar control structures, etc.

Higher Order Ruby
Mark-Jason Dominus, ???

This would take MJD's notions from Perl, where they
are hard to implement, to Ruby, where they aren't.

Programming in Ruby
David Black

This would be an "expanded subset" of "Ruby on Rails".
It would teach programming, using Ruby as the language.

I like those.

Further to which, I'd really like to see a rewrite of Chris Pine's
book. I didn't feel that it did a good enough job of introducing new
programmers; although there was obviously a lot of thought put into
the ordering of concepts, some aspects could have been improved. In
particular, I left that it needed a lot more exercises and solutions
for the student to follow.

Paul
 
D

David Vallner

--------------enigEC709D1DF60DD67CFBDD093A
Content-Type: text/plain; charset=ISO-8859-1
Content-Transfer-Encoding: quoted-printable
and read up on Test
Driven Development; possibly the Pragmatic book as well, although they
don't do one specific to Ruby.
=20

Unit testing isn't strictly equal to TDD, mind you. Former is a Good
Thing To Do more or less always (with no specific constraints on when to
write tests, and what to test how - the point is to get you a safety net
against stuff going up the proverbial creek), the latter an agile
development flavour, usual disclaimers about applicability apply. In the
land of TDD, fowlerettes lurk - watch out for the particularly deranged
ones. (Believing lessay mocking a RDBMS instead of using a testing
server is a good idea is a telltale sign of brain damage.)

David Vallner


--------------enigEC709D1DF60DD67CFBDD093A
Content-Type: application/pgp-signature; name="signature.asc"
Content-Description: OpenPGP digital signature
Content-Disposition: attachment; filename="signature.asc"

-----BEGIN PGP SIGNATURE-----
Version: GnuPG v1.4.5 (MingW32)

iD8DBQFFMncgy6MhrS8astoRAjjyAJ4hvxADYx3R+o1/2/OYvdGlBRFYfwCff3EJ
vZbHmB6P/GBY5ua2JD24NFE=
=x10P
-----END PGP SIGNATURE-----

--------------enigEC709D1DF60DD67CFBDD093A--
 
M

M. Edward (Ed) Borasky

Hal said:
And if you want to look "under the hood" at all, you should
read _Structure and Interpretation of Computer Programs_.

Ah, now *there's* a challenge for the authors amongst us -- translate
this book from Scheme to Ruby!! Any takers??
 
D

David Vallner

--------------enig71E725BE6BA61E6FBCC9BCC1
Content-Type: text/plain; charset=ISO-8859-1
Content-Transfer-Encoding: quoted-printable

James said:
Good to see such a well-argued, logical and rational argument for not u= sing
mocks in tests.

I'll have a pint of irony to go with that shot of sarcasm.

There's a time and place for mocks. Substituting resources / environment
that's not under your control during production / ever (the network,
user input) with mocks is indeed fine and useful, I even my life-saver
success stories with that. Substituting an essential runtime component
that is under your control at development-time, and operates predictably
or controllably, like a RDBMS, or a webserver to avoid their influence
on the test process is patent nonsense if the test is to provide
feedback on actual behaviour of the components.

David Vallner


--------------enig71E725BE6BA61E6FBCC9BCC1
Content-Type: application/pgp-signature; name="signature.asc"
Content-Description: OpenPGP digital signature
Content-Disposition: attachment; filename="signature.asc"

-----BEGIN PGP SIGNATURE-----
Version: GnuPG v1.4.5 (MingW32)

iD8DBQFFMqCPy6MhrS8astoRAua9AJ0SlEFpUjWlwIY5zbg+RKvl9u9biwCfbuh4
u9ybNQ/ic2GgL377YdcEakk=
=NMhD
-----END PGP SIGNATURE-----

--------------enig71E725BE6BA61E6FBCC9BCC1--
 
R

Rimantas Liubertas

Along those lines, avoid "Head First", a little too detractingly silly
for me.
<...>

That's true... if you want a reference book, or if you prefer boring,"serious"
and "professional" style (or if you are looking for some cure for insomnia).
On the other hand, if you are looking for a book which would help to learn and
remember: DO consider "Head First". These are written by people who know
great deal about how the brain works and teaching/learning.
Kathy Sierra's blog at http://headrush.typepad.com/ is worth reading too..

As for Ruby/RubyonRails, I'd say "Agile Web Development with Ruby on Rails"
and "Programming Ruby" both are 'must-have' and "Ruby for Rails" is very
welcome addition to these.


Regards,
Rimantas
 
P

Paul Lynch

<...>

That's true... if you want a reference book, or if you prefer
boring,"serious"
and "professional" style (or if you are looking for some cure for
insomnia).
On the other hand, if you are looking for a book which would help
to learn and
remember: DO consider "Head First". These are written by people who
know
great deal about how the brain works and teaching/learning.
Kathy Sierra's blog at http://headrush.typepad.com/ is worth
reading too..

Head First has some aspects of value, but also some serious
annoyances for anyone with an attention span better than that of a
goldfish.

One the plus side are: multiple restatements in different formats
(pictorial, descriptive, and use of analogies), use of exercises of
different lengths, and probably a lot more that I passed over.

But on the negative side are the use of juvenile speech,
anthropomorphising of concepts (interviews with design patterns, for
example), silly pictures, etc. Humour has value in teaching, but it
has to be genuinely funny. Using the vocabulary of your audience
also helps - but it certainly isn't my vocabulary being deployed. If
you are a teen, then it might hit the mark; but anyone with a college
degree, or in a professional position, should find it annoying - like
at least two of us on this list do. The Head First series has its
place in teaching, but it would be more applicable if the language
was toned down a bit, and the books were just that bit shorter (please).

Paul
 
R

Rimantas Liubertas

But on the negative side are the use of juvenile speech,
anthropomorphising of concepts (interviews with design patterns, for
example), silly pictures, etc.
<...>

There is a sound reason for this:

http://headrush.typepad.com/creating_passionate_users/2005/01/your_users_brai.html
http://headrush.typepad.com/creating_passionate_users/2005/10/words_pictures_.html

"Head First" books make little sense if you are already an expert in
the field but when
you try to learn something new the age, professional status and
college degree just
doesn't matter - we all have legacy brains.

However, this is off-topic already, so I'll stop here :)

Regards,
Rimantas
 

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
473,755
Messages
2,569,536
Members
45,011
Latest member
AjaUqq1950

Latest Threads

Top