15

We are investing heavily in Java, but after recent experiences and reading Joonas' response on that question:

Had you used those flags in Java 6, you could have experienced not only crashes, but incorrect execution of loops, that is, miscalculations, because of a minor upgrade from 6u19 to 6u20 (approximately).

... and the related blog post about the notable Java 7 issues has caused us to worry about Java's quality moving forward.

Are these issues being addressed by Oracle? What assurances has Oracle provided to ensure Java is well-supported in the future?

Dakotah North
  • 3,353
  • 1
  • 20
  • 31

1 Answers1

36

I sit on the Java SE/EE Executive Committee as the backup representative for the London Java User Group (aka the LJC). I also regularly talk to both the open source community folks (including Apache) and Oracle employees about OpenJDK, community relations and similar topics. I like to think I have a neutral view on this topic, YMMV.

In Short

Oracle cannot afford for Java to fail - their entire software business runs on it, is built in it and breathes it. If it fails, then Oracle is in big trouble and Larry doesn't seem to be the sort of person to shoot himself in the foot.

So I think it's a blip and although some (most?) of the blame should lie on Oracle, it should also lie a little on larger projects that didn't try out the RC.

Can Oracle work better with the community to ensure this level of testing is done? Yes, but it's a two way street at times. Don't forget, Java is massive. It is the most popular language ever (unscientific opinion) and who knows how many trillions of dollars and millions of different types of software are built in it or run on it.

Show me a development team who can claim to have bug free releases on that scale and I'll eat my hat. For example, the JVM has over 1000 person years of effort in it and counting - makes you think doesn't it!

The Long Answer

OK, so there has been a lot of FUD around this topic, which I find a little irritating as the mainstream tech media seems to jump on anything these days in order to bash Java and of course Oracle. [rant]A majority of the tech media seems to refuse to come to the conferences, or read the JCP meeting minutes, or talk to the independent JUG leaders or perform any sane research at all to give a balanced view[/rant].

  • It's a bug, yes which is very serious for some projects
  • There's a workaround that you can use immediately
  • There's already a fix for it
  • It doesn't kill Kittens
  • Yes you should test it first - it's a .0 release!

Now don't get me wrong - Oracle have made plenty of mistakes and will continue to do so. Nobody is perfect and their interests aren't always going to align with every other vendor, user, developer out there.

I feel that the Java community can all learn a lesson from this and that is to get more projects testing out the OpenJDK and JDK builds as they develop. I hope Oracle lead an effort to improve this.

Some general rambling about Oracle, Java and the community

Oracle are trying really hard and have learned a lot from the early days when they took over.

The good stuff:

  • Look at the number of commits in the OpenJDK by Oracle employees
  • Look at the number of employees they have thrown at Java
  • Look at the clear company position that Oracle states in public time and time again which is "Keep Java as the number 1 platform, period."
  • Look at the new invokedynamic bytecode in the JVM that came with Java 7, a change that lets a bunch of languages become first class citizens on the JVM shine.
  • They've got Red Hat, IBM, SAP and Apple all joining the OpenJDK
  • They're putting lots of effort into the JUGs, java.net as a hosting platform, have launched a new Java magazine and sponsor just about every conference I go to. Some of these efforts have been a little misguided or miscommunicated :-), but most are well meaning and genuinely benefit the community.

The need to improve stuff:

Right, now before I sound like a hidden media puppet of Oracle's.

  • They probably should've held back with this release. Mind you, the later betas and RC had been out for some time, perhaps some of these projects could've gotten involved in helping test the builds earlier - IIRC Oracle did ask the community as a whole to try it out.

  • Oracle still has further work to do with the community and restructuring the JCP and how JSRs are run (JSR 348 is the start of this, please get involved!). This of course will eventually include a fresh discussion on the TCK licensing FOU restrictions and other nasty legal things which is what has caused the bad blood with Apache and Google.

  • They handled a bunch of open source projects poorly (Jenkins/Hudson, Open Office and MySQL come to mind) especially on the communication side. At the recent OSCON, a senior Oracle exec explained that many of those projects exist in their own Oracle business silo, there is no overall strategy around open source per say, hence the left hand/right hand behaviour we've seen. The rest is Oracle not understanding the open source community, but I feel they're getting a lot better at it and the will is there.

Martijn Verburg
  • 22,006
  • 1
  • 49
  • 81