This year's JavaOne saw many interesting announcements from Oracle and the Java community, and within the enterprise domain the most important news was that the Eclipse Foundation will become the new custodians of Java EE. InfoQ recently sat down with David Blevins, a long standing member of the Java EE community, and discussed what this move will mean, the impact for the industry, and how developers can get involved with "EE4J", the future of Java EE.
Blevins, founder and CEO of Tomitribe, began the discussion by stating that before the move of Java EE to the Eclipse foundation it was often difficult for developers to easily get involved with contributing to the Java EE specification and code. The emergence of the MicroProfile project over the last year has provided insight into how a more open Java EE community could flourish, and this will be positive for both the traditional Java EE and Spring technologies. The talk concludes with Blevins making a call-to-action towards cloud vendors, suggesting that the implementation of a EE4J-enabled Platform-as-a-Service (PaaS) could be a "potential goldmine" that allows organisations looking to "lift and shift" Java EE workloads to the cloud.
InfoQ: Hi David, thanks for joining InfoQ today. Could you briefly introduce yourself and your role within Java EE please?
David Blevins: I like to joke that I worked my way up from the mailroom of Java EE. I started in 1999 with a friend creating an open source implementation of EJB 1.1, OpenEJB. I was only 23 at the time and had not the first clue on what EJB or Open Source was. Fast forward many years and I'm standing on stage in the JavaOne keynote next to Oracle, IBM and Red Hat giving away Java EE to Open Source. Tomitribe, the company I founded to support Apache TomEE, is a Java EE licensee, on the Java EE Expert Group, part of the JCP Executive Committee and very invested in the Java EE space in general.
InfoQ: This year's JavaOne saw lots of exciting news for Java EE. Could you summarise and share any more thoughts on this?
Blevins: Of course, the headliner is Java EE being donated to the Eclipse Foundation. The new project, EE4J, will be an entirely Open Source platform with open compliance test suites (TCKs), open governance and a faster process for specifications. Several artificial barriers are being removed and the impacts to the Java industry will be many. I'll hit two.
The first is the next generation of EE implementers will not have to spend 18 years working their way up from the mailroom as I did. They will be able to do it in a fraction of the time. The barriers to entry have been proving yourself to get into an Expert Group or gaining access to TCKs so you can implement a specification and claim compliance. These barriers are gone and we will see new EE4J implementations, primarily by younger developers, start entering the space. They're going to inspire each other and drive a new wave of their own style of innovation.
The second is that the IP model around Java EE has artificially strangled innovation. IP flowed to the spec lead who then licensed it back, usually for a fee, to those who contributed and want to implement it. Over time one person grows stronger while the rest grow more dependent. We're all technical people, so we often only look for the technical reasons why things have slowed down. Our model hasn't encouraged innovation over a long period of time and in many ways has discouraged it. Under an open source license, this barrier goes away. We have had the impression the larger vendors are simply too slow, when in reality they've been handicapped. If you want a preview of what happens when we can all contribute without this barrier, take a look at the Eclipse MicroProfile.
InfoQ: How does EE4J relate to MicroProfile and vice versa?
Blevins: I think the Eclipse MicroProfile was just what was needed to show a new model for innovation. In the first 15 months we created and released five new specifications and have another four or so on the way. Those of us who founded the MicroProfile, IBM, Red Hat, Payara, LJC and Tomitribe, wanted a way to supplement the existing JCP-based Java EE ecosystem by creating a faster moving space for new ideas to incubate and prove themselves before becoming standards. That mission has definitely been accomplished and with EE4J also at Eclipse the ways in which we can take it further will only increase. How the two grow together or if they will at all will depend on both communities, of course, but considering it is largely the same people in both EE4J and MicroProfile I think there are good odds of strong synergy, potential merging and MicroProfile specifications being leveraged in EE4J.
Not speaking for anyone else in the Eclipse MicroProfile or EE4J, I personally love the sound of "EE MicroProfile" and think there are good reasons to consider moving MicroProfile under the future EE4J Project Management Committee (PMC) as a subproject. I think we'd still want to keep MicroProfile as a rapid incubator of ideas as this role is still very much needed regardless of where EE4J standards are developed.
InfoQ: The Spring framework (and Spring Boot) is currently a popular choice for Java developers creating microservice applications. How do you think Spring will be impacted by the recent Java EE news?
Blevins: Hopefully positively. Spring brings a lot valuable things into the Java ecosystem and I honestly don't think either Spring or Java EE would be half as successful without each other. That community has rightfully pointed out issues such as lack of agility and licensing. With those gone I hope we begin seeing some closer collaboration between the two. With competition coming in from non-Java places like Node.js, greater collaboration is within our best interests.
One thing is clear. I think Spring has had the benefit of an older and slower moving competitor in Java EE. With EE4J being the younger faster next generation of Java EE, EE4J and Spring are likely to have a lot more on common and a lot more fun playing together.
InfoQ: The big news for Java SE at JavaOne was the release of Project Jigsaw - modularising the JDK. Will this impact the future of Java EE in any meaningful way?
Blevins: I think it's too early to say. There is no doubt that if we were to create Java EE all over again on Java 9, there'd be no need for constructs like wars, ears, rars or even jars. That said, Jigsaw can help us trim runtimes down as much as it can help us fit more modules into a single JVM. With the current focus on Microservices and light runtimes, in this space is likely where we'd see the most potential benefits.
InfoQ: Thanks for taking time to speak to us today. Is there anything else you would like to share with the InfoQ readers? What is the best way to get involved in the future of Java EE?
Blevins: A special mention needs to be made about cloud providers like Google, Microsoft and Amazon. All of them have PaaS implementations which could be offering lift-and-shift options to Java EE shops, which often represent a massive chunk of people who still run on-premise and cannot figure out how to go to the cloud.
Due to licensing restrictions -- there it is again -- it did not make sense to do that. Instead, you often find infrastructure that looks a lot like some common Java EE concepts, but does not reuse existing APIs. One of these players is going to get wise and see the unrestricted gold mine in front of them and start mining. When that happens, I think we're looking at a domino effect that could lead to us having a much stronger PaaS story as an industry over the next 10 years and new standards.
Take a heavily regulated industry or ecosystem, remove the restrictions and barriers to entry and magic starts happening. Though they may seem similar, we all need to understand Java EE is a taxi, EE4J is an Uber. Our next 10 years are limited only by our creativity.
To all the young developers out there, come make your mark. Join the EE4J community mailing list, follow and start getting involved. EE4J is yours for the taking. In 10 years time you'll all be running the show. Make sure you're on top.
Additional information on EE4J can be found on the Eclipse Foundation web page "The Eclipse Enterprise for Java Project Top Level Project Charter", and further details on announcements made at JavaOne 2017 can be found on InfoQ:
- Oracle Announced Plans to Open Source All Features of Their JDK and Address Shortcomings in Java EE
- JavaOne Keynote: Oracle Talks Blockchain, Bots and Serverless
- Oracle Chooses Eclipse Foundation as New Home for Java EE
Readers can also keep up to date with all Java-related news by visiting the InfoQ Java homepage.