This week I’ve been mostly reading Programming Groovy – Dynamic Productivity for the Java Developer by Venkat Subramaniam. This is one of those few books where you don’t skim or skip forward, where the author(s) keeps you engaged end to end. The subject could also be a contributing factor; Groovy is quite something. There are a number of “wow” moments as you go through the book, seeing practical ways you might truly enhance your productivity.
I’m a firm believer in ‘convention over configuration‘. Groovy takes all the ceremony, repeated by each and every Java programmer every time, and does it for you. Leaving you to get on with lines of code that concentrate on delivering business value.
As I say there are many “wow” moments learning Groovy, however there’s one that stands out to me as a Product Owner, namely the ease of integration. What this means to me is a team could choose to move gradually to Groovy. The project unit tests could be used to provide the security to refactor Java functionality over to Groovy bit by bit. A steady progression rather than a big re-write. The Java and the Groovy living side by side over a period of time. I think Groovy stands out from the other similar languages, in this regard.
(Thanks Darran for pointing me in the Groovy direction)
Next stop Grails.