Re: Ruby on Rails?

Paul Lynch <[email protected]> Fri, 28 Oct 2005 10:57:17 +0100
Newsgroups gmane.comp.web.webobjects.general
Message-ID <[email protected]>
On 27 Oct 2005, at 06:25, Bruce Fancher wrote:

> So, anyone on the list look at this?

The biggest downside of RoR is the virtual impossibility of  
installing Rails on MacOS X.  That makes it way too flakey for  
production use.  Yes, I am aware that some people seem to get it  
installed eventually (I did once, too).

The second biggest liability is the article about it on O'Reilly  
(http://www.onlamp.com/pub/a/onlamp/2005/01/20/rails.html), which  
makes it seem much harder than it really is.  Four Days on Rails  
(http://rails.homelinux.org/) is a much better basic intro.

The third is one that applies to all of these web and database  
frameworks, as well as the gurus that espouse them - "those who do  
not study history are doomed to repeat it".  I am suspicious of any  
technology that doesn't acknowledge WebObjects - although I should  
point out that Ruby has a strong NeXT/Cocoa background.

For mid size and small projects, it isn't at all bad.  Rails has a  
lot of quite rigid conventions about names (pluralised table names,  
id for key, etc), which help a lot if you adopt them, but annoy if  
you can't.

Rails embeds code in html.  This is evil.

Rails has the assumption that you are developing a CRUD app (the same  
as the basic WO model), which is only rarely the case for commercial  
web apps.  I am not sure how well it adapts to other models, as you  
effectively have to ignore the generated code to do so.  The general  
feeling I get from Rails is that it slots somewhere in between the  
freeform flexibility of general WO programming and the rigidity and  
complexity of D2.  I'd far rather take the former, and am very  
suspicious of needless complexity.

On the whole, I am inclined to take a conservative approach and stick  
to WO for larger applications.  I am very familiar with performance  
optimisation and scaling for WO.  For smaller apps, I think it comes  
down to the trade off between OSS and the greater refinement of WO.   
As buggy as WOBuilder and EOModeller/Xcode may be, they still have a  
lot of offer in productivity.  Compared with other web projects, RoR  
has the advantage of both a reasonably strong OO language and  
integration across templating, db access, etc; there's really no choice.

Which means that I will be staying with WO until a disaster happens -  
then I will most probably pick RoR to move to.

Paul