Last Friday I attended the Profict Java Summer Camp 2007.
This camp dealed with JRuby and Grails.
First we had a short intro by our host:
Profict. They had a little talk about their company
The first session was about JRuby on Rails by
Charles Nutter.
In his talk he (t/w)alked through the basics of
Ruby and
Jruby itself, and after that, through the JRuby on Rails part.
JRuby tries to bring the power of the Ruby programming language to the Java world. The JRuby code is interpreted by the JVM at runtime.
I saw a particular useful feature in the demo in the second part: the 'migration' stuff: at any time you can migrate your underlying database to a newer or older version.
At this point, deployment is not top notch yet imho: The current method is Mongrel, which has the disadvantage that you have to start x instances in order to have x threads, leading to memory problems.
They are also working on real applicationserver integration, to have threads as provided by the JVM, which is of course a lot better (also for the acceptance in enterprises).
The second session was about Grails by
Graeme Rocher.
He had a split up as well: first he talked about the language
Groovy.
Groovy really is a scripting language for Java. The difference with JRuby is, that Groovy code is compiled to bytecode (It is not interpreted at runtime). That makes integration with other normal Java classes easier.
In the second part he showed Groovy on Rails:
GrailsThe functionality is very similar to the functions of JRuby on Rails, but there are (in my opinion and what I saw) positive differences: with grails it's is possible (at least in the demo) to create taglibs in an easy way compared to the current J2EE way.
Also the real hot deployment and code replacement (grails uses an advanced own classloader) is a nice option.
But the biggest advantage I think, is the fact Groovy is closer the the Java world than JRuby, which makes it easier for developers to pick it up.
After the sessions we had a delicious BBQ, and enough time to talk to other attendants :)
Thanks to Profict for this Java Summer Camp!