Harshad Oak kicked off with the keynote on recent changes in the Java ecosystem. It touched on topics such as Oracle's purchase of Sun, new language features, other languages on the JVM and potential avenues for the growth of Java (viz, cloud computing and mobile development). He concluded with the interesting viewpoint that Java devs would do well to wait, watch and ride the change.
Having landed the first slot of the very first day of the conference, I was pretty nervous about setting the pace right for the event with my DSLs in Groovy talk. I think I did pretty well , especially considering I hadn't gotten any time to practice the deck... at all!
The presentation spun up quite a few interesting discussions such as:
- popular application of DSLs for testing
- comparisons between Grails and Spring
- challenges in the adoption of newer languages in the enterprise.
It was also nice to be followed by another presentation relating to Groovy. Aniket Shaligram of Talentica demonstrated the benefits and caveats of the flex-scaffold Grails plugin by quickly building an app from scratch within a matter of minutes. And I must say, I was very impressed by the Flex view scaffolding, much as I always have been by the HTML scaffolding in Grails. The one concern that I did raise was around this technique landing the team with two MVC apps that need to keep their models in sync; while Aniket assured me that they faced no major hurdles there, experience forces me to maintain a healthy dose of skepticism.
Another talk that was met with particular enthusiasm was Shekhar Gulati's demonstration of Spring Roo. Shekhar also live-coded a Spring MVC app with various bells and whistles (persistence, relationships, security, deployment to GAE, et al). The productivity accelerating qualities of Roo were intriguing, but I've always been a little reserved about it and about Spring MVC in general. I'll leave that argument to a whole other post. :)
The Unconference hour in the middle of day 2 was another highlight of the event. The group discussed various interesting issues such as:
- technology conferences should present more code and less kool-aid
- potential Spring Roo addons
- application profiling tools (JProfiler, VisualVM, IBM Health Center) and their shortcomings
- with Spring gaining traction, would enterprises look to Java EE6?
- should enterprises look at tools/frameworks beyond Spring MVC and Java EE?
The Sun (ok, ok Oracle) presentation on new features in Java EE6 was a welcome refresher. Considering I've been out of touch with that community for quite some time, it served to reintroduce me to a lot of tech as well as bring me up to speed with what's hot there. CDI's cute use of annotation based qualified DI caught my eye in particular.
The networking and open spaces weren't bad either. I got to catch up with a few old acquaintances, make some new introductions, add a few twitter followers and earn some cool hashcred! In hindsight, I actually regretted not getting business cards printed, but the second slide in my presentation pretty much made up for that.
The ThoughtWorks brand carried me well throughout the event even though I did absolutely nothing to indicate I was a ThoughtWorker (big shout out to good ole' TW!) A lot of people wanted to know how ThoughtWorks operates, why I left and what I'm doing now, why others have left and what they end up doing after ThoughtWorks- a somewhat muted (from my end) set of discussions, but very interesting all the same. People were usually pretty surprised when I told that that I actually quit ThoughtWorks to figure out what I want to do next and that I was currently voluntarily unemployed! :)
Well, since this is a fairly contrarian blog, here's what I wish would have gone better:
- better gender distribution; we ended up with just 1 girl in the audience on day 2 :(
- the turnout was pretty low at under 50; is Java as a technology really over the bump?
- demo'ing CRUD apps and then engaging in RDBMS-bashing in a NoSQL plug
- Enterprise still looking at dynamic languages with skepticism
- Harshad calling Scala a scripting language :P
Oh, and before I forget IndicThread Java celebrated it's 5th consecutive year this time, so we got to have cake!