Hacker News new | ask | show | jobs
by mgkimsal 5554 days ago
Have you done anything with Grails or Groovy yet? My experience is that it's probably the easiest transition for Java devs, because Groovy is something that can be interchanged in each file with "plain old Java".
1 comments

I haven't mentioned Grails / Groovy, because it always seemed to me like some kind of a "hack" to improve Java with some nice syntactical sugar / DSLs / dynamic programming. Scala / Clojure seemed more interesting, and I focused on them.

I've only tried a small "create-your-blog-in-15-minutes" Grails tutorial, and it was actually quite effective. I haven't revisited it since then. Thinking about it, my Groovy avoidance is absurd, and I WILL look at it again with an open mind. I remember "dismissing" Groovy a while ago, after reading a few articles raving about Scala being the next JVM language. I think it was quite dumb of me actually.

A colleague of mine used Grails to build a small issue tracker for a client, and he loved it. The only drawback, according to him, were some of the plugins: when the default plugin configuration wasn't what he needed, it was sometimes hard to change it. Since they were open source, he simply forked them / hacked at the code / submitted patches to improve them. These drawbacks are expected, though, since the language is still young, and plugins will mature.

Spring Roo also looks interesting, for those who want to keep using Java. It's inspired by Rails / Grails, and uses code generation to speed up development: http://www.infoq.com/interviews/roo-ben-alex

I've been a bit annoyed at Roo - more precisely, Spring, because they seem to give Roo more love/attention than Grails.

Personally, yes, I think perhaps it was a bit 'dumb' of you to dismiss Groovy. ;) Yes, it's 'syntactical sugar', but having that in Java is great. You can say 'hack' or whatever, but it's still effective and bringing productivity and reduced boilerplate to otherwise plain-old Java.

Scala and Clojure - I've nothing against them, except that they do seem to split the attention on 'alternative JVM' languages. That dilution hurts the chances of any one platform taking hold as the 'next thing' in the Java world, and personally, right now, most of my eggs are in the GR8 world, for many reasons.

I do think Scala is different enough from traditional Java development that broad migration from existing Java developers won't happen, whereas Groovy is so potentially similar that there's little reason for an existing Java dev to have trouble adding Groovy as they learn it. It's not an 'all or nothing' proposition.

If you have any further interest in Groovy/Grails and have any questions, I'd be happy to help if I can - email me directly if you want.

That's interesting. I definitely need to check Groovy out. Plus, the lead developer is a fellow French, so there is one more reason to try it ;)

I agree with your views regarding Scala. It's a really interesting language with a ton of cool concepts, but I fear it might be "too powerful" for the "standard entreprise Java programmers". Java is good, because it is simple. With Scala, you use different paradigms, which might be harder to grasp. It's easier to shoot yourself in the foot / write complicated code. But I guess that's the price to pay for using a high level programming language?

Here is Martin Odersky's take on this debate: http://lamp.epfl.ch/~odersky/blogs/isscalacomplex.html

Gosu also looks interesting as a Groovy contender, though you won't like it, since it dilutes the alternative JVM languages even more ;) http://gosu-lang.org/ http://news.ycombinator.com/item?id=1881924