1. David Heinemeier Hansson explains Ruby on Rails |
| |
| Can you give us a snapshot of the types of organisations that are adopting Rails? |
We've had the traditional curve of early adopters - small companies and innovative consultants that have less red tape to cut through to adopt new technologies. They were the first people to jump on board. Then there was the second wave of people who weren't majorly focused on new technologies but were happy enough to adopt them.
We're entering a new phase now, which basically includes everybody. Big companies and big consulting firms now see Rails as more of an established technology and are adopting it in a bigger way now. The biggest story in terms of recent adoption is big business - although it is not something we ever pro-actively pursued.
They are coming to Rails on their own terms - we are not trying to woo enterprises with legacy systems or what have you.
|
| How difficult has it been to manage its popularity? |
Rails adoption has been on a really steep sloping curve - as much as it can be. I think we don't want to accelerate that too much further - we have to control the way Rails is being adopted in a way that people coming in can be adopted into the community.
It's very easy to be flooded with people coming from other development cultures, and it's very prudent that we make sure the community can withstand the influx of new people.
|
| How, typically, are businesses using it? |
There is a lot of stuff going on. There are a lot of applications that perhaps wouldn't have got done otherwise. Applications where someone in the department would ask how long they would take to do, and the IT/Java team would say 18 months. Now, the consulting team tells them that they would take three months in Rails.
There is also a fair number of start-ups with big money behind them that are choosing to go with Rails. People like Jobster - corporations that have lots of people and are choosing to base their stuff on Rails.
A lot of it, also, is in internal applications where companies can test it out, and where they feel if it doesn't work out there won't be this big public debacle.
|
| Apart from Basecamp, what's the best thing you've seen produced on Rails? |
It's kind of hard to say - there has been very good stuff developed in pretty much every area. I personally like a site called 43things.com, which is an inspirational site where you can track your life goals.
I also like Shopify.com, which is an incredibly cool shopping marketplace area where someone with very little expertise can set up a web shop that doesn't look like crap, which they usually do.
|
| Do you have any advice for anyone thinking about adopting it? |
The best way is to try it out. It's very easy to download the framework and get things set up in a day. It's free and it's fast. Get a feel for how it would work for you and your organisation by looking at it on your own. Take a tiny feature or application and try to develop it in Rails.
You can read all you want and throw the pros and cons back and forth, but if you just try it it can be a revelation for people It's less of a change than I think people suggest.
|
| For a novice, what level of skills do you need? |
As long as you have a bit of an understanding of core programming, Rails is a great starting point to take your skills to the next level.
I find that a lot of newbies have trouble developing in Rails if they just try to learn it from examples. The best way to learn Rails is to just pick up a project and try to develop it in Rails.
|
| What are going to be the main changes with Rails 2.0? |
The main objective for Rails 2.0 is to streamline some of the baggage we've been collecting along the way. We're taking some things out of Rails - experiments that either didn't work out too well, or didn't live up to the primary goal of developing the Rails framework; offering things that people need most of the time.
There are also a number of components that are slightly too high level and we'll take those out. We'll also be putting in a bunch of small fixes and improvements.
The main focus is cementing our allegiance with the REST community - using HTTP in a plain, vanilla form to create web services, rather than using something like SOAP. We're going to de-bundle the Rails components that dealt with SOAP and include a large number of tools to help you develop REST services instead.
|
| When do you think it will be ready? |
We've been working on it for quite a while now and currently the objective is to get it out this year. We don't really have a roadmap to follow though - we just work on Rails when we have the motivation and inclination to do so.
|
| Projects using Rails |
| |