Portland JUG 2024

I decided to take the train from Seattle to Portland as it is the most convenient way of going between those cities unless you have a car. I’ve been told that this train usually is very reliable and punctual. This time, however, there was a mechanical issue with the train so they had to switch train sets in Seattle. Which in turn resulted in a two-hour delay…

The Portland Java User Group event was scheduled to start at 5:30 pm and the train was originally scheduled to arrive in Portland at 3:35 pm. Long story short, I arrived at the venue at 6:00 pm to start my talk. The participants could enjoy 30 minutes of pizza and drinks while waiting, so I guess it all turned out great at the end.

I did the From Spring Boot 2 to Spring Boot 3 with Java 21 and Jakarta EE presentation here as well. With great discussions during and following the presentation.

The Portland JUG had also ordered the JCP 25-Year Anniversary Swag Kit, so there were lots of goodies for the attendees. I recommend all Java User Groups do the same. Just follow the instructions on the JCP 25-year Anniversary page.

Seattle JUG 2024

The January JUG tour continues to the Pacific Northwest. Yesterday, I visited the Seattle JUG and presented From Spring Boot 2 to Spring Boot 3 with Java 21 and Jakarta EE for 30 attendees at the Microsoft Reactor in Redmond. It was a very engaging group with lots of questions and great discussions following the presentation.

Even with free pizza and drinks, getting 30 people to show up at a JUG event is very good for most JUGs. For Seattle JUG, this has only happened before with Venkat or Josh as speakers. After the event, a group of us went for burgers and fries at a local restaurant. All in all a very successful evening!

Nashville JUG 2024

Yesterday, I had the pleasure of speaking at the Nashville Java User Group. The JUG was rebooted last year and now features monthly meetups. So far, every speaker has been a Java Champion and there is pizza and drinks at every event.

My talk about migrating from Spring Boot 2 to Spring Boot 3 focuses on how to deal with the namespace change from javax.* to jakarta.* is still popular. More and more attendees have migrated, but still appreciate the tips and tricks provided.

One thing the Nashville JUG does at every meetup, which I am going to shamelessly copy to Javaforum Malmö, is Job Talk. Job Talk is a couple of minutes before the presentation dedicated to those looking for jobs, or are recruiting for jobs. An excellent opportunity to connect.

Hashtag Jakarta EE #213

Welcome to issue number two hundred and thirteen of Hashtag Jakarta EE!

This week continued with discussions around Java versions. The latest update is that the Jakarta EE Specification Committee wants to do a Progress Review of the planned Jakarta EE 11 release. This is all according to the Jakarta EE Specification Process (JESP), so there is really no drama about that part. The Jakarta EE Platform Project will present its plan, and the Specification Committee will vote to approve it. While this is happening, the work with the release will progress as planned.

However, there is a potential bump in the road if the ballot does not pass. This will force the Platform Project to come up with a revision of the plan (a Plan C if you will) that will satisfy the Specification Committee. The outcome of that plan may, or may not, impact the release date of Jakarta EE 11.

While the focus is currently on the next version of Jakarta EE, there is also a need to look ahead to what will happen beyond Jakarta EE 11. To accommodate this, the Jakarta EE Working Group has put together a document to brainstorm this topic. Please take a look at it and provide input. The topic that attracts my immediate attention is a potential Jakarta AI Specification, something I also mentioned in Hashtag Jakarta EE #309 on December 31 last year.

I am currently in Nashville preparing for my first JUG Meetup of the year on Monday. I hope you will be able to come to Nashville JUG on Monday, January 29 at 6:00 PM if you are in the neighborhood.

While waiting for that, check out my blog post from the JCP 25-year Anniversary Celebration.

JCP 25-year Anniversary Celebration

On Thursday, I attended the JCP 25th Anniversary Celebration event at the Computer History Museum in Mountain View. This is the third time the anniversary was held at this location. It was great meeting up with friends in the Java community and having some of the traditional JCP Paella. Of course, there is no anniversary without cake, and this was no exception. Check out the JCP 25th Anniversary cake with Duke frosting.

Heather presented the 21st annual JCP Awards which this year had three categories. Congratulations to the winners!

– JCP Member/Participant of the Year: Frank Greco / Zoran Sevarac
– JCP 25-year Achievement Award: Brian Goetz
– Java in Education Community Award: Devoxx4Kids South Africa (Jozi JUG)

Read about the winners and the justification for their award on the JCP Annual Awards page.

Learn About Jakarta EE on LinkedIn

Last year, I created a course titled Jakarta EE Overview on LinkedIn Learning. As the title reveals, the course gives you an overview of Jakarta EE. You are guided through the purpose of Jakarta EE and which specifications it is good to know about. Further on, the course goes through the containers for different component types and how to deploy applications. The course also contains useful tips and some practical challenges.

When you have completed the course, you will get a nice certificate of completion to display on your LinkedIn profile. So far, 765 learners have started the course, and it has a 4.6 out of 5 start ranking. Try it out today to start your journey with Jakarta EE!

Hashtag Jakarta EE #212

Welcome to issue number two hundred and twelve of Hashtag Jakarta EE!

As I mentioned in last week’s Hashtag Jakarta EE, there has been a change to the targeted Java version for Jakarta EE 11. In addition to supporting Java 21, the Jakarta EE Platform project is also planning to support Java 17 with Jakarta EE 11. While this may seem like a significant change, it turns out that it isn’t that dramatic. None of the component specifications were actually planning on exposing any Java 21 features in their APIs. The only one close to it was Jakarta Concurrency 3.1, with the planned support for Java Virtual Threads. But it turns out that careful API design allows for support if the underlying JVM supports it.

The biggest change is for the Test Compatibility Kit (TCK), which must be able to run on both Java 17 and Java 21. The implementations that had moved their code base to Java 21 are also affected to some degree depending on how far they have gotten and how many Java 17+ features they have started using.

To accommodate for the extra work involved, the Jakarta EE Project has adjusted the dates for milestones in the release plan. The goal of delivering Jakarta EE 11 in June/July 2024 still stands.

It’s been more than a month since I was at the airport. But that is about to change in a couple of days. I will participate in the 25th Anniversary celebration of the Java Community Process (JCP) in Mountain View on Thursday, January 25. After that, I will speak at three Java User Groups in three days. First up is Nashville JUG on Monday, January 29 followed by Seattle JUG on Tuesday, January 30, and Portland JUG on Wednesday, January 31. In addition to talking, The JCP anniversary will be properly celebrated in all the JUGs. Heather VanCura will join me in Seattle and Portland.

Jan 25: JCP 25-year Anniversary Celebration
Jan 29: Nashville JUG
Jan 30: Seattle JUG
Jan 31: Portland JUG (event soon to be published)

Hashtag Jakarta EE #211

Welcome to issue number two hundred and eleven of Hashtag Jakarta EE!

January is usually not a very busy month regarding conferences and events, and 2024 is no exception so far. It is not until the end of the month that I have something planned. But from there, the pace picks up significantly. I am going on a short trip to the US where I will participate in the celebration of 25 years of the Java Community Process (JCP). While there, I will also speak at several Java User Groups. So far, my schedule looks like this:

Jan 25: JCP 25-year Anniversary Celebration
Jan 29: Nashville JUG
Jan 30: Seattle JUG (soon to be published)
Jan 31: Portland JUG (planning in progress)
Feb 1: available

I am trying to get in touch with the San Diego JUG for an event on February 1, but without success so far. Please reach out to me If you are involved in this JUG, or another one within a couple of hours’ flight distance from the West Coast and able to host a meetup.

The major discussion within the Jakarta EE Platform project this week has been around Java SE versions. After the Jakarta EE Working Group Steering Committee passed a resolution stating the goal to target Java 21 with Jakarta EE 11, this has been the expectation set in the plan for the platform project. It now turns out that some of the vendors want to lower this requirement to Java 17. The discussions following this have been around how to handle this while delivering according to the timeline outlined in the release plan.

The important thing to note here is that even if we made it possible to certify an implementation for Jakarta EE 11 on Java 17, it will still be able to certify an implementation on Java 21. So for end users, the application developers, it would mean that you could use Java 21 features if the implementation selected supports it. I am sure there will be more on this topic in the following days. I will make sure to revisit it in the next Hashtag Jakarta EE. Stay tuned!

Hashtag Jakarta EE #210

Welcome to issue number two hundred and ten of Hashtag Jakarta EE!

The first Hashtag Jakarta EE in 2024. Now with an updated featured image. I have used the same image for all the previous 209 posts, so I figured it was time for an update. I hope you like it!

Right before the holidays, we released the Milestone 1 versions of the Jakarta EE 11 APIs. While doing this, Ed and I had to debug the CI job and Maven configuration that publishes the API artifacts to Maven Central. Ed published a nice write-up on Maven debugging techniques used in this process. Read his blog post to learn more.

The weekly Jakarta EE Platform calls will resume on Tuesday, January 9. The call is scheduled for every Tuesday at 11:00 am EST. This is where the discussions around Jakarta EE 11 are happening, so make sure you are a part of it to stay informed. If you’re not able to attend the calls, check out the meeting minutes.

Hashtag Jakarta EE #209

Welcome to issue number two hundred and nine of Hashtag Jakarta EE!

On the last day of the year, it is time to look back and forward. Last week, I looked back on conferences and events I participated in during 2023. The plans for 2024 are forming, so make sure you check out my Developer Advocate page on the Jakarta EE website for an updated list.

One thing I am certain will happen in 2024 is the release of Jakarta EE 11. According to the release plan, it should arrive before summer. Follow the mailing lists and announcements to stay up-to-date on the progress.

The ubiquitous topic of 2023 was AI, and you don’t have to be a wizard to predict that this will continue in 2024. Is it time to start thinking of specifying something around this? I would really like to see some efforts around this in Jakarta EE. Could a Jakarta AI specification be a reality?

Another area I hope to see some activity around in 2024 is how to make technologies such as CRaC and InstantOn first-class citizens of Jakarta EE. Maybe some initiative around turning the org.crac API into a Jakarta EE specification? Did anyone say Jakarta CRaC? Faster startup times will still be important in the years to come, so why not?

Last, but not least, the evolution of the existing specifications will continue in 2024 along with the Jakarta EE Platform, Jakarta EE Web Profile, and Jakarta EE Core Profile. Jakarta NoSQL 1.0 is very close to delivering a final release. Jakarta RPC will hopefully start picking up the pace after a rather slow start. Will there be any new profiles, or should we gradually abandon the profiles and move towards another way of grouping specifications?

There are probably lots of other topics that will pop up on the agenda. The only thing certain about these prediction posts is that there will most likely be something coming that nobody could anticipate. And on that note, I wish you all a Happy New Year, and see you in 2024!