Re: Ruby on Rails?
Geoff Hopson <[email protected]> Sat, 29 Oct 2005 20:35:30 +0100
| Newsgroups | gmane.comp.web.webobjects.general |
|---|---|
| Message-ID | <[email protected]> |
I've been using RoR for a few weeks now, looking at an alternative to certain licensed products that I have been using for 10 years or so. I know PHP well, Java well, ObjC well and have been developing web apps since <img src...> was considered the pinnicle of web development. My main conclusion about Rails is that its not quite ready for prime time yet. I can't quantify that, it's just a feeling, but there seems to be several ways to skin the same cat and no 'right way'. And it has an 'unfinished' feel to it. There are anecdotes about how scalable it is. I still wouldn't trust running a serious ecommerce application on it. The code generation is nice - gets you going really fast. The default project layout is nice too - all very clean, very obvious, very simple. I like my components (someone else mentioned that you cannot do components in Rails. They have a mechanism called 'partials' which works OK for me.). Ruby the language is very nice as well. And, if you follow the naming conventions for database tables (plurals, PK named id, updated_on, created_on, lock_version columns) there is a nice ActiveRecord class that gives you a lot for free. Kinda like EOUtilities on steroids. Just subclass off ActiveRecord::Base and away you go. They recommend the 'static method on the model class' type of pattern for adding specialised fetches etc. No fetch specs yet. That will come, I guess. But, it's not even a release 1 product yet, and it is still evolving. I have been caught a couple of times chasing the latest version and hitting weirdness. However, I personally am going to keep an eye on it, and will use it for simple CRUD apps - for example, I am planning on using RoR apps as simple admin functions on deployed WO apps. In the day job I am still doing Java work, and it was using Hibernate, Hivemind and Tapestry. Recently I have started doing my web work in Click (http://click.sf.net/) on top of HiveMind and Hibernate. The Click development team are looking at RoR for inspiration, specifically the ActiveRecord stuff, and have subsequently integrated Click with Cayenne (with help from Andrus). This is looking extremely good - off to play with the example Cayenne web app after this email. Cayenne is very nice and familiar to an old DBKit/EOF person like myself, and Click is *considerably* simpler than Tapestry - I have had developers pick it up and develop basic CRUD web apps in less than a day. Go check out the Click examples, view the source etc. Simple. And the Ajax integration is easy, and uses the prototype javascript library (same as RoR). Version 1 of Click is out soon, so go give it a look. My next project is Click on top of Cayenne. Not WO. I like open source. I can fix the bugs. Sorry, WO fans... Geoff Bruce Fancher wrote: > Thanks for the responses from everyone. There's been so much hype over RoR > that it piqued my interest, but when I hear "it's 10x more productive than > Java!@$!@#$!" I assume that what that really means is that the person who's > just started out with RoR was suffering through Struts and EJB and all that > other junk so I tend to discount it. I figured I'd get a more accurate > assessment from a group of people who know what a real application framework > is supposed to do (i.e.: you guys). > > It's kind of tragic that 10 years later there's still nothing else out there > that quite compares to WebObjects (although I've heard good things about > Tapestry and Cayenne). I'm pretty busy right now working on a smallish > WebObjects project but once I finish it in the next month or so I'll probaby > dive into Rails and see what the fuss is about. > > One thing I'll add is that while I'm a big fan of dynamic languages and > metaprogramming (aspects, multimethods, open implementations, etc.), I > already fucking hate the Ruby syntax. Given that it claims to have derived > from Smalltalk, I don't understand how they missed one of my favorite > contributions of Smalltalk to programming languages: named arguments. > > The Ruby enthusiasts seem to have made a fetish of "terseness", which (IMHO) > they falsely believe is a significant boost to productivity. Given that any > line of code is going to be *read* far more often than it's going to be > written, it seems like the pride they seem to take in having dispensed with > curly brackets and semicolons is misplaced. I find this especially annoying > as I've lately been quite pleased to see that some of other languages that > have recently been written for the JVM (Nice, Groovy, etc.) have added some > great language features while fixing the main thing that I don't like about > Java's syntax: the lack of named arguments. Oh well, you can't have > everything. > > Bruce > > _______________________________________________ > WebObjects-talk mailing list > [email protected] > http://www.omnigroup.com/mailman/listinfo/webobjects-talk >