RailsConf Europe sells out!

RailsConf Europe is coming up fast and we’re happy to report that all the seats are now gone. We’ll have one packed show to put on. I can’t wait to hook up with everyone again. Go Berlin!

Rails Envy strikes .NET and CakePHP

The fantastic team at Rails Envy is back with their Apple-style commercials comparing Ruby on Rails to a variety of competing environments. This time they have a one-two punch first striking .NET and then doing PHP/CakePHP. As always, it’s funny stuff and really nicely done. Keep it up, boys!


Looking for a good way to browse the Rails API documentation? Alex Gorbatchev has recently created Noobkit, a documentation browser for Rails, Ruby core, and over 20 other useful libraries. It also supports searching, comments (with your OpenID), and bookmarks.

Prototype 1.6.0 release candidate

The first release candidate for Prototype 1.6.0 is now [available for download](http://prototypejs.org/2007/8/15/prototype-1-6-0-release-candidate). This version features a rewrite of the event system, including support for DOM-based custom events and the DOMContentLoaded event, true class inheritance and superclass method references, and improvements to the DOM, Ajax, and function APIs. Please give it a spin in your apps and [let us know](http://dev.rubyonrails.org/) if you run into trouble.

Rails Rumble 2007

It’s that time of the year again: time for another Rails coding competition. In the spirit of the previous Rails Day contests, Rails Rumble challenges teams of up to four to create the best application possible in just 48 hours. This year’s competition is a little bit differently this time around, so checkout the rules. Judging is now performed by the community, allowing anyone to signup and choose their favorites. Also, your app will be provided a VPS to host the application through the end of October. How cool is that?

If you want to compete, you need to organize quickly, the contest runs on September 8th and 9th.


The Czech Rails shop Skvělý.CZ has just announced the release of sMoney.EU, a free expense tracking application written in (of course) Ruby on Rails. It sports translations for several languages, too, and joins the growing ranks of Rails applications with localized interfaces. Great job, Robert and team!

Last week of early-bird price for RailsConf Europe

RailsConf Europe is approaching fast. It’s going down September 17-19 in Berlin, as most of you know, but this very week is actually the last if you want to take advantage of the 150 euro-discount for early-bird registrations.

I can’t wait to see everyone in Berlin. We had such a great conference in London last year and so much has happened since then. Have a look at the program and hopefully we’ll get a chance to meet up and talk.

Happy 3-year anniversary, Rails

We’ve passed the 3-year mark for when Rails first saw the light of day as a public release. It’s been an amazing ride, don’t you think?

Capistrano 2.0

Capistrano 2.0 is real. (What is Capistrano?)

Install it thus:

gem install capistrano

It’s been through four preview releases, and has seen significant changes since 1.4.1. If you’re currently using 1.4.1, be sure to check out the upgrade documentation at http://www.capify.org. If you’re altogether new to Capistrano, you might like to read about getting started.

Since the last preview release (number four, version 1.99.3), the changes are primarily bug fixes, but the following featureish modifications snuck in, too:

  • The uploader has added a tiny bit of sleep to prevent the CPU from going bonkers during uploads.
  • You can specify the $CAPISTRANO:HOST$ placeholder in the filenames that you give to “put”, and it will be replaced with the actual host that the file is being uploaded to.

Also, some people reported SFTP uploads were hanging for them. If this happens to you, try adding the following line to the top of your recipe file:

set :synchronous_connect, true

That will cause connections to the servers to be established serially, rather than in parallel, so if you’ve got a lot of servers that you are connecting to, it might make things a bit time-consuming. However, this appeared to work around the hanging SFTP issue.

You can read the complete changelog here. If you are using Capistrano at all, please also consider joining the mailing list, it’s a great place to share tips and report issues.


Yes, there are a few of these. Two are of immediate significance:

  1. If you try to use the ‘put’ command to upload a file to two or more hosts via a gateway, you run a good chance of encountering “corrupted mac” errors. This is due to design flaws in Net::SSH and Net::SFTP, and (to my knowledge) cannot be worked around. The current best practice is to upload to a single host, and then use scp or rsync from the remote hosts to pull the file.
  2. A very few people have reported commands hanging inexplicably and infrequently. I suspect this is also due to flaws in Net::SSH, but I’m not certain yet.