Tuesday, 5 November 2013

JavaOne 2013

So, I thought a few months ago that my blog would become more of a travel blog than a tech blog because of the amount of conferences I was going to. Turned out that I was so busy writing / updating / practicing talks and workshops and, er, travelling, that I never got around to doing retrospectives on the events I'd been to.

So, JavaOne, again, my third year there. I'll always have a fondness for it - because of Martin Thompson, it was the first conference I presented at. I know people always start with "it's not what it used to be" or "why isn't it in the Moscone?". But not having ever been in the good ol' pre-Oracle days, I don't have that to compare it to.

I do have the previous two years to compare it to, however. This year, I think the quality of the presentations was much better compared to the previous two years (although I can't accurately speak for last year as I spent the whole time running between my presentations and other LJC presentations). I learnt something in all the talks I went to this year, in particular:

Lambda: A Peek under the hood - Brian Goetz goes into detail of how lambdas are actually implemented. Not something an everyday developer needs to know in order to use them, but extremely useful if you want to understand things like their performance, and why they're not simply syntactic sugar. Despite thinking I understood this stuff, I still had to watch this twice (once at JavaOne and once at GOTO Aarhus) before I could say I understood it. Totally worthwhile making the effort.

Making Java Groovy - A great, engaging talk about how Groovy and Java can live side by side, and showcasing some of the nice features of Groovy. I found this particularly helpful now we're using Spock and Gradle, and learnt some new tricks.

MongoDB for Hibernate/JPA developers - Obviously Justin is my colleague, so I should give him a shout out. But what I like about this talk is that it does what it says on the tin - introduces MongoDB for those of us who are/were used to working with out databases in a particular way.

I also liked Martijn & Ben's Lean Startup Ninja talk, even if they weren't terribly complimentary towards MongoDB. The talk doesn't seem to be on Parleys yet, but keep an eye out for it - it's a nice, realistic view of the trials and tribulations of running a startup.

These great sessions were really a bonus for me. The main reason to go to JavaOne in my opinion is to meet people - it's west-coast, and I don't get a chance to get to California very often. You see or meet those who are working to advance Java-the-platform and Java-the-language, and there's a big focus on community so you also get to meet as many of the Java User Group leaders as can make it out there. In addition, there's the folks working hard on the java.net website and those involved in the JCP process, deciding the standards of the language. Although there's some overlap between all these groups, by spending some time with all of them you get to meet a really wide range of people. You get to hear what people are working on, what's coming down the line, and often get a chance to influence that too by giving your opinions (nicely, of course!).

Of course there's the parties too, although I've been threatened with being removed from the invite list of the Zero Turnaround party next year since I failed to show up this time. My favourite was the JCP party - great food, and amazing views of the city.

There's some other conference going on at the same time, over in Moscone. Something called Oracle Open World. A few of us snuck over there to take a look at the massive MongoDB stand there (in the heart of Relational-Database-World!). Open World is a scary place filled with people in suits, looking to sell or be sold to. It's also massive. We chatted to our mates there and then ran off to eat burritos.

A bunch of us also got a chance to go to the Google offices in San Francisco. We slid on their slide, tried Google Glass, got photos taken in their photo booth, ate their food and drank their drink. I was pleased to see it wasn't anything like The Internship (a film I tried to watch on the plane on the way over and could not finish - I was really disappointed with the enforcement of industry stereotypes, and the portrayal of elitism. But maybe it's just me). They also have amazing views of the bay.

In Summary, JavaOne is as relevant as it ever was. The themes of this year were definitely Java 8 (lambdas in particular), alternative JVM languages (which now seem to be used enough in mature systems to be viable for more conservative organisations), JavaScript on the server, and as always there's a lot of noise around front end and web, although I'm still not sure Java has a really nice, easy way to create a web application.

JavaOne is still the place to go to hear what's in the pipeline, to meet the people working on this pipeline, and to influence the future of Java.