RubyGreenBlue Bookshelf

Some of the books on my "favourites" shelf:


Ruby Cookbook (The Jackal)

Ruby_cookbook

My favourite Ruby book. The "Jackal" as I like to call it.

It's a great reference for all kinds of real-world problems. There are chapters on web development with Rails, automating tasks with rake, web services and chapters on some more advanced topics like metaprogramming, multithreading and extending ruby. The book is full of well laid-out code examples.

Almost 900 pages of fun for serious rubyists.


Programming Ruby (The PickAxe)

Programming_ruby

A really solid book for beginning with Ruby or for a reference. My copy of the PickAxe is well thumbed as it got a lot of use when I was just starting Ruby.

I think a good place to start for a beginner is the chapter called "The Ruby Language". It gives a good overview of the whole ruby language thing and I find having an overview, or outline, of what you are learning is a big help while doing the actual learning.


Rails Recipies

Rails_recipes

Full of great real-world solutions to real-world problems. A great source of ideas for the sorts of things you can do with Rails.


Agile Web Development with Rails

Agile_web_development_with_rails

A great Rails primer. You can read the book and actually *do* the examples while you're doing it and at the end, you have a working application.


Agile Project Management Using Scrum

Agile_project_management_with_scrum

Full of case studies to point out how Scrum can help in all kinds of projects. The first section of the book describes the mechanics of Scrum. I found it a good place to start in learning and implementing scrum, and I continually find it a great reference.


Practices of an Agile Developer

Practices_of_an_agile_developer

This is a book I like to pick up from time to time and re-read a chapter or two. It's not only a great source of information on being an agile developer, but it also offers inspiration.


Ship It!

Ship_it

This is an excellent guide to delivering whole projects. Lots of common sense advice on how to get a project from start to production and keeping it agile along the way.


Mythical Man Month

Mythical_man_month

I think this is a book every developer should read. It was written some 20 years ago but it's concepts remain current. The 20th anniversary edition contains some extra chapters revisiting some of the topics in the light of the current state of the industry.

A marvellous insight into the software development process and it's many pitfalls. It will teach you the difference between coding something and developing a product

Key things you will get out of this book:

  1. A program is not a product nor system
  2. Adding programmers to fix a delay only makes it take longer
  3. Plan to throw one away, you will anyway.
  4. Second system affect: overdoing new feature list to overcome weakness in first system.

and you will learn about Tar Pits and Silver Bullets.


Ruby for Rails

Ruby_for_rails

I suspect a lot of people get into Rails because it's cool, and it is. But I think it's important for rails developers to understand the ruby language. After all, what makes Rails so nice is the ruby language itself.

Ruby for Rails will give the Rails programmer a better understanding of the underlying ruby language and therefore make him/her a better Rails programmer.