Ruby is rapidly becoming the preferred programming language for many developers. With that said, let's look at some of the best tutorials, videos and books to learn Ruby and Rails.
Just starting out with Ruby or Rails? Take your pick:
Ruby Programming Language
Ruby is… A dynamic, open source programming language with a focus on simplicity and productivity. It has an elegant syntax that is natural to read and easy to write.
Getting Started with Rails
Install Rails, create an application, using databases, the principles of MVC and RESTful design – this is an essential resource for getting started with Rails and learning the best practices.
Creating a Weblog in 15 minutes with Rails 2
In 15 minutes, we go from scratch to complete weblog engine with comments, ajax, an ATOM feed, an XML and JSON API, tests, an administrative interface, and much more! We strongly advise that you sit down before starting this whirlwind tour. Your head may well be spinning at the end. Come along for the Ruby on Rails ride.
From CodeIgniter to Ruby on Rails: A Conversion
In this tutorial, you will learn the basics of Ruby and Rails through direct comparisons with your existing CodeIgniter and PHP knowledge.
Rails 2 From Scratch series
PeepCode sell very high-quality, useful screencasts covering most aspects of Rails. This 76 minute screencast teaches you the basics of Rails. If you've done PHP, ASP, Perl, or any other type of web development and want to learn Rails, this is the screencast for you.
Available in two parts, for $19 each. They are definitely worth the price.
Ruby on Rails for Designers
Take a brief look into the world of Rails with this fantastic tutorial available here at Nettuts.
Ruby on Rails is an open-source web framework that's optimized for programmer happiness and sustainable productivity. It lets you write beautiful code by favoring convention over configuration.
Learn Ruby on Rails from Scratch: Series
Ruby on Rails… by now most people have heard the hype about it. It promises more effective code, total object orientation, and true MVC architecture to say the least. As far as my own personal experience, it has been all that and more. The code is beautiful, easy to maintain, and edit. In a recent project I was working on, it took me less than 10 hours to do the application, as compared to at least double that if I was writing in PHP.
Using Ruby on Rails for Web Development on Mac OS X
This article introduces you to Ruby on Rails by building a trivial web application step by step. Consider it a ride on the express train‚Äîan overview of what Rails can do, including a look at features new to Rails 1.0. In the end you'll be better equipped to consider the advantages of powering your web application with Rails.
It's slightly dated, but the core techniques are still in use.
REST For Rails 2
Another screencast from PeepCode, available for $19. This screencast covers the basics of REST and walks through a simple application to show how REST routes work. You‚Äôll learn about the magic that goes on behind the scenes and how you can design a REST application with confidence.
Rails for PHP Developers
If you're proficient with PHP, you already have the essential skills needed to build web applications. This site will present an ongoing discussion of techniques for learning Rails and Ruby from a PHP perspective.
TextMate for Rails 2
Yet another PeepCode screencast, this is an essential if you're developing Rails applications on a Mac. If you own a copy of TextMate but wish you were more familiar with the most frequently used keyboard shortcuts, this screencast will help orient you with what's possible.
As with all PeepCode resources, this is available for $19.
Already have a good footing with Ruby and Rails? Try these:
Every week Ryan Bates will host a new Railscasts episode featuring tips and tricks with Ruby on Rails. These screencasts are short and focus on one technique so you can quickly move on to applying it to your own project. The topics target the intermediate Rails developer, but beginners and experts will get something out of it as well.
Prefer text tutorials? Check out the next item:
Railscasts (above) is the #1 resource for quickly learning new Rails tricks. If you prefer text tutorials over video, ASCIIcasts is for you!
ASCIIcasts are detailed, illustrated text versions of each Railscast, each with a link to the original video.
Rails Forum – Tutorials
A round-up of short tutorials covering a huge range of Rails techniques, from beginners advice and installation to debugging and tests.
Building a Forum From Scratch with Ruby on Rails
Today, we will be building a simple forum using Ruby on Rails, and we will be working up from the basics covering things like authentication and more advanced database techniques.
Envycasts is the screencasting side of Rails Envy, a partnership between Gregg Pollack and Jason Seifer. However, not all the screencasts you'll see here are Rails related.
You'll find several fantastic video tutorials covering a number of Ruby techniques and best-practices, most available for only $19.
Learn everything you need to know about Scaling your Rails app through 13 informative Screencasts produced by Gregg Pollack with the support of New Relic.
RSpec Series for Rails 2
This 55 minute screencast is the first of a 3-part series on RSpec. You'll learn how to install and configure RSpec. We'll walk through a simple project. Then we'll install RSpec in a Rails application and start writing examples for a simple model.
If Test::Unit doesn't make sense to you, or if you want to write better code, this is the place to start.
Getting Started with RESTful Authentication in Rails
In this article, we will use restful_authentication to add a user system to a simple Rails application. This is great for those first starting out and need step-by-step directions for using this amazing plugin. At the end of the article, visitors will be able to create an account, reset their password, login, logout, and validate email addresses.
Rails 2.1 PDF
For over a year, Ryan Daigle has kept you informed on the latest updates to the Rails trunk. In this new 80-page PDF, Ryan discusses over a dozen new features in Rails 2.
Code snippets and examples show you how to use many new features in Rails 2. A section on deprecated features suggests third-party alternatives.
Available for $19 from PeepCode.
Ruby on Rails Code Review PDF
If you're a beginning Rails developer, this is the book for you! Seventeen chapters show how applications are often written (the wrong way). Then, we show you how it should be done correctly.
It's more than just a checklist, it's a tour of well-built applications that will help you build rock-solid web applications.
Available for $19 from PeepCode.
Prefer to have a book to-hand when learning? Here's a collection of some of the best Ruby books around:
Programming Ruby – the PickAxe
Affectionately known simply as the 'PickAxe' in the Ruby community (due to the PickAxe on the cover), this is almost Ruby's de-facto official book. A must-have for any serious Rubyist!
The First Edition of the PickAxe is available for free at Ruby Central.
Why's (poignant) Guide to Ruby
Written by Ruby's very own crazy-genius, why the lucky stiff (or _why), this is a free and very unusual guide to the language. Take a read through the first few pages, and you'll see why this book is a massive success.
The Ruby Programming Language
Bestselling author David Flanagan teams up with Ruby creator Yukihiro "Matz" Matsumoto and writer/cartoonist/programmer why the lucky stiff to bring you the authoritative guide to Ruby. Covering versions 1.9 and 1.8, this book helps you learn Ruby's lexical structure, primary expressions, conditionals, syntax, classes, the data it manipulates, and more. For experienced programmers who want to look at this language in depth, this guide is invaluable.
The Ruby Way
The Ruby Way takes a "how-to" approach to Ruby programming with the bulk of the material consisting of more than 400 examples arranged by topic. Each example answers the question "How do I do this in Ruby?" Working along with the author, you are presented with the task description and a discussion of the technical constraints. This is followed by a step-by-step presentation of one good solution. Along the way, the author provides detailed commentary and explanations to aid your understanding.
This book is not recommended for beginners to Ruby, however.
Everyday Scripting with Ruby
Everyday Scripting with Ruby is divided into four parts. In the first, you'll learn the basics of the Ruby scripting language. In the second, you'll see how to create scripts in a steady, controlled way using test-driven design. The third part is about finding, understanding, and using the work of others – and about preparing your scripts for others to use. The fourth part, more advanced, is about saving even more time by using application frameworks.
Agile Web Development with Rails
This is where most Rails developers started, and the book is now in its third edition to cover the ever-changing framework.
"Rails 2, released in 2008, brings hundreds of improvements, including new support for RESTful applications, new generator options, and so on. And, as importantly, we've all learned a lot more about writing Rails applications in the last few years."
The Rails Way
Like 'The Ruby Way', this is not a book for new-comers to Rails.
"Using detailed code examples, Obie systematically covers Rails' key capabilities and subsystems. He presents advanced programming techniques, introduces open source libraries that facilitate easy Rails adoption, and offers important insights into testing and production deployment. Dive deep into the Rails codebase together, discovering why Rails behaves as it does – and how to make it behave the way you want it to."
Rails for PHP Developers
This is the perfect book for PHP developers wanting to explore Rails.
"Rails for PHP Developers kick-starts your Rails experience by guiding you through learning both Ruby and Rails from a PHP developer's perspective. Written by developers with deep experience using PHP, Ruby, and Rails, this book leverages your existing knowledge of PHP to learn Rails application development quickly and effectively."
Rails for .NET Developers
Or perhaps you're coming from a .NET background? This book has you covered!
"You're already a .NET developer; we'll help you get up and running as a Ruby on Rails developer on any operating system: Windows, Mac, or Linux. We start with a gentle introduction to the object-oriented Ruby language with examples and direct comparisons to C#, so you'll quickly feel at home writing Ruby code for the first time."
Rails for Java Developers
Or maybe you're a hard-core Java developer seeking asylum with Rails?
"Written by experienced developers who love both Java and Ruby, this book will show you, via detailed comparisons and commentary, how to translate your hard-earned Java knowledge and skills into the world of Ruby and Rails."
"This is the book for experienced Rails developers who want to go to the next level with this web development framework, with an in-depth look at techniques for dealing with databases, security, performance, web services and much more. Chapters in this book help you understand not only the tricks and techniques used within the Rails framework itself, but also how make use of ideas borrowed from other programming paradigms."
Advanced Rails Recipes
"With the help of a community of Rails chefs in the kitchen, here are 84 new ways to kick your Rails apps up a notch. Advanced Rails Recipes is a collection of practical recipes for spicing up your web application without a lot of prep and cleanup. You'll learn how the pros have solved the tough problems using the most up-to-date Rails 2 techniques so you can deliver your stunning web app quicker and easier."
The RSpec Book
"RSpec, Ruby's leading Behaviour Driven Development tool, helps you do TDD right by embracing the design and documentation aspects of TDD. It encourages readable, maintainable suites of code examples that not only test your code, they document it as well. The RSpec Book will teach you how to use RSpec, Cucumber, and other Ruby tools to develop truly agile software that gets you to market quickly and maintains its value as evolving market trends drive new requirements."
Simply Rails 2
"Simply Rails 2 is an easy-to-follow, practical and fun guide to Ruby on Rails for beginners. It covers all you need to get up and running, from installing Ruby, Rails and SQLite to building and deploying a fully featured web application."