Gone off (the) Rails? Not quite, but nearly....
Well, I've given Rails the once over, and I'm both really impressed with it and very frustrated by it at the same time. The Rails framework really does deliver in so many areas, making 80% of the usual web-application development tasks almost trivial - I especially like the skeleton view components. And while I'm very much a newbie, I'm starting to really appreciate the power of the Ruby language.
I already have some development ideas which might be ideally realised with Rails. In the meantime, I thought I'd start by deploying an existing app. I've looked at a number of blogging applications, scripts etc. and I've deployed a couple in anger. Typo is a Ruby on Rails based blogging application, with most of the modern features you might expect, and a growing collection of 'plugins' to extend its functionality. It appears to be the most widely deployed Rails blogging application by far.
So why is it so difficult to deploy Rails applications on most web-hosts? My web-hosting company of choice is Site5 - I've used them for years and am happy to recommend them. Site5 are very enthusiastic about Rails, and specifically talk about Typo, helping to sponsor the recent Typo Theme Contest. A quick search however, reveals that dozens of people have run into real difficulties deploying Typo on their Site5 accounts. You pretty much need console access to do this, which Site5 will grant you on request, but which is not the norm for web-hosting companies. I have managed to deploy Typo on my Site5 account (this blog is the evidence), but I spent two days fiddling with .htaccess files and the like in order to do this. A large and growing discussion on this subject can be seen on the Site5 Ruby discussion board.
Another Rails application I have looked at is Instiki, a wiki clone. As the developers proudly claim, Instiki has a three-step installation, the joke being that there is no step three. I've tried installing it on my iBook and it's true - the installation is really that simple, not least because it relies on an embedded Web server called WEBrick. Great! Now try installing it on a web-host account such as Site5. I haven't actually asked them, but I doubt they are ready to sanction customers running their own web server software. Instructions for installing with an existing web server such as Apache? Non-existent.
In his RailsRoad blog post, Bryan says:
The difficulty of configuring Rails is a perplexing one. Since configuration has to happen before any learning can happen, I bet that many people are quitting before they even get a taste of Ruby.
I'm inclined to agree.
I would like to see Rails, and Ruby generally, become good (even superior) alternatives to Perl CGI and PHP in the standard web-host offerings. Currently, however, there are some real barriers to entry.
I now feel ethically bound, in the tradition of open-source software, to document the steps I took to get Typo up and running on my web-host account....
This was previously published at http://blog.sockdrawer.org and was retrieved from the Internet Archive.