A mixed reaction from the Java ecosystem

Project Jigsaw delayed until Java 9 - The Reaction

Mark Reinhold's announcement yesterday that Project Jigsaw, the eagerly-anticipated standard module system, would now be delayed until Java SE 9 in 2015. The proposal was met generally with ire, although some did come out in support of the decision.

To recap, Reinhold, the Chief Architect of the Java Platfom Group at Oracle, gave the following reason for the deferral of Project Jigsaw:

Steady progress is being made, but some significant technical challenges remain. There is, more importantly, not enough time left for the broad evaluation, review, and feedback which such a profound change to the Platform demands.

I therefore propose to defer Project Jigsaw to the next release, Java 9. In order to increase the predictability of all future Java SE releases, I further propose to aim explicitly for a regular two-year release cycle going forward.

Reinhold goes on further to explain why he opted to keep the two-year release cycle, in expense of arguably the biggest feature targetted for Java SE 8. It's a fine balance, keeping the enterprises happy with stability (with as short a release cycle as they can possibly accept) and the wider community hooked with innovation.

The general consensus from the Java community however, has been one of disappointment, and it's fair to say some are quite angry at the further delay for a much-needed modularisation introduction to the language. Just by glancing at the comments on Reinhold's blog reveals how vehemently opposed some are, although it's about 50/50 for the decision. For example, Markus Karg wrote the following:

In fact it is a bit ridiculous that Jigsaw is stripped from JDK 8 as it was already stripped from JDK 7. What will be next? Moving it to 10 after 9, 11 after 10? Just give up the idea and use Maven. It's here already and serves well. Also the time frames are rather fantastic. A two year release seen as a big improvement? Maybe when thinking in astronomic dimensions. Why not following the release often approach, having one release each Summer?

The 'just use Maven' brigade are certainly there (with equal discontent shown towards them too), whilst many advocate the use of OSGi in the long-run. Although Oracle seem resistant to that. We understand the decision to let the train leave the platform, but what is the point if the train has no cargo, as Jim DeVos commented.

This puts a lot of pressure on Lambdas and the Date/Time API as part of the Java SE 8 release, but is it really enticing to enterprises to pick up Java SE 8 when it now looks devoid of a major component as promised? Are they enough to suggest Java is heading the right way, continually innovating? Whilst it should now ship on time, the minor-major cycle has certainly been disrupted.

Interestingly, Groovy Project Lead Guillaume LaForge gave his two cents, explaining how Groovy went about the modularity problem:

We didn't go too far with modularity in Groovy 2... because we didn't want to duplicate what was supposed to be coming in Java 8. 

But now, it means it won't be in the hands of developers before 2 years, and in production before 3 years :-(

It means that Jigsaw, if it ever ships, will have been 5+ years in the making. That sounds a lot, even for such a big feature and task.

An excellent point made - whilst Project Jigsaw is clearly a huge undertaking, that amount of time doesn't really add. Will Project Jigsaw ever see the light of day? The pace we're going at the moment seems to suggest that we may not. 

So where does this leave Java now - a bloated mess of a language? Will it be left in the dust of other JVM languages that display some semblance of modularity already, like Scala and Groovy.

There was no easy decision to be made here, with people bound to be upset by it, but we want to know your views on this - was it right to defer Jigsaw? Comment and vote below...

  • It was the right decision if it wasn't ready for Java 8
  • No Jigsaw is annoying, but time should be taken on it
  • Other options should have been considered instead of Jigsaw being missing
  • Jigsaw should have been pursued - some module system is better than none
  • Java 8 is no longer a big release - Java needs a module system badly
Chris Mayer

What do you think?

JAX Magazine - 2014 - 06 Exclucively for iPad users JAX Magazine on Android

Comments

Latest opinions