JVM Ecosystem Report 2021 - Cloudinary

Transcription

JVM EcosystemReport 2021

Table of contentsIntroduction 3Report highlights 4JDKs in production 5JDKs in development 7JDK versions in production environments 9JDK versions in development 11Java, Changing Faster Than Ever After 26 Years12JVM languages used for applications in production14Most popular IDEs 18Tools for building applications 20Securing vulnerabilities in the Java ecosystem with Snyk22Application frameworks 25Demographics 26The State of Spring 29

IntroductionWelcome to our annual JVM ecosystem report! This report presents the results of the largest annual survey on thestate of the JVM ecosystem. The survey was conducted over a period of six weeks through February and March 2021,gathering the responses of over 2000 Java developers.This year's survey is a cooperation between Snyk and Azul and was slightly different from the previous surveys.We aimed for the survey to be more concise and focus only on the most important aspects of JVM developers today.Additionally, this year every participant was allowed to choose multiple options. We believe that the way the 2021survey was designed, we have a better and more comprehensive view of the current JVM ecosystem. In addition,in this report, we also looked at different open data sources like GitHub and Google Trends to see how that datacompares to the survey results.We would like to thank everyone who participated and offered their insights on Java and JVM-related topics. For thissurvey, we teamed up with conferences and communities across the JVM ecosystem to reach as many developers aspossible. Big shoutout to Foojay.io, the VirtualJUG, and other Java communities for the invaluable help. This massiveeffort results in an impressive number of developers participating in the survey, giving great insight into the currentstate of the JVM ecosystem. You can find all demographic information at the end of this report.Another big shoutout to Josh Long from Tanzu VMWare, and Simon Ritter from Azul for supplying great highlightstories on their field of expertise. This is something we couldn't get from a survey alone.Happy reading!All rights reserved. 2021 Snyk3

Report highlightsBefore we start, here's a TL;DR overview of the main highlights in this report.111544% of developers useAdoptOpenJDK buildsin production60% of developers use JavaSE 11 in production25% of developers useJava SE 15 in development1 in 6 developers usesKotlin, making it the secondmost popular language onthe JVM90% of developers use Javafor application development50% of developersuse Spring Boot75% of developers use Mavento build their projects70% of developers useIntelliJ IDEAAll rights reserved. 2021 Snyk4

JDKs in productionWith a rising number of JDK suppliers andOpenJDK binaries, we traditionally kick off thereport with the most critical question: Which JDKsare developers using in production?44.1%AdoptOpenJDK builds of OpenJDK28%Oracle OpenJDK23%Oracle JDK15.5%Azul Zulu builds of OpenJDK9.1%Amazon Corretto builds of OpenJDK8.1%The Linux Distro’s bundled OpenJDK packageLast year, we found out that many developers usemore than one JDK in production. So this year, wechanged this question (and almost all the other)to allow multiple answers. For this question,respondents could choose as many options aswere applicable.7.7%Red Hat builds of OpenJDK6.2%Oracle GraalVM Community Edition3%IBM Java SDK2.9%Azul ZingAlibaba Dragonwell builds of OpenJDK1.9%Bellsoft Liberica builds of OpenJDK1.6%1.3%Eclipse Adoptium builds of OpenJDKOracle GraalVM Enterprise Edition0.8%SAP SapMachine builds of OpenJDK0.5%HP-UX Java0.3%Other1.1%None0.8%0%All rights reserved. 2021 leresponses allowed.5

Over 37% of our respondents say they are usingat least two different JDKs, and 12.5% even usethree or more different JDKs in production.Google Trends indicate large interest in Oracle JDKTo see how our survey of usage compared with interest, we looked at Google searchIt is interesting to see that 44.1% of respondentstrends for AdoptOpenJDK, Oracle JDK, Oracle OpenJDK, and Azul Zulu over the firstuse the free AdoptOpenJDK distribution inthree months of 2021. Interestingly enough, Google Trends show a large communityproduction, making it the most prevalent in ouraround Oracle JDK. On average, people search twice as much for Oracle JDK thansurvey. However, we can also see that Oraclethe number two, AdoptOpenJDK. It is unclear, based on our data, whether this meansis still a big player in the market, with 28% forthat more people outside of this survey use Oracle JDK or that more people searchtheir OpenJDK build and 23% for the commercialfor supporting documentation about Oracle JDK before getting started.Oracle JDK. The third most popular supplier ofJDKs in production is Azul, at 15.5% adoption, andshouldn’t be underestimated.All rights reserved. 2021 Snyk6

JDKs in developmentWe were also curious about the differencebetween the applications in production anddevelopment. Therefore, we asked the samequestion about the use of JDKs for development.Although we expected some differences betweendevelopment environments and production, itturns out that the numbers are pretty similar.48.3%AdoptOpenJDK builds of OpenJDK29.3%Oracle OpenJDK22.4%Oracle JDK17.5%Azul Zulu builds of OpenJDK9.7%Oracle GraalVM Community EditionAmazon Corretto builds of OpenJDK8.6%The Linux Distro’s bundled OpenJDK package8.3%5.2%Red Hat builds of OpenJDKSimilar to production, the majority of thedevelopers are using OpenJDK builds byAdoptOpenJDK in development. This accountsfor almost half of the respondents!In general, we see that the OpenJDK distributionsare doing slightly better in developmentcompared to production. Next to the 48.3%for AdoptOpenJDK, we also see slightly higher2.3%IBM Java SDKAzul Zing1.8%Alibaba Dragonwell builds of OpenJDK1.8%Bellsoft Liberica builds of OpenJDK1.8%1.5%Eclipse Adoptium builds of OpenJDK1%Oracle GraalVM Enterprise Editionnumbers for Oracle OpenJDK 29.3% and Azul Zulu17.5%. The proprietary JDK builds like Oracle JDK22.4% and Azul Zing 1.8% score slightly less thanSAP SapMachine builds of OpenJDK0.3%HP-UX Java0.2%Other1.1%in development.0.4%None0%All rights reserved. 2021 Snyk10%20%30%40%50%Multipleresponses allowed.Multipleresponsesallowed.7

All together, we still see that Oracle is still themost popular vendor with multiple different builds.We also noticed a slight increase in the numberof JDK’s people used compared to production.Almost 39% of the respondents use two or moreJDKs, and 14% use three or more different JDKsuppliers in development. Still, all these numbersare just minor deviations, and the usage of JDKsin production and development can be consideredvery similar.All rights reserved. 2021 Snyk8

JDK versions in production environmentsAnother exciting question every year is theWe found out that 40% of the survey participantsThis is huge, because it shows that developersadoption rate of newer versions. Are developersuse more than one Java version in production.do upgrade their Java version beyond Java 8working with the more recent version of Java, orBecause of this, we can also conclude that moreto some extent. The mantra that most Javaare they unable or possibly unwilling to upgrade?people than we realized do upgrade to versionsdevelopers are comfortable staying on Java 8In the last couple of years, we saw that developersbeyond 8. Currently, 61.5% are using Java 11seems to be slowly breaking apart.were stuck at Java 8 and not adopting newersomewhere in production, and almost 12% areversions. This year we changed the question tousing the latest release, which was Java 15submit the top three Java versions they useduring the survey.in 8%6 or ed.Up toto 33 responsesresponses allowed.All rights reserved. 2021 Snyk9

We think it’s great to see that older versions likeWe know that about 12% of the Java developersIt is also interesting to see that half of the JavaJava 7 or below are no longer commonly used.like to use the latest and greatest of Java. More11 users — currently the most used version inHopefully, just for that single legacy applicationthan half of people who use Java 15 (7.8%)production — also use Java 8 in their productionhiding in a basement far, far away. We also seecombined it with other Java versions. Thisstack. Cross-referencing the answers showsthat non-LTS versions like Java 10, 12, and 13means that almost 4% of Java developers areus that 30.2 % use both Java 8 and Java 11are not heavily used in production. This mightonly using Java 15 in production and will mostin production. We can definitely concludehave something to do with the support of theseprobably keep upgrading this to the latest versionthat the adoption of Java version beyond 8 isversions. The general advice is either stay on theonce it is released, which is quite astonishing.something that many developers want and trymost recent LTS version, currently Java 11, orto do. That calls for a celebration! Also, it alsomove to the latest release every six months. Thisconfirms that developers need to maintaintrend is also clearly visible in the survey results.older applications that depend on legacy Javaversions next to the newer, improved versions.All rights reserved. 2021 Snyk10

JDK versions in developmentSimilar to the JDK version in production, almostThis is a remarkable change in perspectiveWith more than 25% of the Java developers65% of the Java developers use Java 11 inand confirms again that developers want tousing Java 15 and almost 65% using Java 11,development next to possible other versions.migrate to newer Java versions beyond Javawe can confidently say that there is a clearJust like with the previous question, people8. Also, 25% of developers, which is quite ashift away from Java 8. Although, Java 8 willwere allowed to choose up to three options.significant amount, are using the latest releaseundoubtedly be part of the developer’s stackInterestingly (and excitingly) enough, moreversion, Java 15, in development. The earlyfor some time.people use Java 11 and fewer people useaccess version Java 16-EA and Java 17-EA areJava 8 in development.unfortunately not yet as popular, but still usedmore than the ancient Java 7 and 5%6 or -EA17-EAto 3 responsesallowed.Up to 3Upresponsesallowed.All rights reserved. 2021 Snyk11

Java, Changing Faster Than EverAfter 26 YearsSimon Ritter@speakjavaDeputy CTO at Azul SystemsIt’s amazing to think that Java turned 26 in May, and that the currentstandard. Based on feedback from developers, changes can be made whererelease is JDK 16. Thanks to the change to a strict six-month releasedeemed appropriate (even to the point of removing the feature). Recordscadence, introduced in 2017, we are now seeing the platform developwere added as a preview feature and, in JDK 15, they were extended tofaster than at any time in its history.allow the declaration of records inside a method (local records). This can beespecially beneficial when using the Streams API and shows the power of aAs developers, the challenge is keeping up to date with all the latestpreview feature (which would not have been practical under the old, multi-features and using them in our code. In this survey, we see that Java is still,year release cadence. In JDK 16, Records were promoted to a full languageby far, the most popular language for developing JVM-based applications.feature and included in the Java SE specification.I’m sure the steady stream of minor enhancements to the core languagewill continue to maintain Java’s popularity. I regularly give talks on howFor those running enterprise-wide mission-critical applications, updatingJava is evolving, and it is great to see how even small things can maketo a new version of Java every six months is unlikely to be an option. Fordeveloper’s lives easier.those users, providers of OpenJDK distributions have followed the OracleJDK to provide long-term support (LTS) releases. Thankfully, all OpenJDKRecords, introduced in JDK 14, is an excellent example of a powerful newdistributions are aligned on which versions these are. JDK 11 is thefeature added to the language without incurring any technical debt. Wecurrent LTS, and we’ll have the next one in September with the release ofnow have a very simple, straightforward way to define data classes in JavaJDK 17. Many distributions also provide extended updates for JDK 8. Thewithout any of the tedious boilerplate code we needed in the past. Thissurvey results show that over 60% of respondents are still using JDK 8feature also demonstrates another aspect of the new release cadence:in production, so they will still require timely access to updates providingpreview features and incubator modules. Features like Records can besecurity patches and bug fixes.added to the JDK without immediately making them part of the Java SE

Some users are still running on even older releases, often to maintainThis survey provides interesting insights into how both Java the languageaccess to legacy applications where migration to a newer version of theand Java the platform is being used. I think it’s clear to see that, evenJDK is not cost-effective. In these cases, Azul’s Enterprise Zulu builds ofafter twenty-six years, Java shows no sign of slowing down or becomingOpenJDK also include JDK 6 and JDK 7 support.less relevant to the needs of enterprise application developers. What’simportant with a new release every six months is to keep testing yourTo enable the widest selection of deployable Java runtimes, Azul offersapplication code with the latest version. This will make the switch to awhat we call Medium Term Support (MTS) releases, currently for JDK 13new LTS release in production as simple as possible.and 15. These can be deployed in production and include all updates until18 months after JDK 17 is released. This enables users to take advantageof cool new features like Records and have plenty of time to migrate fromJDK 15 to 17.I’m sure I’m not the only person who believes that most of Java’s continuedpopularity has resulted from the managed runtime nature of the JavaVirtual Machine (JVM). Things like automated memory management andjust-in-time (JIT) compilation delivers more reliable applications that oftenoutperform statically compiled code. Developers are not constrained toJava but can compile languages like Kotlin and Scala to bytecodes andbenefit from the JVM in the same way. That Java is easily the most popularJVM language is another testament to how well it was originally designedand has been thoughtfully developed.

JVM languages used for applications in productionWhile the variety of JVM languages grew over theWe see a consistently large percentage everylast couple of years, Java is very much on top.year because many companies rely heavilyWith over 90% of developers using Java, we canon Java. In addition, we see that the constantsee that it remains a very popular language.development of the language helps maintain thelevel of %90%100%Multiple responsesresponsesallowed.allowed.MultipleAll rights reserved. 2021 Snyk14

In last year’s report, we asked, “What is your mainThe broader question we asked this yearIn general, we see that 33% use more thanJVM language?” which allowed one pick. At thatshowed that the popularity of Kotlin is moreone JVM language in their stack, which ispoint, 86.9% chose Java. However, the follow-upextensive than we thought last year. With aninteresting because 58.8% only use Javaquestions here were, “Do you write or maintainimpressive 17.7% of the developers using Kotlinwithout anything else. With 91% having Javaany Java applications?” and “For those who don’tin production, it has a steady second place.in their stack, almost all users that use two oruse Java in their main application, do they use it atHowever, it is interesting to see that 15% of themore languages have Java included.all?” The combined result last showed us that 96%developers use Kotlin together with Java. Thisof the respondents used Java. This is very similaris probably because of the great interoperabilityto the 91% we have this year and confirms thebetween Kotlin and Java, and likely the mainstable popularity and importance of the language.reason for its success. It shows that Kotlin isnot commonly used as the only JVM language inproduction for writing applications.All rights reserved. 2021 Snyk15

Additional data sourcesFirst, let’s take a look at the TIOBE index. This index measuresthe popularity of all programming languages. TIOBE calculatesthe ratings based on the number of skilled engineers worldwide,courses, and third-party vendors. They use popular searchengines such as Google, Bing, Yahoo!, Wikipedia, Amazon,YouTube, and Baidu to gather this data.When looking at the top 50 languages in the April 2021 Tiobeindex and filtering the JVM we see the following.All rights reserved. 2021 26Scala0.61%39Kotlin0.32% 50Clojure16

Number of repositories for JVM languages on GithubIn early April, we also looked at GitHub and searched for the amount of repo’s containing a certain JVMlanguage. We used the GitHub API for this matter, as the results seemed more stable than a web search.We can conclude that Java is, by far, the most popular language in all sources we consulted for thisreport, and it will probably stay this way in the foreseeable future. An interesting finding is the differencebetween the popularity of Scala, Groovy, and Kotlin. Both the amount of GitHub repositories and thesurvey results put Kotlin in second place. However, according to the TIOBE index, both Scala and Groovyare more popular. Nevertheless, we cannot deny that Kotlin is making a significant impact within the JVMlandscape. And it undoubtedly stays this way or even grows more in the near future.KotlinJava9.5MClojure76K531KScala194KAll rights reserved. 2021 SnykGroovy64K17

30%Most popular IDEs24.6%23.2%20%13.6%10%For years, we’ve seen the dominance of JetBrainsIntellIJ IDEA in the Java ecosystem. This year is5.9%80%0%not any different. IntelliJ IDEA is the most widelyused within the JVM community. According to our12.9%71.6%70%IntelliJIDEAEclipseIDEVisual dio1.1%0.9%OracleJDeveloperOthersurvey, 51.3% use the Ultimate (paid) version and27.3% the Community (free) version.60%In the previous year, we only asked for “your main50%FreePaidIDE,” but we noticed that more and more peopleare using multiple IDEs for several reasons.Specific tooling that a developer uses for a projectmight build on top of the Eclipse IDE or ApacheNetbeans, while for another project the developermight prefer VS Code or IntelliJ IDEA.The results are quite amazing and we see thatadoption of Visual Studio Code — currently 23.2%40%30%24.6%23.2%20%13.6%12.9%10%5.9%and 2% last year — grew tremendously. The sameholds for the popularity of Apache Netbeans,with almost 13% today and only 1% last year.We believe the reason for these increases arebecause of the ability to answer with more than0%IntelliJIDEAEclipseIDEVisual droidStudio1.1%0.9%OracleJDeveloperOtherMultiple responses allowed.one answer.All rights reserved. 2021 Snyk18

When looking at the amount of differentIDEs a Java developer uses, we found thefollowing statistics.24.6%We see that almost half of the developers usea single IDE to do all of their work. On the flipside, more than half of the JVM communitysees fit for multiple IDEs, and almost a quarterneeds to use four or more different IDE’s. The48.9%only conclusion we can draw for this is thatnone of the IDEs work well enough on their ownfor at least the 24.6% that use four or more.9.7%Why else would you use so many?One IDEs16.7%One IDEsOne IDEsTwo IDEsTwo IDEsThree IDEsAlso interesting to note is that the amount ofEclipse users is relatively steady, with 24.6%this year and 20% last year. This appears toindicate that most Eclipse users consider thisIDE their main tool for development. For IntelliJ,there is a small percentage of people (7%) thatOne IDEsTwo IDEsThree IDEsTwo IDEsThree IDEsFour or more IDEsThree IDEsFour or more IDEsFour or more IDEsuse both the free Community version and theUltimate version. As the Ultimate (paid) versionis an upgrade of the free community version,the question is why?Four or more IDEsAll rights reserved. 2021 Snyk19

Tools for building applicationsMaven is still the number one build system for80%76.2%the Java ecosystem. With more than 76% ofdevelopers using Maven, it is even higher than inlast year’s survey. Gradle is comfortably holding70%seconds place with 38.1%, also scoring higherthan it did last year.Similar to the other questions, people wereallowed to put in multiple answers. This, however,60%50%didn’t substantially impact the relative popularityof the tools.40%We find it interesting that 5.7% reported using30%38.1%another build system. It is worth mentioningthat there were quite a few people mentioningLeiningen and Clojure CLI tools. Both tools are20%used by Clojure developers, with Leiningenused by about 2.3% of the respondents and11.8%10%Clojure CLI by ple responses allowed.All rights reserved. 2021 Snyk20

Package manager distributionwithin SnykWe see the same distribution of packagemanagers if we look at the data we collected1.8%24.6%from Snyk. In the Java ecosystem, we can scanfor open source vulnerabilities for three differentpackage managers: Maven, Gradle, and SBT.Looking at the distribution within Snyk OpenSource for Java, we can conclude that thenumbers from the survey are consistent with ourresults. Maven is still clearly on top of the rest,with over 70% usage. It also appears that theMaven vs Gradle war is over and both have foundtheir place within the JVM ecosystem.73.8%MavenAll rights reserved. 2021 SnykGradleSBT21

Securing vulnerabilities in theJava ecosystem with SnykBrian Vermeer@BrianVermDeveloper Advocate at SnykIt is incredible to see that after more than 25 years, the Java ecosystemThe problem is that the use of many libraries comes with a price. Youis still relevant. I would even say more relevant than ever before, as we’vehave to maintain these libraries just as much as your own customwatched the JVM and its ecosystem evolve significantly over the years.code. Large frameworks have a lot of transitive dependencies andAnd while Java is still the most popular, other languages have been createdall the dependencies end up in your code. You have to be well aware— and widely adopted — that run on the JVM, such as Scala, Groovy, andthat these dependencies are well maintained, healthy and mostmore recently, Kotlin. This flexibility could help explain Java’s ongoingimportantly free of security vulnerabilities. Updating both your Javapopularity. But with increased popularity, we need to focus on increaseddistribution and your dependencies is essential, but unfortunately, notsecurity concerns.always a priority for many development teams.Even as Java adoption grows, we still see people clinging on to olderJava and the JVM ecosystem are continually advancing and releasingversions. We see that people are slowly moving away from Java 8 towardsnew language features regularly. Together with the growth of openmore recent versions, which is good news. But we still have a long waysource, developers need to be empowered with actionable securityto go as more recent versions are appearing more often in developmentadvice that helps them find and fix security issues. This aligns wellenvironments, and not in production.with Snyk’s mission to help developers worldwide to build securely.We also see that people are using many frameworks and libraries to createtheir applications. Spring Boot is currently the most popular framework,probably because it already comes with many different features. This alsocomes with certain problems.

Snyk for Java securityJava developers affinity to securityJava developers using Snyk can scan their Maven, Gradle, and SBTAs we said earlier, with any popular ecosystem, as it grows, soprojects and find and fix security issues in the open source libraries theydo security concerns. With Java, even though it’s evolving rapidly,import to their manifest files. They can monitor their projects, and detectnot everyone is updating to the latest version. The same holds forvulnerabilities in containerized Java applications, whether impacting theJava applications. We tend to use a lot of dependencies, and theseJava runtime, or the open source libraries internal to the operating systempackages and frameworks we use, depend on other libraries. All directof the container image. With the Snyk Code IntelliJ plugin, developers canand indirect packages end up in your application. Unfortunately, weexperience a developer-first approach to static application security testing,see that a lot of developers could do a better job at maintaining theirleveraging security findings and actionable insights right from their IDE.dependencies. Once a dependency is declared in our manifest file, ittends to stay there forever. Updating is not always a priority, and so isJava and the JVM ecosystem are crucial for Snyk, and one of the reasonsremoving unused packages.we actively contribute to the Java community. For instance by publishinginsightful resources about secure development in Java such as: Java security best practices cheat sheetWith that in mind, let’s look at the top ten most common vulnerablepackages in the Java ecosystem in 2021 so far:10 best practices to build a Java container with Docker01. org.slf4j:slf4j-apiExplaining the Java deserialize vulnerability02. com.fasterxml.jackson.code:jackson-coreFixing vulnerabilities in Maven projectsAnd many more blogs and videosIn addition, we actively contribute to communities like Foojay.io, theVirtual JUG, and several local Java User Groups. But also, on the productside, you see Java plays an important role. Because more developersand companies use Snyk with Java, new features are developed with theprimary focus on Java.03. com.fasterxml.jackson.code:jackson-annotations04. com.fasterxml.jackson.code:jackson-databind05. org.springframework:spring-beans06. org.springframework:spring-core07. commons-codec:commons-codec08. commons-logging:commons-logging09. org.springframework:spring-context10. org.springframework:spring-aop

vulnerable package in, during the first quarter of 2021.Development at Snyk for theJava EcosystemMost of these packages do not have any top-level vulnerabilities. TheWith the continued growth of the Java ecosystem, we believe thatproblems are in the underlying transitive dependencies. In addition, in mostenabling Java and other JVM developers with security informationcases the vulnerabilities are already solved. For instance, the Jackson folksis essential. We try to achieve this by providing tooling and securityare doing an excellent job in fixing their libraries quickly. This also holdsinsights in all steps of your development lifecycle. Picking thefor the Spring libraries. In most cases, there was already a newer versiontooling that fits your current process is essential. For almost allavailable that didn’t have the issues.new features we develop at Snyk, we treat Java as a first-classWe calculated this list by looking at the number of projects we found acitizen. New features like Snyk Code, our SAST tooling where weTaking care of your dependencies is essential. Snyk offers numeroushelp you secure your custom code, and prioritization are developedintegrations, like the ones for the most popular IDEs: IntelliJ IDEA, Eclipse,with Java support from the start.and VS Code. But you can also integrate with your favorite build tool,whether you prefer Maven or Gradle.SIGN UP FOR FREE

Application frameworks57.6%Spring Boot28.7%Spring MVCThe Java world is still a Spring-dominated world, with overhalf of the market using Spring Boot and almost a third24.2%Java EE12.7%Jakarta EEusing Spring MVC. But Java EE and its successor JakartaEE are doing well, at nearly 24.2% and 12.7%.10.8%Quarkus7.6%JSFAn up and coming framework in this year’s list is Quarkus.With more than 10%, not a bad score at all, we will have tosee how this continues over the next couple of years.We find it quite astonishing that there’s a substantialamount of respondents — 16% — that don’t use anyframework. These may be the die-hard developers thatrequire control over everything that happens in theirapplication. That is a heavy burden and deserves a lot ofrespect. In general, we see that we live in a highly Springdominated universe, which appears to indicate that theSpring folks are doing a great job serving the community.Only time will tell if this can be considered a dynasty and ifSpring will stay the king of Java frameworks. Honestly, I donot expect much change shortly, but who s2.5%1.7%Wicket6.5%Other16%None0%All rights reserved. 2021 tipleresponses allowed.25

Demographics1%60%60%19%12%3%We expected more responses fromNorth America, but the demographics5%are similar to the responses from the2%last couple of years. It is great to see,however, that we have developersfrom all over the globe responding tothis survey! This shows how the JVM 1%ecosystem is thriving every

beyond 8. Currently, 61.5% are using Java 11 somewhere in production, and almost 12% are using the latest release, which was Java 15 during the survey. This is huge, because it shows that developers do upgrade their Java version beyond Java 8 to some extent. The mantra that most Java developers are comfortable staying on Java 8