Trying to GROK Ruby On Rails
BOOK REVIEW
I just read “Agile Web Development with Rails” by Dave Thomas & David Heinemeier Hansson.
While I haven’t encountered anyone who is actually doing commercial work in Rails, Rails is getting a lot of verbiage in the blogosphere and, since Web Technology is my life, I thought I’d spend some time getting to know Ruby On Rails.
So, for the last few weeks I’ve been reading about and writing RoR code. I got a dedicated Ruby IDE Arachno Ruby, a began reading THE Rails book.
As scripting language go, Ruby is fine, to me it “feels” like Python and I find it less desirable than PHP. But really, syntax is syntax – Ruby has all the stuff I expect.
Rails is what I would describe as academically interesting.
Based on my few weeks in the Ruby on Rails headspace, I see Rails as many things, but nothing really new or terribly compelling – at least for the kind of work that I do.
There is what certainly appears to be a rich framework of objects and functions, a collection of command line tools, a variety of code generation tools, testing utilities and the like.
The English like syntax of Ruby On Rails is kind of cool. The syntax for database relations is also interesting.
One of the primary design artifacts of RoR seems to be to impose the MVC (Model View Controller) pattern. I don’t really see this as possible in the pure sense of the concept. Web development, particularly as delivered in scripting languages, can approach MVC implementations, but not REALLY get all the way there.
But I kept asking myself “so what”?
Writing RoR applications still seems to me to be a painfully manual process. Worst still is the “feel” that RoR comes with a lot of rules and constraints and a lack of the kind of flexibility that professional developers really need.
Even the book often refers to generated code as “throw-a-way”.
ORM, DataObjects, Code Generation, Unit Testing Exception Handling, Built in Web Everything, etc – all old hat to existing web development technologies,
And the “tools: support for Rails is almost non-existent. Arachno is s good IDE as is RadRails, but nothing awesome there either.
When I first worked with ColdFusion, ASP, PHP, Java, .NET, etc. I “grokked it”.
In any event, Ruby is ok and Rails is “academically interesting” but I just don’t see what all the fuss is about. It won’t win me away from ASP.NET or PHP.
As for the book….. The book is casually written and an easy read with a walkthrough of building a sample Rails application that not only demonstrates the tools and the syntax but “philosophical process” behind RoR; which makes sense. It’s written by the creator of Rails so I suppose it gives one the feel of RoR as much as anything might.
It was a fun exercise but made me reminiscent of programming in ADA for some reason.
Anyway – back to Visual Studio !
Comments
Anonymous
May 05, 2006
C'mon - I can understand if you say it doesn't win you away from ASP.NET, but I know a lot of PHP programmers moving towards the Rails platform.Anonymous
May 05, 2006
PingBack from http://blog.apokalyptik.com/?p=45Anonymous
May 05, 2006
I had a bad taste in my mouth when I very first learned Ruby, although part of that might have been that the few English tutorials available at the time (everything was in Japanese) were targeted to PERL coders and Perl has something of a garbage reek to it.
So I wasn't very surprised when I discovered Ruby on Rails and didn't like it. Too many things just rubbed me the wrong way. I think you mention a few of them.
If you are looking for something that maybe you might like/grok better (you mention Python), I would point out the Django Framework for Python (http://www.djangoproject.com), which I found to be an awesome web framework over the past three months.Anonymous
May 05, 2006
I think you need to look around more for commercial rails applications.
There are tons out there.
I'd trade a convention for configuration any day when I'm grinding away code for a client. The more that's written for me that is well tested, extensible, and easily usable... the better.Anonymous
May 09, 2006
Just curious, where do you get "Grok"? From the master of SF?
james -Joe Replied: You bet - Stranger In a Strange LandAnonymous
July 17, 2006
You had me at the point of: there are not commercial applications using Rails. But once you went into unit testing and such, you completely lost me.