Groovy 2009 Year In Review and 2010 Predictions
The following is my review of Groovy in 2009, and a look at where Groovy might go in 2010.
Groovy in 2009
Groovy 1.6 Released
Groovy 1.6 was released at the beginning of the year, and the most exciting new features have turned out to be Grape and AST Transformations.
Grape
allows a developer to declare dependencies within their Groovy source
code and then, at runtime, Groovy will download and install the
dependencies using Ivy repositories. Want to ship scripts to your
operations team? You no longer need to email or build JARs! It's no
Jigsaw, but maybe that's a good thing.
AST Transformations allow
developers to hook into the Groovy compiler and alter the way the code
is compiled. This has enabled great work like the @Bindable and @Delegate annotations, as well as many forward thinking (read: visionary) libraries like the Spock testing framework and the CodeNarc static code analysis tools. Watch for more cool libraries and frameworks to use these features in 2010.
Griffon Released
While
Flex and JavaFX duked it out for developer mindshare in the coveted
(and hyped) RIA space, a groovier team quietly forked the Grails
codebase and adapted it for Swing desktop applications. Griffon
is way more than a dynamically typed builder pattern on top of Swing
components. Griffon gives you property binding to widgets (you're not
the only one Flex), a standard and simple MVC architecture without a spaghetti monster diagram
(that's you PureMVC), more components than just a TextBox (the complete
JavaFX widget set last Winter), a plugin system that allows you to
decompose problems into reusable addons,
and an easy way to deploy your app via webstart. If the Griffon team
can keep the energy they had in 2009 then 2010 should be the year of
the lion. Or eagle... or dog. What the hell is a griffon anyway?
Groovy Tooling Explosion
Looks like IntelliJ IDEA has some competition for best Groovy IDE. The Groovy Eclipse plugin got new life as Andrew Eisenberg revived the project, and SpringSource released better Grails support in SpringSource Tool Suite.
Was the open sourcing of IDEA a response to the new competition? Who
cares, it's free now! While IDEA is still the best IDE for Groovy,
Groovy users will surely benefit from each IDE maker trying to outdo
the other.
VMWare Buys SpringSource
Seriously, who saw this coming? This week at Groovy/Grails Exchange,
Graeme Rocher demoed deploying to the cloud from his IDE (according to
Twitter). Easy cloud deployment is good news... it will end the monthly
"who do you use for Java hosting?" questions on user groups. Now if
only the price would come down.
GR8 Conference
A Groovy conference
created by the community, for the community, and priced for the
community. It's great to see not for profit additions to the Groovy
conference scene, and next year sees two
GR8 events: one in Europe and one in North America (Minneapolis!). In
other community news, Chicago Groovy Users Group started posting video sessions to blip.tv. Can we get some other GUGs to do the same?
A Groovy 2010
Don't think of these as predictions... think of them more as premature facts.
Gradle
To be clear: Gradle
is not a Groovy technology. It is an enterprise build system written in
Java with Groovy used as a build script. Anyway, the 0.9 release will
include "Smart Execution/Incremental Compile" and 1.0 will support
multi-threaded builds. These are enterprise level features that would
be totally unique to Gradle... and they're sure to intice a lot of
unhappy Maven developers. If the Gradle team can hit 1.0 and publish a
book(!), then a lot of people will migrate.
GPars
I can't find anyone with anything bad to say about either the Fork/Join Framework
or BMW Motorcycles... and I just sold my bike to spend more time
coding. GParallelizer hasn't been widely adopted to date, in my opinion
because it chased the Actor-Model hype a little too strongly. But now
it's been rebranded GPars and an all-star team has been assembled to work on it. This isn't a good project to just
follow, it's a good project to download and play with. Get the bits and
join the mailing list. Your opinion counts! It's too bad that they hate
cool the logo I made for them.
Griffon
The
decision by the Grails team to make almost everything a plugin was
genius. It provides a standard mechanism for everyone to modularize
their own applications, and provides an easy path for users to push
their non-business-critical plugins back into the community. If Griffon
users embrace the plugin system, and then push their plugins back to
the community, then Griffon could be a real alternative to JavaFX/Flex
by the end of the year.
Java Closures
I
wish the JDK team the best of luck meeting their September 2010 release
deadline. While I have doubts that JDK 7 will ship in 2010, I do
believe the closure syntax will be decided upon. And Groovy will be the
first Java language to support that syntax. Whether a version of Groovy
containing Java closures actually ships before
JDK 7 is probably dependent on how the Groovy team wants to address the
modularization issues of Jigsaw, which sounds like a much harder
problem to solve.
Groovy IDE Support Improves... a little
IntelliJ
IDEA still leads in features by a wide margin, but Eclipse and STS
aren't stealing IDEA users, they're stealing TextMate users. People
just want to debug without parsing all the files in the world. IDEA
will remain the sole provider of Groovy refactorings, intentions, and
auto-completions. But Eclipse will finally become a better alternative
than a text editor. However, the open sourceing of IDEA should make it
easier (and faster) to get IDEA support for newer frameworks, which is
a good thing.
Groovy-User Mailing List Shuts Down
For
the entire month of June, all posts to groovy-user will be answered
with the same response: "This is covered in Groovy in Action 2nd
Edition". By the end of the month admins will simply replace the
mailing list home page with an advertisement for the book.
What Won't Happen
InvokeDynamic
InvokeDynamic
is set to greatly improve implementing and running dynamic languages on
the JVM. Only it won't be released until September 2010 at the
earliest. Sure you can get the OpenJDK now, but most users won't do
that. I predict InvokeDynamic being the story of 2011, not 2010... and
even then I bet the JRuby guys beat us to it.
The Java Store
Let
me get this straight... you want me to pay US$50 yearly so that I can
give my Griffon app away free on the Java Store? You gotta be kidding.
Griffon + the Java Store could
be a match made in heaven: Griffon makes JNLP Webstart simple to
configure and the Java Store handles hosting the files. But Sun/Oracle
is turning too many hobbiest and small time developers away with their
entrance fee. Are you listening Mr Ellison? I said I want... oh wait,
you're not listening. How hard would it be to make the Groovy Store?
This was fun. What are your Groovy 2009 highlights and 2010 predictions?
(Note: Opinions expressed in this article and its replies are the opinions of their respective authors and not those of DZone, Inc.)






Comments
Beth99 Zhu replied on Sun, 2009/12/13 - 11:53pm
www.worldgoldshop.com