Using Groovy in the real world?

XKE

Tonight, we organized our biweekly XKE (Xebia Knowledge Exchange), which is a forum where we update each other on interesting developments or have discussions on various topics.

One of the topics of tonight was: "what keeps us programming in Java"? The underlying thought about it was: what prevents us from programming in a different language, especially a dynamic language like Ruby on Groovy. Because I'm a little more into Groovy than I am into Ruby, I'll talk the rest of the blog about Groovy, but you can probably exchange it for any (dynamic) language.

One of the key factors (and this might sound like an open door) to stick to programming in Java is that we are all very familiar with the language. We have invested time learning it, we know the frameworks, and we have real experience that it works. Furthermore, people know how to manage a Java application, know how to deploy it on an application server, and as an added bonus, IDE's support Java really well.

Real life projects

For Groovy (or Ruby, see above), it's a different case. None of us (or none of the attendants of my session) have real project experience with Groovy. The only experience we have is based on (some quite extensive) non-work related projects. These projects don't really represent the business cases we usually work on, and therefor they don't provide enough basis to support Groovy in a solid way. Some of the fears which came up during the discussion were about:

* Tool support
* Performance
* Manageability/Maintenance
* Knowledge about the language
* Customer support

However, as I stated before: none of us had any real project experience with Groovy, so we don't know if the above concerns really have any impact on our projects. For example: should (or to what degree should) our customer care how we help them solve their problems? And does language speed really impact our application, or do we have other performance problems to solve?

Chickens

Chicken with egg problem

So, what we need is real Groovy projects to get our experience up to par so we can do some real Groovy projects. Hmm, this might sound like a chicken and egg problem. Unfortunately, it's currently quite hard to come up with some real data about projects done in, or with, Groovy. I've Googled around, and came up empty handed.

Question

Therefor I have a question for you: what are your experiences with Groovy (or Ruby) ? What problems did you run into? How did you overcome them? What did you gain by using Groovy? Any insights in getting some real life data will help stimulate our discussion about the next thing after Java, so your feedback is highly appreciated!

Comments (4)

  1. Antonio Goncalves - Reply

    January 9, 2008 at 11:20 am

    Like you I've been using Groovy & Grails on personal projects for quite a while. But recently I've been lucky because I'm actually working for a real project in Grails 1.0RC3. Even if it's a first little step, this project helps us in choosing some tooling (Intellij Idea + JetGroovy; there is also a Maven plugin) and soon we will deploy it in production. It's not a critical application, so no benchmark will be done.

    The good thing is that's a first project and others might come after.

  2. Erik Pragt - Reply

    January 9, 2008 at 12:35 pm

    Hi Antonio,

    Thanks for your reaction. Could you provide some details about your work with Grails? For example, the learning curve, or about customer acceptance, for example regarding the maintainability of the project?

  3. links for 2008-01-14 - Reply

    January 14, 2008 at 10:29 am

    [...] Using Groovy in the real world? Tonight, we organized our biweekly XKE (Xebia Knowledge Exchange), which is a forum where we update each other on interesting developments or have discussions on various topics. [...]

  4. Erik Pragt - Reply

    January 20, 2008 at 5:06 pm

    Guillaume wrote a nice blog post about some Enterprise Groovy usage:

    http://glaforge.free.fr/weblog/index.php?itemid=227

    And so did Graeme:
    http://graemerocher.blogspot.com/2008/01/re-groovy-and-jruby-enterprise-ready.html

Add a Comment