Required Ruby Textbook
The main text for this course is Programming Ruby: The Pragmatic Programmers' Guide, Second Edition, also known as "The Pickaxe Book." This is the definitive guide to Ruby and is also an excellent language reference. You will need this book immediately so get it in advance of the first class meeting. Alternatively get the more up-to-date third edition also covering Ruby 1.9, but it's more expensive. The first edition of the book, which only covers Ruby 1.6 is available for free online. While this is a useful resource, it does not have page numbers and thus you may have difficulty finding the reading assignments. Furthermore, some of the information it contains is seriously out of date and some of the chapters in the later editions are missing entirely. If you choose to use this instead of the actual text, please be aware of these facts as you will still be responsible for the material in the second edition.
Required Rails Textbook
This book will not be relevant during the first half of the class, but it will be indispensable during the Rails portion of the class: Agile Web Development with Rails, Third Edition. It's by the same author as our Ruby text and makes a nice companion to it, especially since Rails is not covered at all in our Ruby text. Previously I didn't require you to buy this book but it is very good and we can't really do without it. One note on Rails versions: Rails is a bit of a moving target due to its popularity; Rails is constantly being updated with new features and new versions. We will use Rails 2.2.2 so make sure you get the THIRD edition of this book (also available for purchase as a pdf). Do not get the 4th edition which covers Rails 3 as it will not help you in this class.