Monday, April 24, 2006

Grails: Ruby on Rails feeling the heat

Up until now I have not wanted to be drawn into a Grails vs Rails debate, clearly not wanting to start a flame war with the Ruby community, but it seems the Ruby/Rails people are doing that job perfectly well without my intervention and feel rather threatened by Grails as they keep bringing it up in interviews and comments on blogs.

In the latest podcast on the Ruby on Rails website they have an interview up with Tim Bray. They talk about Rails and the future of dynamic languages, and they brought up the topic of Grails in which the interviewer said and I quote:

"I heard that some guys had done a Groovy on Rails or Grails framework and didn't quite get it right."

Now, I encourage said interviewer to qualify his statement and point me to a reference where it says we havn't got it quite right. Clearly, you havn't tried Grails my dear boy and making such statements without the facts to back you up is really rather silly, and typical of the response from the Ruby community.

I follow all Grails news quite closely and not one user has said we havn't got it right in fact all the users on our mailing list that have taken up Grails feel we have got it very right with comments like Grails is "The Holy Grail" of Java web development and that its productivity is on par with Rails and for Java developers even more so because they can fully utilise their existing API knowledge.

So far there has yet to be a negative post about Grails from a Java developer, I'm sure there will be one, but I'm still waiting.. so the question is: are the Rails people feeling the heat?

The fact that they even mentioned Grails in this interview and have not mentioned any other Rails-like frameworks is a sign that they are worried and they should be. Grails takes Java integration to a new level. A level that will never be reached by the likes on JRuby on Rails, which really only serves as a useful proof-of-concept.

Good luck guys, Grails may have only just had a 0.1 release, but it has a growing following, greater integration with Java and an aggresive project plan and for the first time you have real competition.

13 comments:

Anonymous said...

After using Ruby on Rails on several smaller modules within a project I had at my workplace, I immediately believed that RoR is more about convention, attitude, and way of thinking, all of which can be done with Java (or other languages/platform).

My pet peeves with Rails were the same like most other people back then: i18n, oracle support, integration with web servers wasn't as simple as deploying a WAR file.

Java community was so tied up with doing things the 'right' way. People won't change their way of thinking before something else comes up which shows them otherwise. So thanks to RoR for opening some blind eyes in the conservative community.

And now with Grails come to the surface, Ruby on Rails has every reason to feel threatened.
Grails will open up the way for this convention and different way of thinking, plus all the benefits that Java already provides.

I'm really looking forward to using Grails.

'This is it.'

Anonymous said...

Having deployed 12 apps on rails we have decided to move back to java! Shock horror I know.

The webserver support sucks. Having to use lighty is stupid. We had to write custom scripts for apache when we were using it to clean up rouge semaphores (or something like that - I forget).

Its slow. Real slow. Compared to java anyway. Some customers complained about speed issues (30 second refresh on occasion). Maybe we were doing something wrong, but these were basic crud apps, not anything special.

The biggest problem we found when using rails is that once you get a large domain model you start running out of memory. Not computer - but human. The lack of completion means you actually have to remember the fields for the domain models.

And coming from java, we miss the API - it may not be as nice as ruby, but we dont need to remember it all in our heads due to code completion.

I havent tried grails yet, but from what you say we are going to see what its like this week.

Anonymous said...

"typical of the response from the Ruby community" ... ugh.. please don't equate a section of the Rails community to the ruby community. I'm a fulltime ruby programmer but I really enjoy how grails works. The majority of long time ruby programmers don't have much of an interest in attacking the java world, they simply appreciate the ruby language.

You're right to point out that that comment was a bit 'out there' but let's not let defensive become aggressive like it did within the Rails community.

Anonymous said...

Dear Graeme,

all people with a Java background know Grails is more useful than Rails (I like Rails a lot but doing some Rails projects I recently clicked on a cool sounding framework and the page was in Japanese - again. And I have the same problems with i18n, webservers and missing libraries. And you can't beat a WAR with winstone).

Don't go there, don't fight, don't play with people throwing dirt around. You'll only get dirty. They are zealots and David is their priest. Just release better tools.

Some of us use the best tools for a job (A had my share of idelogical fights in the C64/Amstrad and Atari/Amiga wars :-)

bye
-stephan

Graeme Rocher said...

Thanks the advice. I was more annoyed with the absolutely FUD that was said about Grails without qualifying the statement.

You're right, its not a battle worth fighting. We just have to get our heads down and produce something awesome.

I think we're half way there ;-)

And 'anonymous' that was a harsh generalisation (I'm british so I spell that with an 's' btw ;-), but when the leaders of said community act like that it reflects on the whole, which is a shame.

Anonymous said...

Hmmm. Strange. You say the rails people start flame wars but to me the comments here don't seem to be - uhm - modest either.

I haven't listened to the Tim Bray interviewm, but according to your quote he explicitly says, that he "heard" about grails and that it was done poorly. Since he openly says that this is only second-hand knowledge, I wouldn't beat on him too hard.

I never actually tried grails yet, because I tried groovy at the beginning of the year and back then I quickly ran into closure bugs, which scared me away from toying around with it again before the summer.

Graeme Rocher said...

Marko, if you had read the post properly you would see that the only reason I posted this was because rails people continually seem to post negative FUD about any competition. So yes this may stoke the fires of the flame war, but it certainly wasn't started by me.

Its not Tim Bray I have the problem with, the interviewer said that we didn't quite get it right and I can place money of the fact that he hasn't tried Grails. Which annoyed me greatly as there is no point making unsubstantiated comments without backing them up with facts.

On the topic of Groovy, it has improved a lot since then.

Anonymous said...

Graeme, thanks for the feedback.

Yes, I am not very into rails, so you may experience a lot of heat I haven't seen.

I just came from javaposse.com and read some of your blog entries. What really struck me was less your post but more the tone of the other comments here.

Since I didn't listen to the interview I cannot add a well informed comment on it's content. At the moment I don't find much time to keep up with the javaposse-podcast, so listening to the RoR-podcasts or giving groovy (+grails) another try isn't an option either.

Maybe later

Anonymous said...

Grails has a shot at being Java's de-facto standard in rapid, enterprise web application frameworks! Please release more frequently!

Anonymous said...

I'm not on either side of the flame war... yes RoR folks can be very fanboy-ish, yes Grails folks are fighting for their spot in the sun, I think we're missing the point here...

Whether you use Grails or RoR, web development is just plain easier with both frameworks. Anything that makes our jobs easier is a win in my book!

One thing I'm interested in seeing is the fate of Grails once the JRuby guys get things ironed out. I for one definitely think there is room for both, maybe a hybrid of sorts?

Who knows when they started, but flame wars about which language/framework/methodology/etc. is better than the other within the programming world are just plain silly. If you only know one language, learn a few more. If you like the framework/language you currently use, wonderful, have fun. It doesn't matter where you look, great ideas transcend languages/frameworks... soon we will see something that is done wonderfully in grails that will make it into the Rails codebase... how soon? depends on how long we can refrain from flame wars I guess. :)

JM said...

Speaking as someone who pays a fair amount of attention to the Rails world (I was at RailsConf, I read the mailing lists) - Grails doesn't come up. You're not on the radar screen. I think you're picking up on a theme that's not really there in the minds of most Ruby and Rails people.

That may not be true for the JRuby world, but that's a tiny segment of the RoR world at this point.

It's like the Far Side cartoon - When you said "Grails takes Java integration to a new level. A level that will never be reached by the likes on JRuby on Rails," what the Rails world hears is "blah blah blah Java blah blah Rails." Very, very few people care about Java integration. It's not a goal, it's not something to worry about, it's almost entirely tangential to what Rails is doing. It's certainly something Grails cares about, but I think you're making a mistake to project that back on the Ruby community.

Graeme Rocher said...

Yes Rails tends to be used by individuals and small start-ups who tend not to use Java so I hear what you're saying.

Java is mainly used in large coporations and big enterprises. In this scenario Grails and JRuby on Rails are competing in the same space.

But, I hear what you are saying about projecting it onto the Ruby community in general. Fair play. I did write this article well over a year ago and my attitude and thoughts have changed since then ;-)

Anonymous said...

Very little expertise is required to create dynamic web application using RoR and that is entirely responsible for its success. Rails is the engine that makes it possible. The language they used was incidental.

You cannot compare a web GUI tool that taps in to database tables with the universe of Java technologies. You can compare Grails with RoR and given the friction free interface Grails has with Java, RoR makes no sense whatsoever. You can replace RoR with Grails and gain the universe of Java technology behind it.

I have found RoR author's to be ignorant and clownish in there over-reaching comparisons.