Interview text for Response to Oracle Java EE 8 Plan
08 August 2016 Comments off
Reading time:
5 minutes
Word count:
942
I replied to Paul Krill for his recent news article on Infoworld. This is my exact verbatim reply to his questions:
Paul: Are you satisfied with this plan?
Me: Well the simple answer is no.
Paul: Any criticism?
Me: It is not much of a plan, because the community is still left with guesswork as to the future of Java EE 8 in general. Reading between the lines “Java EE version 8 may provide much-needed benefits for enterprise organisation targeting containers and the cloud”, the idea of bring cloud-computing into the Java EE goes all the way back to 2012, when Oracle was still conceptualising multi-tenant and administration for the Java EE 7. The other members of the Expert Group managed to change Oracle’s mind. I actually wrote an entire chapter about cloud concepts for Java EE 7, it did not make my book and is available as an online chapter.
Me: I have two points:
Me: The idea of Oracle unilaterally investing in the cloud enhancements is actually important, because the brand of Java EE is out of a date. The trouble is that the schedule for standard Java EE slips because Oracle wants the quality of their Cloud platform solution to succeed and be high. Therefore, as any project manager knows, it incurs high cost and high scope.
Clearly Oracle have not learned the lessons of the EJB 1.0 debacle where there was a design-by-committee. Inventing the API and then building the implementation, proof of concepts, was problematic. Instead as we say with Hibernate and KodoMetric, API Innovation tends to happen outside the standardisation process and then when multiple implementations exist that look like they achieve the same function, then we can collaborate and make a standard.
Paul: Are you participating in the Java EE Guardian efforts?
Me: I am not actively participating directly, however I have already signed the petition.
Paul: Is Oracle’s cloud push the right idea?
Me: It depends. I believe it is the wrong idea if it delays the Java EE 8 standard. It is absolutely depressing, because these are technologies that can help the enterprise platform moved forward. And yet, I have bad feeling about the brand “Java EE” now. We still are not overcoming the “J2EE”, which has been dead since 2005. It casts a very long tail shadow over Java enterprise.
Me: The brand “Java EE”, in my opinion, requires rebuilding, extending and/or renaming. Perhaps, this is Oracle’s chance as the steward to generate “Java EE Cherry Cola X”. We need something amazing to break the iron chains of J2EE. Oracle has an amazing chance to reinvent the brand, Java EE. I hope that they really take the opportunity.
Me: One thing for sure, the new solution clearly must to be flexible enough to modularise the platform and the capabilities of application. This is coming with Project Jigsaw, Java 9, that’s granted. We need to figure out how to get the deployment, security, administration and monitoring of an enterprise platform application correct going forward. We also need to get Java EE streamlined for interactive fast pace development. This means tooling. JavaScript / NodeJS has sniping at Java legs for quite a while, and people who work Ruby, PHP and other dynamic languages have long laughed at 250K lines of Java to build a digital site. Simply getting rid of XML Descriptor Hell is not good enough for this modern world.
Paul: How would you feel about another delay in Java EE 8?
Me: It would be yet another delay will be PR disaster. Clearly Java EE 8 requires a fantastic road of map. If I was the so-called `Head of Java EE 8 Development / Technical Director’ I would have given the town hall meeting to 1000 members of staff, printed off hundreds of tee-shirts, sold the movie rights and the published the general idea by now in order to get the buy-in.
Paul: Any other comments?
Me: I believe the focus on multi-tenancy inside an application, especially a single WAR misses the point. Many clients are interested in spinning a server of some time with a specific function and application speaks to a database. It might be NoSQL like MongoDB, or back to a RMDBS like Oracle, MySQL or Postgres. I just haven’t seen a unique use case for multi-tenancy sharing the same application across a single database. Why wouldn’t the system and dba administrator create the schema? It smells like old application server thinking to me. I can see the point if there were many people in the industry that wanted to build a SalesForce-like SaaS on some cloud infrastructure.
Me: I welcome the positive thoughts around reactive programming and asynchronous application. The inventors of the Play Framework really hit out on the complexity of the Java Servlet API and completely avoided this abstraction. I would also like to see a baseline on Java SE 8, because we shouldn’t be supporting the laggards of the industry any more. If businesses want to stay stuck on Java 1.5 then let’em rest in eventually in eternal peace. We have to say, we can’t afford them.
Me: Finally, I would be cautious on the hype around Micro-Services. I seen them created for applications that only had 3 active developers. Instead, I would favour architecture that enable modular applications and services to be built. The amount of ugly monoliths, especially started in the ancient J2EE world, that I have seen are countless.
+PP+
August 2016