tag:blogger.com,1999:blog-20633170.post3167542465036490589..comments2023-11-03T10:08:09.830+00:00Comments on Graeme Rocher's Blog: Grails vs Rails Myth #1: Grails has a fraction of what Rails has to offerGraeme Rocherhttp://www.blogger.com/profile/12301973191113958910noreply@blogger.comBlogger19125tag:blogger.com,1999:blog-20633170.post-6391135068143377542008-07-11T04:17:00.000+01:002008-07-11T04:17:00.000+01:00I realize this post is a year old, but it deserves...I realize this post is a year old, but it deserves a follow-up :)<BR/><BR/>Setting up grails to use memcached is incredibly easy if you use the hibernate-memcached :) http://code.google.com/p/hibernate-memcached/<BR/>(end shameless plug)Ray Kruegerhttps://www.blogger.com/profile/06110480752501115735noreply@blogger.comtag:blogger.com,1999:blog-20633170.post-11462057072508543692007-06-28T14:54:00.000+01:002007-06-28T14:54:00.000+01:00Like I told in my intial comment (see above) I rea...Like I told in my intial comment (see above) I really wanted to try out Rails. So I bought the obligatory books and started getting into it. Initially I was really impressed. Everything seems to be well thought out and seems to work hand-in-hand. No switching between all those different libraries, which come with different documentation, quality and philosophy.<BR/><BR/>My plan was to create an administration interface for an existing Sping/JPA webapp using Rails. So far I failed miserably:<BR/>I couldn't find a way to make ActiveRecord deal with my legacy database schema, which uses the "join" strategy to map a small simple class hierarchy to the database. I learned that ActiveRecords supports the "single table per class hierarchy" strategy only (which is a no-go in my case). This is really a showstopper for now. On my way learning I also noticed several other weaknesses of ActiveRecord (second-level cache missing and some other stuff). I wouldn't have thought that ActiveRecord is really that weak compared to Hibernate/JPA, since it is around for some years now.<BR/><BR/>Maybe I will try out Rails again when starting a complete new project. But for now my initial excitement about Rails yielded to disappointment.Anonymousnoreply@blogger.comtag:blogger.com,1999:blog-20633170.post-32447414159459600222007-06-25T18:39:00.000+01:002007-06-25T18:39:00.000+01:00Graeme, i think Masukomi makes a good point in his...Graeme, i think Masukomi makes a good point in his blog and writes more precisly what i paraphrased somewhat rough.<BR/><BR/>I don't doubt that Hibernate is in any way inferior to ActiveRecord but the whole bunch that RoR represents its imho much more usable (from a developers view) out of the box than Spring + Hibernate alone.<BR/><BR/>In a team with 3 people it's hard to choose the right technology if one must expect getting lost while configuring things in mess of xml files. <BR/><BR/>You wouldn't be working on Grails if there wouldn't be a wish or need among Java coders for something like rails. You quote Les Hazlewood with "I found Grails and it was like the heavens opening and angels singing "AAAAaaaaawh". I think he didn't discover anything new with Spring and Hibernate but saw that J2EE can be made a lot easier: Starting to write your closures and views instead of open your xml editor of choice just for configuring an app.<BR/><BR/>I didn't mean to flame with my post, really. I see myself in both worlds. For my own stuff (http://dailyfratze.de, a daily photo project) and some other private stuff i use RoR and i "love" it. Clearly, i don't need transaction spanning multiple request in this project.<BR/>At work we are heavily devoted to Java, both desktop apps and J2EE.<BR/><BR/>Kind regards from Germany,<BR/>Michael.Anonymousnoreply@blogger.comtag:blogger.com,1999:blog-20633170.post-52131058251813702402007-06-24T10:34:00.000+01:002007-06-24T10:34:00.000+01:00James,HAML:Err.. you think Adobe are going to inve...James,<BR/><BR/>HAML:<BR/><BR/>Err.. you think Adobe are going to invest their time and money to write a special parser for HAML? I don't think so. Dreamweaver knows how to deal with XHTML+CSS, not some weird custom format<BR/><BR/>Transactions:<BR/>Hibernate has a concept of a session which accumulates changes which are then flushed to the db at an appropriate point in time. This means you can have a conversation with the db that spans multiple requests where the changes are only commmitted maybe several requests later. All the time hibernate is rarely hitting the db. <BR/><BR/>I'm perfectly aware Rails supports db transactions, but container managed transaction spanning multiple requests is not, as far as I'm aware, possible.<BR/><BR/>Distributed caching:<BR/>With all due respect to memcache, having worked with it before it is a mere toy compared to some like Coherence with its features for transparent failover, multicast cluster management, entry processors, querying/filtering etc.<BR/><BR/>I do agree that it doesn't need to be part of the framework, all I'm saying is that the libraries in Java land are superior on multiple levelsGraeme Rocherhttps://www.blogger.com/profile/12301973191113958910noreply@blogger.comtag:blogger.com,1999:blog-20633170.post-20746447894025193532007-06-24T06:55:00.000+01:002007-06-24T06:55:00.000+01:00AFA Dreamweaver and HAML: It shouldn't be much har...AFA Dreamweaver and HAML: It shouldn't be much harder than parsing CSS. I don't see why that would be a problem.<BR/><BR/>AFA Transactions: Rails has had transactions since before Rails 1.0. I'm not sure where you got the idea that they didn't. <BR/><BR/>I've never heard of 'conversations' or 'criteria' in DB terms. I'll look into that. Maybe it'll be my chance to contribute to Rails core. <BR/><BR/>Distributed caching can be done with memcached or other caching frameworks. I don't see why it would need to be part of the framework. And I personally expect that using a native app, like memcached, is more powerful than mixing it into the system.<BR/><BR/>Finally, as far as time. You win. If what you say is true, and I totally believe it is, Rails is hard on the DB, apparently for no good reason.<BR/><BR/>JDJim Devillehttps://www.blogger.com/profile/00964727644098022520noreply@blogger.comtag:blogger.com,1999:blog-20633170.post-9072366275231068592007-06-22T20:50:00.000+01:002007-06-22T20:50:00.000+01:00Personally I think HAML looks like garbage. I rea...Personally I think HAML looks like garbage. I realise it's nice and terse but it's very ugly looking and as Graeme already mentioned, tools like Dreamweaver won't like it one bit. <BR/><BR/>That said, I think things like JSP, HAML and RHTM are antiquated ways of doing web development and MUCH prefer using Wicket for web development. It's the only thing that doesn't make me cringe when I look at it. Grails has a plugable view technology so I'm interested to see how far Graeme can take Wicket on Grails. :)salient1https://www.blogger.com/profile/00667451308500303792noreply@blogger.comtag:blogger.com,1999:blog-20633170.post-48455045082808754782007-06-22T18:59:00.000+01:002007-06-22T18:59:00.000+01:00Or better yet (re: rhtml,haml,etc), Markaby :)or w...Or better yet (re: rhtml,haml,etc), <A HREF="http://code.whytheluckystiff.net/markaby" REL="nofollow">Markaby</A> :)<BR/><BR/><BR/>or whatever else suits your fancy, liquid, etc.Anonymousnoreply@blogger.comtag:blogger.com,1999:blog-20633170.post-26251422439253193982007-06-22T12:22:00.000+01:002007-06-22T12:22:00.000+01:00HAML looks lovely, unfortunately I doubt any desig...HAML looks lovely, unfortunately I doubt any designer tools like Dreamweaver will grok this:<BR/><BR/> #content<BR/> .left.column<BR/> %h2 Welcome to our site!<BR/> %p= print_information<BR/> .right.column= render :partial => "sidebar" <BR/><BR/>We chose to use tags for a reason :-)Graeme Rocherhttps://www.blogger.com/profile/12301973191113958910noreply@blogger.comtag:blogger.com,1999:blog-20633170.post-75757146469870052922007-06-22T11:46:00.000+01:002007-06-22T11:46:00.000+01:00You don't have to use RHTML with rails, there's al...You don't have to use RHTML with rails, there's always haml: http://haml.hamptoncatlin.com/Anonymousnoreply@blogger.comtag:blogger.com,1999:blog-20633170.post-42018928335375087022007-06-22T08:35:00.000+01:002007-06-22T08:35:00.000+01:00@masukomi (kate) I posted response on your blog@masukomi (kate) <BR/>I posted response on your blogGraeme Rocherhttps://www.blogger.com/profile/12301973191113958910noreply@blogger.comtag:blogger.com,1999:blog-20633170.post-76362076022819290742007-06-22T08:11:00.000+01:002007-06-22T08:11:00.000+01:00@antonio & georgeThe ideas from Hobo come from Gra...@antonio & george<BR/>The ideas from Hobo come from Grails. Tom Locke the creator saw Grails' taglibs before he started working on it as I showed him :-)<BR/>He won't admit he got the idea from Grails, I guess due to the not-invented here syndrom running through the Rails community (I'm happy to admin we took many ideas from Rails). Sorry Tom, but this is fact!<BR/><BR/>@gernot<BR/>Sure, if you feel RJS is more important than transactions than go for it ;-)<BR/>I don't imagine many big enterprises will.Graeme Rocherhttps://www.blogger.com/profile/12301973191113958910noreply@blogger.comtag:blogger.com,1999:blog-20633170.post-83689759146211649612007-06-22T07:43:00.000+01:002007-06-22T07:43:00.000+01:00Rails has the "less is more" approach wich I like ...Rails has the "less is more" approach wich I like very much after years of work with huge frameworks (je22 and .net). The real power of rails comes from the language, ruby. Java and C# seem clumsy to me now.Gernothttps://www.blogger.com/profile/08836163611074377149noreply@blogger.comtag:blogger.com,1999:blog-20633170.post-88395692634889880282007-06-22T05:10:00.000+01:002007-06-22T05:10:00.000+01:00Hey Graeme I wrote a response to this but it was a...Hey Graeme I wrote <A HREF="http://weblog.masukomi.org/2007/6/22/grails-functionality-vs-rails-functionality" REL="nofollow">a response to this</A> but it was a bit too long for a comment.masukomihttps://www.blogger.com/profile/10810086465593823277noreply@blogger.comtag:blogger.com,1999:blog-20633170.post-59171836321807505482007-06-22T04:05:00.000+01:002007-06-22T04:05:00.000+01:00Indeed antonio, Hobo floors anything I've seen for...Indeed antonio, Hobo floors anything I've seen for cleaning up Rails at the moment. And it appears that some great things are going to be happening soon for it developmentally.Unknownhttps://www.blogger.com/profile/16807802576808387341noreply@blogger.comtag:blogger.com,1999:blog-20633170.post-70571103909383579532007-06-21T22:48:00.000+01:002007-06-21T22:48:00.000+01:00Thanks Christian, and good luck with Rails or what...Thanks Christian, and good luck with Rails or whatever framework you go with the end :-)<BR/><BR/>Cheers<BR/>GraemeGraeme Rocherhttps://www.blogger.com/profile/12301973191113958910noreply@blogger.comtag:blogger.com,1999:blog-20633170.post-91673884598934729532007-06-21T22:44:00.000+01:002007-06-21T22:44:00.000+01:00Don't know if I prefer rhtml. I'd like to try it o...Don't know if I prefer rhtml. I'd like to try it out and see, as I pointed out above. Maybe you're right. It's just the thing that a simple if-then-else is so very verbose having to write all those tags. Maybe I'll be sick and tired of rhtml even faster.<BR/><BR/>By the way I wish you all the best for GrailsAnonymousnoreply@blogger.comtag:blogger.com,1999:blog-20633170.post-10480934512614376342007-06-21T20:23:00.000+01:002007-06-21T20:23:00.000+01:00If you enjoy tag-based views, hobo has DRYML, whic...If you enjoy tag-based views, hobo has <A HREF="http://hobocentral.net/manual/chapters/3_dryml.html" REL="nofollow">DRYML</A>, which provides the same (arguably, far more flexible) abilities.Antoniohttps://www.blogger.com/profile/00685775039560712665noreply@blogger.comtag:blogger.com,1999:blog-20633170.post-57045772029448985922007-06-21T17:36:00.000+01:002007-06-21T17:36:00.000+01:00By god man and you prefer Rails' scriplet based RH...By god man and you prefer Rails' scriplet based RHTML? That is strange..<BR/><BR/>scriplet <% %> orgies are even more lame, at least tags are well formedGraeme Rocherhttps://www.blogger.com/profile/12301973191113958910noreply@blogger.comtag:blogger.com,1999:blog-20633170.post-27218057887227443392007-06-21T15:57:00.000+01:002007-06-21T15:57:00.000+01:00I find the whole Ruby/JRuby/Rails/Groov/Grails deb...I find the whole Ruby/JRuby/Rails/Groov/Grails debate very interesting. So long I've been at home mainly in Javaland, so I'm pretty aware of the adavantages Grails has to offer in terms of Java-integration. My two major reasons why I probably will nevertheless try out Rails in future (now that you can deploy Rails application on the JVM):<BR/><BR/>- it seems to me that writing GSP code is much like JSP. And I hate to write these "c:choose c:when when c:otherwise.." tag orgies. It's just so ugly to write (and that is also the feedback of my project team's members) and I'm sick and tired of this.<BR/><BR/>- Rails/Ruby simply has just such a big momentum and I like to have a thorough understanding of the Rails platform to have an own attitudeAnonymousnoreply@blogger.com