Thursday, October 27, 2022 - 06:00
  • Share this article:

Hot on the heels of Jakarta EE 10, work is underway developing Jakarta EE 11. This latest release not only marks the first major update in functionality to the Jakarta EE project since its migration to the Eclipse Foundation but is the first step towards the project finding its feet and starting to step into a regular release cadence. While we’re still in the very early days, there’s already a lot to be excited about for Jakarta EE 11. To understand why, you need to understand a bit about how Jakarta EE 10 came together.

Jakarta EE 10 Had De-Facto, Not Pre-Defined, Goals

A lot of work has already gone into making Jakarta EE what it is today. In the earliest days of the transition to the Eclipse Foundation, much of that work was focused on making sure everything had been transferred over properly, and in accordance with the necessary legal requirements. This was a big job, and needed to be done, but that meant that until it was done there couldn’t be any work on Jakarta itself. Then there was the move to the Jakarta namespace, which was another big job that didn’t produce any functional changes in what could be done with Jakarta or how it was used. 

Finally, after all of that, work got underway on making some actual upgrades to Jakarta EE, adding features and quality-of-life changes. But that work got underway well before we’d had a chance to sit down and figure out some priorities for the project: that only happened about halfway through the development process. Essentially, we pulled together some of the things the community was working on into some broad themes.

Setting a Direction to Guide Development

This time, we thought we’d get ahead of the game. 

The first goal we needed to decide on was which version of Java we were going to be based on, because that’s quite fundamental. Second was to decide when the release was going to be, since that would tell us how long we would have to work on the project. That also played into the style of release that we would do, which is a release train: basically, everything that’s ready to go by the deadline makes it in. And the third goal was to set the actual broad priorities. 

We really wanted to have all this ahead of time because having this statement of intent, this direction, is useful both for contributors and end users. As a consumer of the specification, obviously, you want to know something about the direction it’s headed in. 

But it also makes contributing a lot easier. If you have a sense of the direction of a project, that can help get the gears turning about what you might want to work on, vis-à-vis code. Plus, with a stated direction, we can ensure we aren’t getting bogged down in the weeds of the technical details and losing sight of the purpose these features are meant to achieve. 

But what’s exciting and different about Jakarta EE 11 is how we went about it. 

Broad Consultation Drove Priority Generation

There were three consultative stops along the path to setting priorities. 

The first was, probably unsurprisingly, the working group itself. And that’s not just the steering committee: all of the members of the working group had the chance to comment. We included different options for dates, as well as Java versions, and left blank spots for members to include their own thoughts and ideas. 

Next was the Jakarta EE Platform project. They guide the technical work for the overall platforms rather than the individual specifications, so we wanted their high-level input. And they crowdsourced their ideas for priorities from their committers. 

Finally, we went to the marketing committee. That was for the simple reason that they had the results of the annual developer survey, so if anyone is going to have their finger on the pulse of what the community at large wants and needs, it’s the members of that committee. Plus, they also have good ideas about where Jakarta EE’s challenges are in the rest of the market, and maybe how it can help differentiate itself. 

The steering committee really did not want to dream up Jakarta EE 11 in isolation. At the end of the day, we’re trying to build solutions and make Jakarta EE ready to meet the needs of the developer and Eclipse Foundation communities. Our work continues with that goal in mind.

Learn More About Plans For Jakarta EE 11

The 2022 JakartaOne Livestream is a great chance to ask questions about the direction of Jakarta EE 11, and hear from the people who will be contributing to the release. Registration is open now.

About the Author

Steve Millidge

Steve Millidge

Steve Millidge is a PMC member for the Eclipse Enterprise for Java project, a project lead on numerous downstream Jakarta projects, and a founder of Payara Services Ltd.