SPJCN III: JavaOne 2016

In the third issue of SitePoint’s Java Channel Newsletter (from October 7th 2016) I summarize JavaOne 2016 and recommend interesting talks to watch.

As promised I spent the last two weeks watching as many talks from JavaOne 2016 as possible. But, boy, are there a lot of them! So I decided to focus on those discussing the language itself.

Nucleus of JavaOne 2016

Before I give you a selection of interesting talks I actually watched, let me list five of those I didn't but think sound interesting:

Of the ones I watched I only present some here. Read my post about JavaOne for a deeper cut through the conference program. The conference obviously centers around Java SE and Java EE, so I'll split my report accordingly. With that let's cut the cackle.

Java SE

Java SE had its own keynote, which started with some marketing bla. After that Mark Reinhold got on stage to tell the audience about Java 9 in general and jShell and Project Jigsaw in particular. It got even more interesting when Brian Goetz joined him and revealed two very interesting ideas that are on the table:

  • class Point(int x, int y) { }, where the compiler generates fields, constructors, accessors, proper equals, hashCode, and toString for x and y.
  • var url = new URL("https://sitepoint.com/java"); where the compiler deduces the type fpr url.

Then there were a surprisingly large number of talks discussing Java 8. Of those, I found Stuart Marks' and Brian Goetz' Thinking in parallel. as well as Maurice Naftalin's Journey’s End: Collection and Reduction in the Stream API very interesting.

And of course, there were plenty of talks about Java 9, even ignoring the ones about Jigsaw. For those with little contact with the upcoming release, I recommend JDK 9 Language, Tooling, and Library Features, which is pretty much a spoken version of my ultimate guide to Java 9 (but it also covered some of the still unpublished second part). A cool thing to watch is Interactive Development and Fast Feedback with Java 9 REPL, which demos jShell, Java's brand new REPL.

Java EE

First things first: Java EE 8 is scheduled for September 2017, version 9 just for one year later.

The vision for the Enterprise Edition is presented in the Java EE Keynote. In one word: cloud. If you're interested in the state of the Java EE union and particularly the upcoming version 8, Linda DeMichiel's Java EE 8 Update has you covered.

Here are a couple of talks that present the current state of support for various updated standards:

What Else Is Going On?

Peter Hintjes passed away on Tuesday. I don't feel equipped to write something that matches his importance for the software community, so I won't. Instead I recommend to read his protocol for dying. ... After that it's not easy to get the newsletter back on track. ... But I don't want to finish on a gloomy note, so let's push through.

Last week our channel took a little detour into functional programming when we presented the combinator pattern and discussed why Optional breaks the monad laws and, more importantly, why you should care. FP is a great topic, especially with lambda expressions at our disposal, and there will be coming more about it soon. This week we got back to normal with a post about schema migraton with Hibernate and FlywayDB and my summary of JavaOne.

By the way, did you miss the articles about the Servlet API and Dropwizard that I promised? Because I was away last week I let the authors hanging and we couldn't finish editing them in time. But now they're scheduled (like in "reviewed and ready") for next week, so they're really coming this time. No, really!

Finally, nobody seemed to have cared about the technical details behind Java 9's delay. Ok, point taken and post averted (for now). Other than that JavaOne seemed to have frozen the entire eco system and I feel nothing much happened. Or did I miss something?

Wrapping Things Up

Let me leave you with a couple of articles I think you might find interesting:

I wish you a great time!

so long ... Nicolai