Jordan Brock

Getting Underway with Ruby On Rails

This post originally appeared over on Spin Technologies, but I decided that it was probably more appropriate for this site. So here it is!

Almost a year ago, I started hearing about BaseCamp, a project management/organisational tool, that had been created by 37 Signals. As more information started appearing about the product and it’s development, people started talking about RubyOnRails, a new “framework” for web development. Details were relatively sketchy, documentation was around but not for the beginner and most importantly, Rails was only at 0.4 or something similar, so I had a quick peak, and then ducked for cover within the comfortable blanket I had made from ASP.Net and C#. (Oh, but I signed up for BaseCamp though!)

And then in December last year, a client that I had developed a site for, using my technology security blanket of course, came to me with an idea for a site (it eventually became World Time Capsule- a site where you can store information/documents/whatever and lock them up, for loved ones to view later). There wasn’t a lot of money for the project and so I began to think that this might be an opportune time to begin to look at RubyOnRails. I sat down and did a couple of the online tutorials that had appeared around the place (mainly blogging applications, todo lists – modelled on Tada from the ubiquitous 37 Signals!)

It quickly became clear that here was a technology that had been lovingly crafted, with amazing skill and forethought. David Heinemeier Hansson is the creator of the framework. He was initially a contractor for 37 Signals, doing work in PHP, and then when he started work on BaseCamp he decided to create a new method of developing websites. Once BaseCamp was up and running, he extracted RubyOnRails from it, did some polishing up and released it out onto the web.

It was quickly taken up by developers around the world who were getting tired of the large amounts of work that needed to be done in order to start a project, and were taken by the simplicity of the code. These developers started making suggestions and improvements, working hard to fix bugs and issues that arose, and basically working hard to create a fantastic environment. These efforts continue today, with David recently allowing Jamis Buck and Jeremy Kemper to commit changes to the official RonR source tree.

Bear in mind that all of this development is because the extra nice people at 37 Signals decided that the technology they built when creating BaseCamp would be made available to whomever wanted it, at no charge. Open Source at it’s best.

So how is Spin making use of this great platform/framework? Other than World Time Capsule, this site is built using RubyOnRails, as are several more that we’ve done recently: Global Health Source, 11 Recruitment, and Planning Your Get Away. We are currently redesigning our company Intranet using Rails, building a fully fledged eCommerce site for an up and coming clothing retailer and developing an intranet for Five Senses Coffee to help them manage their orders and interaction with their clients.

I think you could safely say that Spin is now firmly running on Rails. In an upcoming post, I’ll look at exactly how Ruby On Rails is used to build a site.