I had the pleasure of talking with Edwin Derks about Jakarta EE, MicroProfile, and engaging in the community. Check out the entire chat below.
Welcome to the eighteenth issue of Hashtag Jakarta EE!
In the following video, you can watch an interview I did with Martijn Verburg regarding his nomination to the Jakarta EE Steering Group representing London Java Community.
When talking about YouTube, I have been busy recording a couple of tech tips for how to sign off your Git commits when contributing to Eclipse Foundation projects. All these tips are collected in a Playlist in the Studio Jakarta EE YouTube channel.
For convenience, I have listed a summary of the commands I used in the video here.
# rebase git rebase -i [hash of the commit before the one you want to fix] # replace the word 'pick' with 'edit', save # add signed-off comment to the commit git commit --amend -s # continue the rebase git rebase --continue # finally force push the updated commits git push origin [your branch] --force
And we’re not done with YouTube just yet. This week, we launched the Jakarta EE YouTube channel.
How is this different from Studio Jakarta EE, you may wonder…
The answer to that is that I don’t know yet. It may make sense to merge them sometime in the future. Or keep them apart since the type of content may be a little different. My idea with the Studio Jakarta EE channel is to have a lightweight platform for Jakarta EE related content of varying types, such as interviews, tech tips, live streams, panels, trip reports from conferences, etc. So please, go ahead and subscribe to both. That way you are sure not to miss out on anything.
Welcome to the seventeenth issue of Hashtag Jakarta EE!
The nomination period for the Jakarta EE Working group elections has closed. Now, it is up to the candidates to convince you why they should get YOUR vote. To help with this, I have offered each candidate a short Studio Jakarta EE interview.
Next week, I will be conducting interviews with more of the candidates. So, tune in to Studio Jakarta EE to learn more about the candidates before casting your vote!
At the end of this hashtag, I want to remind you of the Jakarta EE 2020 Developer Survey.
There is a very interesting discussion ongoing on the Jakarta EE Community mailing list about forking Eclipse MicroProfile as Jakarta Configuration. While the discussion on the mailing list initially is about the MicroProfile Config specification specifically, it also raises the question of how the strategy of Jakarta EE should be for technical alignment with Eclipse MicroProfile.
A couple of weeks ago, there was a vote in the Eclipse MicroProfile community about how the technical alignment with downstream consumers. Two approaches, the Pull Model and the Push Model were voted on. The Pull Model got the most votes, and thus was selected as the strategy for technical alignment.
In parallel, the discussions regarding the creation of a MicroProfile working group have been going on since October last year. Several suggestions have been explored, including separate working groups, a combined working group with Jakarta EE, or a combination of the two with two working groups linked together with an umbrella working group.
The latest development in this working group discussion is that the Eclipse Foundation has asked the MicroProfile Community to define a charter for a MicroProfile working group independent from Jakarta EE.
Whether there is a single working group, a group of working groups under an umbrella working group, or just independent working groups is actually not relevant to this discussion. The technical alignment will still be the same. The MicroProfile community has chosen the Pull Model, and this is something Jakarta EE needs to figure out how to relate to.
In my mind, it is pretty simple. Jakarta EE should create a fork of the specifications that makes sense to make a part of the Jakarta EE Platform. There are several reasons for this. I have touched upon a couple of them here.
MicroProfile wants to move fast and break things, while Jakarta EE wants to maintain a certain level of backward compatibility. By creating a fork, Jakarta EE won’t have to address this concern since it will then control the life cycle of its specifications.
Java EE, and by succession Jakarta EE, has always been a very cohesive platform. A central piece like configuration will be used throughout the entire platform and it only makes sense that it is in the same namespace as the rest of the platform.
By maintaining a fork of the specification, Jakarta EE is free to make modifications that are relevant for Jakarta EE, but maybe wouldn’t be relevant for MicroProfile.
As I pointed out in Hashtag Jakarta EE #11, the headache of diverging tines of the fork lands on the vendors that support both Jakarta EE and MicroProfile in the same product. Therefore, it is kind of interesting to see that the vendors that were most in favor of the Pull approach that are all shipping products that are both Jakarta EE and MicroProfile compliant. So, clearly, they must have thought about this and have a solution in place.
Some other reads on the same topic
Welcome to the twelfth issue of Hashtag Jakarta EE!
This week, I should have been speaking at JavaLand, one of my favorite conferences.
But as you are aware of, this conference was added to the long list of cancelled events this spring.
Being a Developer Advocate normally involves a lot of travel and interacting with people face-to-face. Now that we’re all grounded in one way or the other, I have been exploring the various options for creating video content, either by live-streaming or prerecorded sessions. It is a jungle! The rest of this post describes some of the efforts we have started up this week.
I am super happy with the free Crowdcast channel for JUGs that we were able to set up with funding from Jakarta EE. Make sure to add it to your bookmarks and follow the channel for updates on upcoming events.
At the Eclipse Foundation, we will also start streaming a series of interviews, discussions and live events on the Eclipse Foundation Crowdcast channel.
If you are still hungry for more, take look at the recordings from last year’s Jakarta One LiveStream.
Welcome to the eleventh issue of Hashtag Jakarta EE!
It’s been a special week. But at least, in our industry, we are pretty well equipped and used to remote working. Let’s just cross our fingers and hope that the measures taken will get the situation under control and we can get back to normal as soon as possible.
Supporting the Community
At the end of the week, we launched an initiative sponsored by the Jakarta EE Working Group to enable Java User Groups around the world to stream live events for free using our Crowdcast account. This will be available for at least as long as physical meetups are put on hold due to the Covid-19 situation.
Over to some updates about what is going on in the MicroProfile community.
Push vs Pull
The hangout this Tuesday was in entirety devoted to discussing the Pull vs Push approach for technical alignment with other standardization bodies, such as Jakarta EE. The vote is ongoing and will be closed Tuesday, March 17. Check out the MicroProfile Calendar for details about how to join the MicroProfile hangouts.
The current status of the voting indicates that the decision will be to go for a Pull model. What will this mean for Jakarta EE?
Implications of Pull
The obvious consequence of the Pull model is that if Jakarta EE decides to pull in a MicroProfile specification, it will essentially mean a fork. For those runtimes supporting either MicroProfile or Jakarta EE, but not both, it will be business as usual.
Those supporting both will have the headache of figuring out how to implement this. This will probably not be a hard nut to crack until one, or two of the tines of the fork, start evolving.
A possible Scenario
Let’s say that Jakarta EE decides to pull in MicroProfile Config and create a specification called Jakarta Config. The base package is changed from
jakarta.config and the specification is added to the Jakarta EE Full and/or Web Profile.
Other Jakarta specifications are now free to reference Jakarta Config and implementations are required to implement it in order to be Jakarta EE Compatible. Products out there supporting both (e.g. OpenLiberty, WildFly, and Payara to mention a few open-source implementations), will now have two configuration options that are more or less identical.
Let’s say, then, that Jakarta Config adds a nifty feature. Should this feature be back-ported to MicroProfile Config? Or should MicroProfile Config be abandoned and Jakarta Config added to the base Jakarta specs required for MicroProfile?
I think these questions need to be addressed somehow, and that it is up to the vendors behind these initiatives to figure out a strategy that is in the best interest of their customers. It is a too easy way out to say that this will self-regulate by the community.
Welcome to the sixth issue of Hashtag Jakarta EE!
On the fun side, I was made aware that my shoutout for the Hashtag series may be a little confusing as you can see in my conversation with Ronnie Zolverda.
I didn’t want to use #5 to indicate number 5 since Twitter would then interpret the hashtag (#) as if I were tagging the number 5. Also interesting that nobody reacted on the first 4 posts…
From this week on, I will tweet that “Hashtag Jakarta EE number X is out!” to avoid confusion in the future 🙂
We didn’t have any Jakarta Tech Talks or Update calls this week, but the work with Jakarta EE 9 proceeds as planned. The status is best followed by checking out the project board. We have now passed the deadline for individual component release plans. These are Java Activation Framework 2.0 and Jakarta Enterprise Beans 4.0. The rest will follow the release plan for the full platform.
The discussions regarding establishing a working group for MicroProfile, mentioned in Hashtag Jakarta EE #1 and #3, continue with weekly MicroProfile hangouts as well as being a recurring topic in the Jakarta EE Steering Committee.
So far, there are two proposals on the table; a joint working group or two separate working groups. While the structure of the working group(s) is important, another aspect is the technical alignment of Jakarta EE and MicroProfile. A couple of weeks ago David Belvins put forward a couple of proposals to bootstrap the discussions. A third proposal was presented by Steve Millidge where he proposes that profiles in Jakarta EE are promoted to individual brands and that MicroProfile becomes a profile of Jakarta EE. Interesting thoughts!
Welcome to the fifth issue of Hashtag Jakarta EE!
This weekend, I attended my first FOSDEM. This is a free event that takes place in Brussels every year. It is quite an experience with fully packed rooms and crowded corridors. Sessions are short (25 mins) and focused. Absolutely a recommendation!
Check out the minutes from the weekly Jakarta EE Platform call to follow the progress of Jakarta EE 9.
Earlier this week, I presented Microservices in Practice with Eclipse MicroProfile at Javaforum Malmö.
This demo-heavy talk was well received. There has been a steady increase of participants in our JUG over the last year, a strong indication for the continued popularity of Java.
If you have made it this far, I want to end this hashtag with an encouragement to check out these articles by Nicolas Frankel. He provides some very useful tips and advice about Tricky Servlet Mappings and Creative use of Filters.
Welcome to the fourth issue of Hashtag Jakarta EE!
We’re on a roll here! I can’t believe it is already four weeks since I started this series!
Stay tuned for announcements about Jakarta MVC!
A little on the side of Jakarta EE, but still related is that the MVC 1.0 specification (JSR 371) is finally final! We have been working with this for a long time, and special thanks to Christian for his work in getting the release out the door! Without him, I doubt there would be a release of MVC!
So, why isn’t MVC already moved over to the Eclipse Foundation and Jakarta EE? The short answer to that is that we wanted to finish the first release under the JCP in order to have a released project to transfer. We have already transferred Krazo, the reference implementation and the plan is to start the transfer of the specification and the TCK shortly. Stay tuned for announcements about Jakarta MVC!
Jakarta EE 9 is moving forward with great progress. The status of all the work is tracked on the Jakarta EE 9 tracking board. If you are involved in one of the specifications in the Plan Review column, you are encouraged to take a look and see how you can help move these specifications forward to the In Progress column. Instructions can be found in notes at the top of the columns.
Welcome to the third issue of Hashtag Jakarta EE!
Most of this week was spent at the Eclipse Foundation office in Ottawa. It is great to have the opportunity to meet the people I work with daily in person once in a while.
On Tuesday, January 14, there was an off-week MicroProfile Hangout dedicated to the discussions around the Working Group proposals for MicroProfile. The hangout was pretty well attended with the usual suspects doing most of the talking. See the presentation and meeting minutes for more details. The session was even recorded.
We even had a Jakarta EE Community Update Call where we talked about Jakarta EE 9, the Jakartification of the specification documents as well as the 2020 program and budget.
In the blog space, there is a lot being written about Jakarta EE. I will point to a couple of posts here. Will Lyons summarises The Jakarta EE 8 Community Retrospective and you can read about the approval of the Jakarta EE 9 release plan in Mike Milinkovich’ post Moving Forward with Jakarta EE 9,