Java ecosystem trends report 2023

Java ecosystem trends report 2023

As a frequent conference speaker, I was curious to know what the hot topics are in the Java ecosystem. To find out, I analyzed accepted talks at four large Java conferences held in 2023: JFokus, DevNexus, Devoxx UK, and JCON Europe.

Key findings

  1. Java development is increasingly cloud-native. The prominence of Microservices, Kubernetes, Quarkus, Serverless, Kafka, and Containerization indicates that the Java ecosystem is significantly moving towards distributed and cloud-native applications. This shift is likely driven by the demands for better scalability, maintainability, and business agility. This supports the findings in the 2023 State of Java in the Enterprise report by Vaadin.

  2. AI and ML are gaining traction. AI and Machine Learning are causing a big disruption in the software industry and the Java ecosystem is not excluded. Developers are using AI tools for development and integrating AI/ML in the applications they are building. Much of AI/ML tooling is only available for Python and JavaScript. We can expect to see new projects emerge to allow Java developers to take advantage of AI/ML more effectively.

  3. Solid software development practices continue to be important. The continued mention of topics like Security, Refactoring, and Testing underscores that, even amidst fast-evolving tech trends, the fundamentals of writing secure, maintainable, and well-tested code remain critical. This illustrates the persistent need for robust software development practices, irrespective of the technology or architecture used.

  4. Development is increasingly complex. The wide array of topics from different domains (e.g., Microservices, AI/ML, Kubernetes, Security) shows that the Java development environment is becoming increasingly complex. Developers are increasingly expected to do DevOps and need to understand and integrate a growing number of technologies and concepts, requiring a broader skill set and continuous learning.

Comparing conferences

Looking at the aggregate data alone can give us a false sense of uniformity. By looking at the frequency of topics across conferences, we can see there is quite a difference between events. AI/ML was so prevalent at Devoxx UK, that it can make it hard to see the nuances between other topics.

The conferences are listed in chronological order.

By removing the AI/ML topic from the analysis, we can better see the popularity of the remaining top 19 topics.

JFokus stands out in the analysis, having fewer categories with multiple talks. We can also confirm this by looking at the distribution of topic frequencies at the events. JFokus has significantly more topics with only one mention, meaning it had a more diverse set of talks than the other conferences.

Methodology

I gathered the data from the conference websites on June 28, 2023.

I classified the topics by feeding the titles and abstracts to the OpenAI chat completion API with a prompt asking it to extract the 3 most relevant topics that describe the talk, focusing on technologies and methodologies. I used the function API to force the output into JSON format for easier processing.

I manually cleaned the data by combining duplicate topics such as "apache kafka" and "kafka." I removed two overly generic topics: "java" and "software development."

Finally, I analyzed and visualized the data with Pandas and Seaborn.

Because the data represent accepted talks at conferences, we should assume that they skew towards trendy topics that help sell conference tickets.

Learn how I used AI tools to turn my idea into a completed report in less than a day.

More conferences?

Is there a relevant conference missing that you think would add value to the analysis? Let me know in the comments or reach out to me on Twitter @marcushellberg.

Appendix: top 100 topics

Here is a list of the top 100 topics sorted by popularity

TopicCount
microservices35.0
kubernetes34.0
ai/ml33.0
spring boot24.0
security20.0
quarkus19.0
devops16.0
apache kafka16.0
serverless15.0
graalvm14.0
observability13.0
jakarta ee13.0
docker11.0
open source11.0
cloud10.0
refactoring10.0
testing9.0
spring9.0
containerization9.0
distributed systems8.0
opentelemetry8.0
ci/cd8.0
cloud computing8.0
kotlin8.0
microstream8.0
performance optimization7.0
testcontainers7.0
virtual threads7.0
automation7.0
tools7.0
pattern matching7.0
cloud-native7.0
jvm7.0
micronaut6.0
apache pulsar6.0
performance6.0
design patterns6.0
dependency management6.0
architecture6.0
collaboration5.0
migration5.0
java applications5.0
developer experience5.0
scaling5.0
project management5.0
web development5.0
streaming data5.0
continuous delivery5.0
code quality5.0
concurrency5.0
software architecture5.0
application development5.0
cloud native5.0
openjdk5.0
continuous integration5.0
programming languages5.0
user experience4.0
software engineering4.0
typescript4.0
knative4.0
learning4.0
developer productivity4.0
developer tools4.0
development4.0
monitoring4.0
react4.0
github actions4.0
functional programming4.0
apis4.0
javascript4.0
cloud-native applications4.0
technical debt4.0
integration testing4.0
open source projects4.0
reactive programming4.0
asynchronous programming4.0
records4.0
redis4.0
community4.0
change data capture3.0
cloud native applications3.0
ci/cd pipelines3.0
containers3.0
sql3.0
concurrent programming3.0
test-driven development3.0
communication3.0
test automation3.0
technology3.0
java persistence3.0
continuous deployment3.0
software testing3.0
libraries3.0
kafka3.0
metrics3.0
microprofile3.0
jdk3.0
java frameworks3.0
open source tools3.0