Last year when waiting for my flight home from JavaOne, I blogged Possible Ways forward for MVC 1.0. Now, I am sitting here at SFO again writing a follow-up on that article.
As we all now, the JSR was was transferred to me from Oracle to be completed as a standalone JSR. Since then, Christian Kaltepoth has joined me as specification lead. We never did anything about the actual IP, all in full agreement. After all, we are developers and not lawyers and just wanted to get going with the actual work.
It has never been my intention to capitalize on the IP, and I wanted to figure out a way to donate it all back to the community. As those of you who follow the EE4J Community Mailing List probably noticed, I announced the intention to transfer MVC 1.0 to Eclipse Foundation. Read the announcement here:
This does not imply any changes to the current specification work, expert group or time plan. There may be some practical changes, such as a new mailing list and moving the repositories under the Eclipse GitHub Organization, but that is way in the future.
So why Eclipse and not Apache?
Well, it makes sense to follow the other Java EE technologies when they are transferred to the EE4J umbrella project in Eclipse Foundation. MVC would be a natural fit there, but the exact details will be handled by the EE4J PMC.
Usually, you would expect 10 to follow after 9. But in the world of Java™, things move a little faster. Or at least it will be if the proposed release model in Mark Reinhold’s blog post Moving Java Forward Faster is adopted.
The next version of Java™ will then be versioned as 18.3 and be delivered as soon as March 2018. Then we will get version 18.9 in September, and so on.
In my opinion, this is pretty cool. Having a time-based release cycle for Java™ allows for developers to get smaller features delivered faster without the need to wait for the bigger, more time consuming, features to be completed.
I am convinced this proposal will be discussed and commented a lot in the community, so be sure to follow the #javatrain hashtag on Twitter.
I just came off a phone call where Oracle were briefing community members about their announcement to open up Java EE. The process has just started and, understandably, there are currently more questions than answers.
- Oracle finds Java EE to be very successful
- Millions of applications are using Java EE
- Oracle plans to continue support of Java EE
- Java EE 8 will be completed as planned
- Java EE 8 will also be certified on Java SE 9
By stepping aside and relicensing the technologies to an open source foundation, Oracle hope to address the perception about the openness, agility and flexibility of the current process. What this will actually mean to the Java Community Process (JCP) is uncertain. It will at least have to go through some reform to accommodate the new licensing terms.
One thing to note here, and something that is a really big thumbs up to Oracle, is that they are now informing and including the community and key players in the process from the start.
Anyone who followed the discussions and comments about JSR 376 – Java™ Platform Module System, aka Jigsaw, the last couple of weeks, should not be very surprised by the result of the Public Review Ballot. As you can see below, 13 out of 23 EC Member voted no and 10 voted yes.
Please see the Ballot Result Page for details. Make sure you read comments in the vote log to understand the reasoning for the votes. Summarized, the two following comments seems to be trending:
- The specification was not ready to move on as it was submitted
- The discussions and progress during the 14 day ballot period shows that it is going in the right direction
Is this a bad think for Java™ 9?
I don’t think so. This is just an example that the process is working and that the JCP fulfills its role of ensuring the quality of Java™.
Will Java™ 9 be delayed by this?
Not necessarily. It gives the Expert Group an additional 30 days to respond to the comments from the EC before submitting for a Reconsideration Ballot. The actual release date is nothing that is controlled by the JCP.
When Oracle announced that MVC 1.0 was withdrawn from Java EE 8, they also indicated that they were investigating a possible transfer to a community member or organization for completion as a standalone JSR. True to their word, a request for a transfer ballot of JSR 371 has now been submitted to the JCP Executive Committee.
I am happy to announce that I will be the receiving part of this transfer and thus will take over as Spec Lead for JSR 371.
So, why would I want to take over a JSR that ranked so low in the Java EE Survey? Well, there are several reasons for that:
First of all the incredible community support and interest there is for MVC 1.0. For example, JSR 371 is the most widely adopted JSR by Java User Groups participating in the Adap-a-JSR program. No less than 8 JUGs have adopted this JSR!
Secondly, I feel that the wording of the question in the survey may have played a role. The question for MVC was “How important is MVC API for the next generation of cloud and microservices applications? (1=Not Important, 2, 3, 4, 5=Very Important)”. Still, 505 responded Very Important and only 361 Not Important. The rest were pretty evenly distributed. See Java EE Survey Results for the complete numbers.
Third, only 1693 surveys were completed worldwide. Out of 10 million Java developers, this is an alarmingly low number taking into consideration that the survey was open for more than a month and there were massive encouragements for participation from the community, including Oracle.
Fourth, in the Java EE Guardians survey that was performed just prior to the Java EE 8 survey more than 30% of the respondents answered Very Important to the question “How important is it to add a new action-oriented MVC framework to Java EE?”.
The Way Forward
The most important thing right now is that the request for transfer is approved by the EC. The ballot closes January 30, so shortly after that the practical work may start.
…and looking forward to 2017!
2016 was a pretty eventful and great year for me personally. I had the opportunity to speak at a number of conferences including Jfokus, JavaLand, GIDS, CybercomDev, jPrime, Devoxx UK, JavaDay Minsk, JavaOne, JavaDay Kiev, Devoxx MA, Øredev. Links to talks and videos for most of these talks can be found on my Speaker Bio page.
I will continue speaking at conferences and events throughout 2017 as well. First up are Snowcamp.io, Devnexus, jDays, JavaLand, Riga Dev Days, DevDays Vilnius. And I still have some CFPs to submit talks to…
I also took over as JUG leader of Javaforum, the Java User Group in Malmö, and we had four meetings during 2016. The goal for 2017 is to continue with one meeting each quarter.
At the end of the year I won one of the associate seats in the Executive Committee of the Java Community Process. I am really looking forward to starting this work (I am actually going to London for our first face-to-face meeting tomorrow…).
If I should pick one single thing as the highlight of 2016, it would be the accepted to join the Java Champions. It was a surprise and an honor to be handed the Java Champions jacket from Arun Gupta at the closing Keynote of Devoxx UK.
You have probably noticed that the Java Community Process (JCP) has made becoming a member much easier. There is a new membership level called Associate Member which does not require any paperwork or approval of your employer and it can all be done online filling out a simple form.
Why should you become a member?
– It looks good on your resume
– You can join as a contributor to any JSR and help evolve the Java ecosystem
– You get a vote in the upcoming elections for the Executive Committee
Why is the last item important?
Well, I am running for an associate seat in the EC, so by joining the JCP and voting for me in the upcoming election, you make sure that your voice is heard at the very top level of the JCP. My motivation is to give as much power to the community as possible.
Let’s make the JCP Great Again!
Please feel free to contact me on Twitter or discuss in the comment section if you have any questions or comments.
The Java Community Process (JCP) program 2016 Executive Committee (EC)
Elections have started. This is the first election to be held under the newest JCP 2.10 Process Document rules.
One of the new things introduced is that there will be two Associate Seats in the Expert Committee. These seats are elected by the Associate members of the JCP.
I have nominated myself for one of these Associate Seats. See my position statement below.
JCP EC 2016 Position Statement
I don’t think anybody with the slightest interest in server-side Java™, and Java EE in particular, have missed the frustrations (and anger) in the community for the hiatus regarding the specification work of Java EE 8. The activity for most of the Java EE 8 targeted JSRs have more or less stagnated for almost a year, with only a few exceptions.
This has resulted in initiatives such as the Java EE Guardians and the Microprofile.io. Both emerging from a community eager to move Java EE forward to continue being the preferred platform for enterprise Java™.
The minutes from the August meeting in the JCP Executive Committee indicates that Oracle is finally beginning to move. At the meeting, Anil Gaur, Oracle Group Vice President with responsibility for Java EE and WebLogic Server, said:
“…We would like the future of Java EE to be viable to next generation of applications. These apps are composed and deployed differently in cloud and require flexibility, reliability and scale. The platform needs a new programming model that’s geared towards reactive style programming for building large-scale distributed applications that are loosely coupled…”
This year’s JavaOne will definitely be exciting in terms of Java EE. If you haven’t registered yet, do so!
I am carefully optimistic and think that Java EE has a bright future!
I am extremely proud and honored to be included in this exclusive group of Java dignitaries.
The Java Champions are an exclusive group of passionate Java technology and community leaders who are community-nominated and selected under a project sponsored by Oracle. Learn more about Java Champions.