JavaOne 2010 – Day 1

JavaOne’s first official day started on a beautiful sunny morning, not that I could enjoy the sun very long. I was feeling jet lagged and, awake since 5am, I was ravenous by the time I entered Hilton. The good thing about this venue is that there’s always a Starbucks in proximity. There’s even one in Hilton. First things first, I got myself a cup of coffee and something to eat. The day started with the first sip from my decaf americano.

It feels strange not to walk to the Moscone Center in the morning. It almost feels like I’m attending a different conference this year. Actually, it is a different conference, when you think about it. Better or worse, I’m going to wait until the end to decide. Change never comes easy, I guess, so I’m going to try to keep that in mind if I complain about something new in this year’s JavaOne.

My first session was Mark Reinhold’s “What’s New With Java?”, which has become my traditional first-session-of-JavaOne over the years. Last year, I was hoping that this year’s JavaOne would see the official launch of Java 7. But unfortunately, regardless of the reasons, Java 7’s official release will happen during mid-2011.

This session happened in an immense ballroom. Having tables around rather than rows of chairs was a great idea. It was very comfortable. So comfortable that it hadn’t even been 30 mins when I heard someone snoring loudly at the next table.

During one hour, Reinhold covered the following major points about Java 7:

  • Productivity
  • Performance
  • Universality
  • Modularity
  • Integration
  • Serviceability

He talked about various projects such as the Project Coin and, Project Lambda, Project Jigsaw. There are some nice features that are included in Java 7 such as the diamond operation (<>) to do declarations like

List<int> ... = new ArrayList<>...

Or Value Classes:

value class MyClass {
MyClass property String name;
MyClass property ...

One of the questions that I had in mind after Oracle’s Sun acquisition was about the default virtual machine. Were Oracle going to push jRockit or were they going to keep HotSpot? Well, it turns out that they are going to take some special parts of jRockit and integrate it in HotSpot, creating a state-of-the-art JVM. This is a very good news for the community indeed.

Then I attended the session about Project Coin which was very interesting and had a good technical depth. I’ve already mentioned the Diamond operator (<>) that is part of the Project Coin. But, of course, there are other major features:

Multi-catch with more precise rethrow:
We’ll be able to write:

try {
} catch (final FooException | BarException e) {
throw e;

Try-with-resources (an elegant solution to prevent resource leaks):
Instead of writing:

} finally {

We’ll be able to declare the resources that have to be cleaned from the start:

try (InputStream in = new InputStream(...);OutputStream out = new OutputStream(...)) {
} catch ...

And others like Strings in Switch statements, numeric literals etc.

The rest of the day I attended various others good sessions, more interesting ones being about JAX-RS (Advanced Java API for RESTful Services) and Maven 3 (The evolution of enterprise Java build infrastructures).

The Keynote speech was pretty late during the day and Thomas Kurian repeated mostly what was said during the early sessions. I think the biggest message of the Keynote was that Oracle is 100% committed to Java. To get rid of the black clouds of FUD hanging over Java following Oracle’s Sun acquisition, this message had to be strong. However the biggest news of the day was that JavaFX Script was going to be dropped. Instead JavaFX will be using regular Java APIs. I can definitely see good sides to this decision however I’m afraid that the owners of the systems currently using JavaFX Script won’t be too impressed about it.

The fact that Sun got acquired by Oracle didn’t change their ambition to make NetBeans the #1 IDE. They’re still pushing forward with it. I’m not sure how it can gain a major share in the IDE market unless Eclipse and IntelliJ make significant mistakes.

, , , , , , , , ,

  1. Leave a comment

Leave a Reply

Please log in using one of these methods to post your comment: Logo

You are commenting using your account. Log Out / Change )

Twitter picture

You are commenting using your Twitter account. Log Out / Change )

Facebook photo

You are commenting using your Facebook account. Log Out / Change )

Google+ photo

You are commenting using your Google+ account. Log Out / Change )

Connecting to %s

%d bloggers like this: