Continuing adventures with Grails – now we’re getting Groovy

I had a few hours this weekend to continue investigating the possibility of using of using Grails and Groovy to implement a solution for a client, and I’ve learnt enough at this point so say for this project I am committed to using Grails.

I was already liking what I was seeing, but was uncertain early on if this could realy do the job, but now I am sold. It really is Groovy; it is awesome. The productivity gain from using the ‘coding by convention’ approach made popular by Ruby on Rails really is awesome. It is amazing. In comparision with working with multi-layered architectures where as a developer I have to code each indiviidual slice in the application from end to end and then spend just as much time on the configuration to wire them all together – this is amazing. Groovy and Grails are so concise and gets the job done with minimal effort and coding, and yes – minimal if any configuration.

Ok, I learnt a few lessons at the weekend, and came across a couple of issues that I logged with Grails JIRA:

TheServerSide.com – Comparing EJB2 to JPA – Why? I’ll tell you why.

TheServerSide.com have a question posted on their site this morning asking ‘Comparing EJB2 and JPA – why?’.

Ok so the technologies are now radically different and improved, and of course once you have seen the JPA api, there is obviously no turning back, providing you have a platform available that supports it.

These are two of the main reasons why it is important to make the comparison – the main reason – to educate developers and get them up to speed with the new EJB3.0 spec.

But surely this is such an awesome development and step forward for Enterprise Application development that any developer worth their salt will already be intimately familiar with the spec? Yes, of course it is awesome, and is how the EJB spec should have looked from day 1. The main problem I am seeing from working within my own Java developer community is that developers who will most likely be using EJB3.0 tomorrow are already entrenched in EJB2.x projects today – they are so busy working on current implementations that they have not had time yet to surface and see what is going on in the world. Yes they have heard of EJB3.0, have probably not heard of it referred to as JPA, and yes they would love to have time to read the spec and have time to prototype some apps, but they’re too busy right now.

It’s ‘the curse of the long running project’ – projects that were scoped and designed as long as 2 or even 3 years ago are still knee-deep in development implementing functionality on top of whatever technologies were chosen during the project’s inception. For 2-3 year old projects coming to a close, this is likely to be J2EE 1.3 and yes they are still using EJB2.x. If you’re lucky a long-running project may have in it’s contract the allowance to upgrade to latest API and technology releases along the way, but in most cases this is unlikely since this most likely does not buy the customer any inprovement in functionality, although may be desirable for long time maintenance.

New Hibernate book on the way from the Hibernate team

Christian Bauer has an update on the Hibernate blog about the status on the second edition of the Hibernate in Action book. Apparently there has been so much additional material added to the book that they’re changing the name to ‘Java Persistence with Hibernate’.

The new book will cover Hibernate 3.0 features in addition to Java Persistence API features (EJB3.0 Entities).

Can;t wait to get a copy of this one, as HiA in my opinion was and still is the best Hibernate book published.

OnJava.com: Telling Stories at JavaOne

Daniel Steinberg has an interesing account of the Key Notes from JavaOne this year – he mentions in his article that they were lacking the ‘rally the troups’ enthusiasm from prior years. Was it that they were missing the McNealy-style jokes with his always anticipated Microsoft bashing?

I ony got to attend one day this year on Wednesday, and I admit the keynotes were a little bland. The BEA afternoon session was more of a corporate invester conference call than typical conference Key Note material. I had to leave early to get a train, but from what I saw, there wasn’t anything that got me that excited.

I can see Stenberg’s point. The last JavaOne I attented was 2001, and after every Key Note you left feeling so pumped up about Java that you wanted to race out of the hall and start coding! There was definitely less of that enthusiasm this year.

However, the emphasis seemed to have shifted out to the sessions themselves – the sessions I attended did make me feel ‘wow – that was awesome!’ each time they completed, and I am definitely fired up about new technologies such as EJB3.0 and Groovy, even though I had already been working with both prior to the conference. There still is definitely something very refreshing and invigorating about attending tech conferences – you leave feeling energized and empowered with new technologies and skills – and then get back to the real project world and realise – ‘oh, we’re still using J2EE 1.3’ … 🙂