Rails 3.0 Beta: 36 Links and Resources To Get You Going
Whenever something's a really "big deal" in the Ruby world, we cover it - even if it makes more sense on Rails Inside (which is now switching to a user contributions model). Given that, we've gone through all the latest and greatest Rails 3.0 related links and put together a ton of them to help you on your way with the recently released Rails 3.0 beta. Enjoy!
Getting Started / Must Reads
Rails 3.0 Release Notes - An epic amount of documentation from the Rails Guides project. If you're already pretty familiar with Rails 2.x and just want to know what's new and updated, this is the place to look first. If you read this whole page, you'll get a good feel for what you need to pick up next.
The Path to Rails 3: Greenfielding New Apps With The Rails 3 Beta - Jeremy McAnally has written an awesome practical guide to setting up Rails 3 beta and creating a new app from scratch. Of note is his coverage of the new app generator and configuration system. He gets you as far as finishing off some scaffolding and even adding some tests.
Rails 3 Introduction - A two week old post by Jeremy McAnally that provides a high level introduction to Rails 3. What is it, why is it? And so forth. He demonstrates how Rails has moved from a monolithic, packaged "deal" to an ecosystem of more loosely coupled libraries that work together.
How To Install Rails 3.0 Beta - Our own guide to getting Rails 3.0 up and running. Sure, it's only two lines, but we beat the official Rails blog by 4 minutes on this *g*
RailsPlugins.org - A new Rails plugins directory.
Upgrading & Preparing Your Existing Apps
Geoffrey Grosenbach's Rails 3 Upgrade Screencast - Geoffrey Grosenbach (of PeepCode fame) has put together a free screencast demonstrating how to migrate a Rails 2.x app to Rails 3.0. A very high quality production.
rails_upgrade Plugin - An official plugin that runs checks on your Rails 2.x application and notifies you of obvious things that need to be changed for Rails 3.0 usage. It's unlikely to give you full coverage of every issue, but as a general overview it's pretty cool.
5 Things You Can Do Today to Make Your App Ready for Rails 3 - A short post that recommends you start to use Bundler, use inherited_resources, use rails_xss, use more named scopes, and change your references to certain constants.. all in your existing app so it's easier to upgrade to 3.0 later.
Rails 3 Ready Plugins - If you're heavily dependant on a certain plugin, see if it's already on the confirmed Yes/No list of plugins that do/don't work with Rails 3.0. It's still a short list so if you're a plugin maintainer, be sure to add your plugin if you know either way!
How to upgrade plugins to Rails 3.0 - A fresh and code heavy look at how to make some basic changes to upgrade a Rails 2.x plugin to Rails 3.x standards!
Rails 3.0 Libraries and Components
Active Record Query Interface 3.0 - Pratik Naik demonstrates ActiveRecord's finder methods and shows how a number of techniques are being deprecated in Rails 3.1. In essence, queries move away from a single find*
method packed with arguments to a chain of methods performed upon a simpler find
. There are lots of good code examples in here! Why Arel? is also a great introduction to this topic and shows the motivation and theory behind the "relational algebra" in ActiveRecord 3.
ActiveModel: Make Any Ruby Object Feel Like ActiveRecord - Yehuda Katz introduces us to the new ActiveModel system in Rails 3.0 by showing us how we can use it to make any Ruby class feel like an old-school ActiveRecord model. All of this is a result of splitting out the model and database behavior from ActiveRecord into separate libraries, thus removing the necessity for a database backend (or nasty hacks).
Render Options in Rails 3 - Yehuda Katz looks at how Rails 3's rendering pipeline works and demonstrates how to add a custom PDF renderer to it.
Generic Actions in Rails 3 - Yehuda Katz (again!) shows us how to create clever "generic actions" to do things like redirections direct from the routes file and generic template rendering. It's also worth a look for the discussion on route matcher changes.
Making Generators for Rails 3 With Thor - David Trasbo demonstrates how to use Thor (essentially a better Rake - sorta) to produce new generators for Rails 3 projects. This is a code heavy walkthrough. There's more on generators here.
New ActionMailer API in Rails 3.0 - Mikel Lindsaar got stuck in and built a much improved mail library for Ruby. This new "mail" library is now the new foundation of ActionMailer in Rails 3.0. In this article, Mikel gives a tour of how it works and how you can put together mails quickly and easily from within Rails 3.0 apps.
Validations in Rails 3.0 - Mikel Lindsaar shows how validations have changed in Rails 3.0. Instead of being a part of ActiveRecord, they're now in ActiveModel and can be used on non-DB related objects too! The old school validation methods are still around but now there are some other, cleaner ways to accomplish the same things.. Mikel shows you how.
Rails3_DataMapper - A library that gets DataMapper working on Rails 3. It was updated just yesterday and people have been recommending it on Twitter. If you're a DataMapper user, check it out! Update: There's now a tutorial on getting DataMapper running on Rails 3 beta!
The Rails Module - Nick Quaranto looks at how constants like RAILS_ROOT
, RAILS_ENV
and RAILS_DEFAULT_LOGGER
have been deprecated in favor of accessing methods stored in the global Rails module (e.g.: Rails.root, Rails.env, Rails.logger
).
Rails 3 I18N Changes - José Valim looks at some internationalization (i18n) changes in Rails 3.0 over 2.x - along with basic examples.
Insights
A Retrospective - Rails 3 core team member Yehuda Katz looks back at the past year and analyzes the key changes. This is worth reading if you want a softer, more thoughtful, higher level view than the release notes provide.
My 5 Favorite Things About Rails 3 - It's a few months old, but Yehuda Katz takes a look at some of the sticking points of Rails 2.x and shows how Rails 3 provides significant improvements.
Misc
Webbynode Gets Rails 3 Support for Rapid Deployment - Hosting company Webbynode shows how you can deploy a Rails 3.0 app to their VPS system with just a single command line entry. It's a bit like Heroku but more powerful and customizable. Of course, you have to pay for the VPS, but hey :-) It's also demonstrated how you can run a Rails and PHP app side by side on the same system.
How to Install Rails 3.0 Beta on Ubuntu Linux - An Ubuntu-specific guide to setting up a basic Ruby 1.9 and Rails 3.0 beta stack.
Let Your SQL Growl in Rails 3.0 - Gavin Stark demonstrates how he tweaked Rails 3.0 to put out Growl notifications for all SQL queries performed by ActiveRecord. Cute trick.
Exploring Rails 3 Free Online Conference - O'Reilly and RailsConf are putting on a free two hour online conference that features Yehuda Katz, Gregg Pollack, Jeremy Kemper and Ryan Tomayko talking about different parts of the Rails 3.0 ecosystem. It takes place on February 18, 2010.
Signed and Permanent Cookies in Rails 3 - Pratik Naik demonstrates how to set "permanent" cookies in Rails 3.0, more easily than in previous versions, all thanks to a new cookies.permanent
object.
Extending Rails 3 Video - Yehuda Katz in an hour long talk demonstrating how to extend Rails 3.0.
New Rails Logos - Wanna use a Rails logo somewhere without obvious licensing or trademark issues? Check out our little contest/brewing pot of public domain logos over at Rails Inside!
How to Build Sinatra on Rails 3 - Yehuda Katz gives a code heavy demonstration of how to get a basic Sinatra application working within a Rails 3 app.
Unobtrusive JavaScript in Rails 3 - A very old post looking at some of the changes being made to JavaScript helpers in Rails 3.0.
Changes in Rails 3.0 for Agile Web Development with Rails Edition 3 - The Pragmatic Programmers are keeping a page with changes necessary for the popular AWDWR book to keep it working with Rails 3. Good to look at it if you're learning from this book!
Rails 3 App Generator Script - Want to get a complete, scaffolded Rails 3 app up in seconds? This script will get you on your way.
MooTools Driver for Rails 3 Helpers - Rails 3 is now JavaScript framework agnostic, and if you want to use MooTools, here's some info on how to go about it.
North Korean Rails 3.0 Launch Party - Everyone's in on the festivities!
NEW! Bundle Me Some Rails - A walk through using the new Gem bundler with Rails 3.0 by Mikel Lindsaar.
Another Rails 3 Link List - Michael Bumann started to keep a list of Rails 3.0 links a few days ago, so there might be others not covered here. Just found another one by Melvin Ram too.
Logo at top of post courtesy of Dylan Clendenin. See more new, unofficial Rails logos and/or submit your own!
[news] @peterc here! My next "big thing" is a new site called coder.io. If you're into technologies like Ruby, Git, Python, the iPhone, MySQL, JavaScript, Clojure, etc, you might want to get on the coming soon list for some eventual freebies/bonuses along with exclusive early access. Thanks!
February 5, 2010 at 11:34 pm
Great collection. more time needed to get inside rails3.
February 8, 2010 at 12:18 am
Just testing after a server move..
February 8, 2010 at 9:17 am
thank you Peter!
February 16, 2010 at 2:32 pm
Cute but that's a Chinese ceremony, not North Korean. That big open space is Tienanmen Square http://en.wikipedia.org/wiki/Tiananmen_Square
February 16, 2010 at 3:52 pm
You're right. I found that out a few days after making this post. And, man, that scares me. That's a North Korean level of hubris right there. I didn't know China was quite this bolshy.
March 4, 2010 at 6:29 am
Here is a presentation I just gave to our local ruby group. It includes how to get started with RVM too.
http://blog.dudeblake.com/2010/03/get-started-with-rails-3-and-rvm.html