Charting Stacks

Language Framework Popularity: A Look at Java

Share via Twitter Share via Facebook Share via Linkedin Share via Reddit

TL; DR – Spring still dominates, Spring Boot is on an exponential curve, Netty and Play continue to grow strongly

Framework: ‘a basic structure underlying a system, concept, or text.’

Within the software industry we have always had the privilege of standing on the shoulders of the giants that came before us when it comes to tools and methodologies. Frameworks in various forms have always existed. Over the last ten years, however, the number and variety of frameworks across most programming languages available for developers to choose has grown at an astounding rate. This growth has been fueled to a large degree by the growth in, and commercial acceptance of, opensource software. For developers, and the organisations they work in, choosing the right framework for the task at hand has become a commercially sensitive decision.

In the bi-annual RedMonk Programming Language Rankings produced by my colleague Stephen O’Grady we consistently see Java as one of the most popular languages. While the popularity of Java continues to be a surprise to some, it is something we here in RedMonk have been highlighting for a long, long time. As my colleague James Governor rightly points out ‘Java is Dead is Dead’.

One of the factors which drives the popularity of a language is the availability of frameworks and tools which enhance developer productivity, something which Stephen O’Grady has covered in the past. Java has a plethora of possible options, but as we will see a number of frameworks emerge as the most popular choice within the software development community. As always ease of use, with a focus on packaging, wins out.

For the purposes of this analysis we looked at the frameworks we hear mentioned in our conversations around Java. These frameworks are primarily focused on the server side. This is by no means a fully exhaustive list, but it does capture the most popular frameworks that we see being used with Java (some frameworks are also used with other languages, such as Play, and some frameworks are layered together, such as Netty and VertX). If there is a framework you feel we should be looking please do add a comment below or let me know on twitter.

Framework Popularity

Java-fw-stars-20160905Java-fw-issues-20160905

Java-fw-commits-20160905java-fw-twitter-2016-09-05

 

 

 

We firstly looked at 15 significant frameworks, and two clear tiers emerged. The tier 1 frameworks consisted of

It is on these Tier 1 frameworks we will focus the rest of our analysis.

top-Java-fw-stars-20160905A Closer Look at Tier 1 Frameworks

Commits & Issues

While stars are useful proxy for interest in a framework, commits and issues are a more interesting measure of the vibrancy of the community.

top-Java-fw-commits-20160905 top-Java-fw-issues-20160905

In terms of commit activity Spring, Spring Boot, Play and Netty are the most active, while on the issues front Spring Boot, Netty and Play take a clear lead.

Commercial & Community Contributions Tier 1 Frameworks

For each of the tier 1 frameworks we identified, where possible, commercial contributions and issues raised, and split into three distinct groups – the primary commercial entity contributing code and/or raising issues, other commercial entities and the wider community.

Spring

java-Spring.Framework-ccc-20160905 java-Spring.Framework-cci-20160905

Unsurprisingly given their stewardship of the project Pivotal are by far the largest commerical contributor to Spring. We do see the wider community raising most of the issues with Spring, again unsurprising given the wide adoption of the Spring Framework.

Play

java-Play-ccc-20160905 java-Play-cci-20160905

Lightbend (formerly Typesafe) lead in both contributions and issues with, although this activity very closely tracks the community involvement.

Netty

java-Netty-ccc-20160905 java-Netty-cci-20160905

Netty, formerly part of the JBoss project, remains extremely popular. There is no clear commercial sponsor at this point, but a large degree of commercial interest. Interestingly Apple now create the most issues, but this predominantly due to a single contributor.

Spring Boot

java-Spring.Boot-ccc-20160905 java-Spring.Boot-cci-20160905

Once again Pivotal are by far the largest contributor to Spring Boot. On the issues front the rapidly growing community is reflected in the number of monthly issues being created.

VertX

java-VertX-ccc-20160905 java-VertX-cci-20160905

The largest commercial contributor to VertX is Red Hat, with the majority of issues coming from the wider community. This reflects the hiring of specific core contributors by Red Hat.

Dropwizard

java-DropWizard-ccc-20160905 java-DropWizard-cci-20160905

DropWizard was originally developed by Yammer, who remain the largest contributor to the project in code commits. The wider community contributes almost all of the issues related to DropWizard.

Spark Java

java-Spark.Java-ccc-20160905 java-Spark.Java-cci-20160905

The lead engineers for Spark Java work for Sony Mobile, which continues to be the largest commerical contributor. The wider community continues to raise the majority of issues.

Commercial Support & Licensing Information

 

When we move to large scale enterprise deployments, commercial support can become a significant factor, only three of the tier 1 frameworks currently have formal commercial support.  All of the Tier 1 frameworks are available under an Apache 2.0 license.

Framework Commercial Support License
Spring Pivotal Apache 2.0
Play Lightbend Apache 2.0
Netty None Apache 2.0
Spring Boot Pivotal Apache 2.0
VertX nothing official,
Red Hat considered possible
Dual licensed,
Eclipse 1.0, Apache 2.0
Dropwizard None Apache 2.0
Spark Java None Apache 2.0

Notes on the analysis

  • Data was pulled at the end of August
  • Where possible we have identified commercial contributions to a project, but there will be some minor gaps and inaccuracies in this mapping.

Disclaimers: Pivotal, Red Hat, Oracle, Lightbend (formerly TypeSafe) are current RedMonk customers.

4 comments

  1. Next time would you mind including Ratpack (ratpack.io)? Thanks!

    1. Happy to, thanks for the pointer.

      1. +1 for including Ratpack

  2. Thanks for the analysis. I’d love to see a breakdown of Scala web frameworks.

Leave a Reply to fryan Cancel reply

Your email address will not be published.