{"id":210,"date":"2016-09-08T07:51:10","date_gmt":"2016-09-08T07:51:10","guid":{"rendered":"http:\/\/redmonk.com\/fryan\/?p=210"},"modified":"2016-10-11T19:22:47","modified_gmt":"2016-10-11T19:22:47","slug":"language-framework-popularity-a-look-java","status":"publish","type":"post","link":"https:\/\/redmonk.com\/fryan\/2016\/09\/08\/language-framework-popularity-a-look-java\/","title":{"rendered":"Language Framework Popularity: A Look at Java"},"content":{"rendered":"<p><strong>TL; DR<\/strong> \u2013 Spring still dominates, Spring Boot is on an exponential curve, Netty and Play continue to grow strongly<\/p>\n<p><em>Framework: \u2018a basic structure underlying a system, concept, or text.\u2019<\/em><\/p>\n<p>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.\u00a0Over 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.<\/p>\n<p>In the bi-annual <a href=\"http:\/\/redmonk.com\/sogrady\/2016\/07\/20\/language-rankings-6-16\/\">RedMonk Programming Language Rankings<\/a> produced by my colleague <a href=\"http:\/\/twitter.som\/sogrady\">Stephen O\u2019Grady<\/a> 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 <a href=\"http:\/\/twitter.com\/monkchips\">James Governor<\/a> rightly points out \u2018<a href=\"http:\/\/redmonk.com\/jgovernor\/2016\/02\/24\/on-lightbend-lagom-and-java-is-dead-is-dead\/\">Java is Dead is Dead<\/a>\u2019.<\/p>\n<p>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&#8217;Grady <a href=\"http:\/\/redmonk.com\/sogrady\/2011\/04\/27\/frameworks-lead-adoption\/\">has covered in the past<\/a>. 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.<\/p>\n<p>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 <a href=\"http:\/\/twitter.com\/fintanr\">twitter<\/a>.<\/p>\n<h2>Framework Popularity<\/h2>\n<p><a href=\"http:\/\/redmonk.com\/fryan\/files\/2016\/09\/Java-fw-stars-20160905.png\"><img loading=\"lazy\" decoding=\"async\" class=\"wp-image-213 size-medium aligncenter\" src=\"http:\/\/redmonk.com\/fryan\/files\/2016\/09\/Java-fw-stars-20160905-300x300.png\" alt=\"Java-fw-stars-20160905\" width=\"300\" height=\"300\" srcset=\"https:\/\/redmonk.com\/fryan\/files\/2016\/09\/Java-fw-stars-20160905-300x300.png 300w, https:\/\/redmonk.com\/fryan\/files\/2016\/09\/Java-fw-stars-20160905-150x150.png 150w, https:\/\/redmonk.com\/fryan\/files\/2016\/09\/Java-fw-stars-20160905-768x768.png 768w, https:\/\/redmonk.com\/fryan\/files\/2016\/09\/Java-fw-stars-20160905-1024x1024.png 1024w\" sizes=\"auto, (max-width: 300px) 100vw, 300px\" \/><\/a><a href=\"http:\/\/redmonk.com\/fryan\/files\/2016\/09\/Java-fw-issues-20160905.png\"><img loading=\"lazy\" decoding=\"async\" class=\"wp-image-212 size-medium aligncenter\" src=\"http:\/\/redmonk.com\/fryan\/files\/2016\/09\/Java-fw-issues-20160905-300x300.png\" alt=\"Java-fw-issues-20160905\" width=\"300\" height=\"300\" srcset=\"https:\/\/redmonk.com\/fryan\/files\/2016\/09\/Java-fw-issues-20160905-300x300.png 300w, https:\/\/redmonk.com\/fryan\/files\/2016\/09\/Java-fw-issues-20160905-150x150.png 150w, https:\/\/redmonk.com\/fryan\/files\/2016\/09\/Java-fw-issues-20160905-768x768.png 768w, https:\/\/redmonk.com\/fryan\/files\/2016\/09\/Java-fw-issues-20160905-1024x1024.png 1024w\" sizes=\"auto, (max-width: 300px) 100vw, 300px\" \/><\/a><\/p>\n<p><a href=\"http:\/\/redmonk.com\/fryan\/files\/2016\/09\/Java-fw-commits-20160905.png\"><img loading=\"lazy\" decoding=\"async\" class=\"wp-image-211 size-medium aligncenter\" src=\"http:\/\/redmonk.com\/fryan\/files\/2016\/09\/Java-fw-commits-20160905-300x300.png\" alt=\"Java-fw-commits-20160905\" width=\"300\" height=\"300\" srcset=\"https:\/\/redmonk.com\/fryan\/files\/2016\/09\/Java-fw-commits-20160905-300x300.png 300w, https:\/\/redmonk.com\/fryan\/files\/2016\/09\/Java-fw-commits-20160905-150x150.png 150w, https:\/\/redmonk.com\/fryan\/files\/2016\/09\/Java-fw-commits-20160905-768x768.png 768w, https:\/\/redmonk.com\/fryan\/files\/2016\/09\/Java-fw-commits-20160905-1024x1024.png 1024w\" sizes=\"auto, (max-width: 300px) 100vw, 300px\" \/><\/a><a href=\"http:\/\/redmonk.com\/fryan\/files\/2016\/09\/java-fw-twitter-2016-09-05.png\"><img loading=\"lazy\" decoding=\"async\" class=\"wp-image-214 size-medium aligncenter\" src=\"http:\/\/redmonk.com\/fryan\/files\/2016\/09\/java-fw-twitter-2016-09-05-300x254.png\" alt=\"java-fw-twitter-2016-09-05\" width=\"300\" height=\"254\" srcset=\"https:\/\/redmonk.com\/fryan\/files\/2016\/09\/java-fw-twitter-2016-09-05-300x254.png 300w, https:\/\/redmonk.com\/fryan\/files\/2016\/09\/java-fw-twitter-2016-09-05-768x651.png 768w, https:\/\/redmonk.com\/fryan\/files\/2016\/09\/java-fw-twitter-2016-09-05-1024x868.png 1024w\" sizes=\"auto, (max-width: 300px) 100vw, 300px\" \/><\/a><\/p>\n<p>&nbsp;<\/p>\n<p>&nbsp;<\/p>\n<p>&nbsp;<\/p>\n<p>We firstly looked at 15 significant frameworks, and two clear tiers emerged. The tier 1 frameworks consisted of<\/p>\n<ul>\n<li><a href=\"http:\/\/spring.io\">Spring<\/a><\/li>\n<li><a href=\"https:\/\/www.playframework.com\/\">Play<\/a><\/li>\n<li><a href=\"http:\/\/netty.io\/\">Netty<\/a><\/li>\n<li><a href=\"http:\/\/spring.io\">Spring Boot<\/a><\/li>\n<li><a href=\"http:\/\/vertx.io\/\">VertX<\/a><\/li>\n<li><a href=\"http:\/\/www.dropwizard.io\">Dropwizard<\/a><\/li>\n<li><a href=\"http:\/\/sparkjava.com\/\">Spark Java<\/a><\/li>\n<\/ul>\n<p>It is on these Tier 1 frameworks we will focus the rest of our analysis.<\/p>\n<h2><a href=\"http:\/\/redmonk.com\/fryan\/files\/2016\/09\/top-Java-fw-stars-20160905.png\"><img loading=\"lazy\" decoding=\"async\" class=\"aligncenter size-medium wp-image-217\" src=\"http:\/\/redmonk.com\/fryan\/files\/2016\/09\/top-Java-fw-stars-20160905-300x300.png\" alt=\"top-Java-fw-stars-20160905\" width=\"300\" height=\"300\" srcset=\"https:\/\/redmonk.com\/fryan\/files\/2016\/09\/top-Java-fw-stars-20160905-300x300.png 300w, https:\/\/redmonk.com\/fryan\/files\/2016\/09\/top-Java-fw-stars-20160905-150x150.png 150w, https:\/\/redmonk.com\/fryan\/files\/2016\/09\/top-Java-fw-stars-20160905-768x768.png 768w, https:\/\/redmonk.com\/fryan\/files\/2016\/09\/top-Java-fw-stars-20160905-1024x1024.png 1024w\" sizes=\"auto, (max-width: 300px) 100vw, 300px\" \/><\/a>A Closer Look at Tier 1 Frameworks<\/h2>\n<h3>Commits &amp; Issues<\/h3>\n<p>While stars are useful proxy for interest in a framework, commits and issues are a more interesting measure of the vibrancy of the community.<\/p>\n<p><img loading=\"lazy\" decoding=\"async\" class=\"aligncenter size-medium wp-image-215\" src=\"http:\/\/redmonk.com\/fryan\/files\/2016\/09\/top-Java-fw-commits-20160905-300x300.png\" alt=\"top-Java-fw-commits-20160905\" width=\"300\" height=\"300\" srcset=\"https:\/\/redmonk.com\/fryan\/files\/2016\/09\/top-Java-fw-commits-20160905-300x300.png 300w, https:\/\/redmonk.com\/fryan\/files\/2016\/09\/top-Java-fw-commits-20160905-150x150.png 150w, https:\/\/redmonk.com\/fryan\/files\/2016\/09\/top-Java-fw-commits-20160905-768x768.png 768w, https:\/\/redmonk.com\/fryan\/files\/2016\/09\/top-Java-fw-commits-20160905-1024x1024.png 1024w\" sizes=\"auto, (max-width: 300px) 100vw, 300px\" \/> <a href=\"http:\/\/redmonk.com\/fryan\/files\/2016\/09\/top-Java-fw-issues-20160905.png\"><img loading=\"lazy\" decoding=\"async\" class=\"aligncenter size-medium wp-image-216\" src=\"http:\/\/redmonk.com\/fryan\/files\/2016\/09\/top-Java-fw-issues-20160905-300x300.png\" alt=\"top-Java-fw-issues-20160905\" width=\"300\" height=\"300\" srcset=\"https:\/\/redmonk.com\/fryan\/files\/2016\/09\/top-Java-fw-issues-20160905-300x300.png 300w, https:\/\/redmonk.com\/fryan\/files\/2016\/09\/top-Java-fw-issues-20160905-150x150.png 150w, https:\/\/redmonk.com\/fryan\/files\/2016\/09\/top-Java-fw-issues-20160905-768x768.png 768w, https:\/\/redmonk.com\/fryan\/files\/2016\/09\/top-Java-fw-issues-20160905-1024x1024.png 1024w\" sizes=\"auto, (max-width: 300px) 100vw, 300px\" \/><\/a><\/p>\n<p>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.<\/p>\n<h2>Commercial &amp; Community Contributions Tier 1 Frameworks<\/h2>\n<p>For each of the tier 1 frameworks we identified, where possible, commercial contributions and issues raised, and split into three distinct groups \u2013 the primary commercial entity contributing code and\/or raising issues, other commercial entities and the wider community.<\/p>\n<h3>Spring<\/h3>\n<p><a href=\"http:\/\/redmonk.com\/fryan\/files\/2016\/09\/java-Spring.Framework-ccc-20160905.png\"><img loading=\"lazy\" decoding=\"async\" class=\"aligncenter size-medium wp-image-218\" src=\"http:\/\/redmonk.com\/fryan\/files\/2016\/09\/java-Spring.Framework-ccc-20160905-300x300.png\" alt=\"java-Spring.Framework-ccc-20160905\" width=\"300\" height=\"300\" srcset=\"https:\/\/redmonk.com\/fryan\/files\/2016\/09\/java-Spring.Framework-ccc-20160905-300x300.png 300w, https:\/\/redmonk.com\/fryan\/files\/2016\/09\/java-Spring.Framework-ccc-20160905-150x150.png 150w, https:\/\/redmonk.com\/fryan\/files\/2016\/09\/java-Spring.Framework-ccc-20160905-768x768.png 768w, https:\/\/redmonk.com\/fryan\/files\/2016\/09\/java-Spring.Framework-ccc-20160905-1024x1024.png 1024w\" sizes=\"auto, (max-width: 300px) 100vw, 300px\" \/><\/a> <a href=\"http:\/\/redmonk.com\/fryan\/files\/2016\/09\/java-Spring.Framework-cci-20160905.png\"><img loading=\"lazy\" decoding=\"async\" class=\"aligncenter size-medium wp-image-219\" src=\"http:\/\/redmonk.com\/fryan\/files\/2016\/09\/java-Spring.Framework-cci-20160905-300x300.png\" alt=\"java-Spring.Framework-cci-20160905\" width=\"300\" height=\"300\" srcset=\"https:\/\/redmonk.com\/fryan\/files\/2016\/09\/java-Spring.Framework-cci-20160905-300x300.png 300w, https:\/\/redmonk.com\/fryan\/files\/2016\/09\/java-Spring.Framework-cci-20160905-150x150.png 150w, https:\/\/redmonk.com\/fryan\/files\/2016\/09\/java-Spring.Framework-cci-20160905-768x768.png 768w, https:\/\/redmonk.com\/fryan\/files\/2016\/09\/java-Spring.Framework-cci-20160905-1024x1024.png 1024w\" sizes=\"auto, (max-width: 300px) 100vw, 300px\" \/><\/a><\/p>\n<p>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.<\/p>\n<h3>Play<\/h3>\n<h3><a href=\"http:\/\/redmonk.com\/fryan\/files\/2016\/09\/java-Play-ccc-20160905.png\"><img loading=\"lazy\" decoding=\"async\" class=\"aligncenter size-medium wp-image-220\" src=\"http:\/\/redmonk.com\/fryan\/files\/2016\/09\/java-Play-ccc-20160905-300x300.png\" alt=\"java-Play-ccc-20160905\" width=\"300\" height=\"300\" srcset=\"https:\/\/redmonk.com\/fryan\/files\/2016\/09\/java-Play-ccc-20160905-300x300.png 300w, https:\/\/redmonk.com\/fryan\/files\/2016\/09\/java-Play-ccc-20160905-150x150.png 150w, https:\/\/redmonk.com\/fryan\/files\/2016\/09\/java-Play-ccc-20160905-768x768.png 768w, https:\/\/redmonk.com\/fryan\/files\/2016\/09\/java-Play-ccc-20160905-1024x1024.png 1024w\" sizes=\"auto, (max-width: 300px) 100vw, 300px\" \/><\/a> <a href=\"http:\/\/redmonk.com\/fryan\/files\/2016\/09\/java-Play-cci-20160905.png\"><img loading=\"lazy\" decoding=\"async\" class=\"aligncenter size-medium wp-image-221\" src=\"http:\/\/redmonk.com\/fryan\/files\/2016\/09\/java-Play-cci-20160905-300x300.png\" alt=\"java-Play-cci-20160905\" width=\"300\" height=\"300\" srcset=\"https:\/\/redmonk.com\/fryan\/files\/2016\/09\/java-Play-cci-20160905-300x300.png 300w, https:\/\/redmonk.com\/fryan\/files\/2016\/09\/java-Play-cci-20160905-150x150.png 150w, https:\/\/redmonk.com\/fryan\/files\/2016\/09\/java-Play-cci-20160905-768x768.png 768w, https:\/\/redmonk.com\/fryan\/files\/2016\/09\/java-Play-cci-20160905-1024x1024.png 1024w\" sizes=\"auto, (max-width: 300px) 100vw, 300px\" \/><\/a><\/h3>\n<p>Lightbend (formerly Typesafe) lead in both contributions and issues with, although this activity very closely tracks the community involvement.<\/p>\n<h3>Netty<\/h3>\n<p><a href=\"http:\/\/redmonk.com\/fryan\/files\/2016\/09\/java-Netty-ccc-20160905.png\"><img loading=\"lazy\" decoding=\"async\" class=\"aligncenter size-medium wp-image-222\" src=\"http:\/\/redmonk.com\/fryan\/files\/2016\/09\/java-Netty-ccc-20160905-300x300.png\" alt=\"java-Netty-ccc-20160905\" width=\"300\" height=\"300\" srcset=\"https:\/\/redmonk.com\/fryan\/files\/2016\/09\/java-Netty-ccc-20160905-300x300.png 300w, https:\/\/redmonk.com\/fryan\/files\/2016\/09\/java-Netty-ccc-20160905-150x150.png 150w, https:\/\/redmonk.com\/fryan\/files\/2016\/09\/java-Netty-ccc-20160905-768x768.png 768w, https:\/\/redmonk.com\/fryan\/files\/2016\/09\/java-Netty-ccc-20160905-1024x1024.png 1024w\" sizes=\"auto, (max-width: 300px) 100vw, 300px\" \/><\/a> <a href=\"http:\/\/redmonk.com\/fryan\/files\/2016\/09\/java-Netty-cci-20160905.png\"><img loading=\"lazy\" decoding=\"async\" class=\"aligncenter size-medium wp-image-223\" src=\"http:\/\/redmonk.com\/fryan\/files\/2016\/09\/java-Netty-cci-20160905-300x300.png\" alt=\"java-Netty-cci-20160905\" width=\"300\" height=\"300\" srcset=\"https:\/\/redmonk.com\/fryan\/files\/2016\/09\/java-Netty-cci-20160905-300x300.png 300w, https:\/\/redmonk.com\/fryan\/files\/2016\/09\/java-Netty-cci-20160905-150x150.png 150w, https:\/\/redmonk.com\/fryan\/files\/2016\/09\/java-Netty-cci-20160905-768x768.png 768w, https:\/\/redmonk.com\/fryan\/files\/2016\/09\/java-Netty-cci-20160905-1024x1024.png 1024w\" sizes=\"auto, (max-width: 300px) 100vw, 300px\" \/><\/a><\/p>\n<p>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.<\/p>\n<h3>Spring Boot<\/h3>\n<p><a href=\"http:\/\/redmonk.com\/fryan\/files\/2016\/09\/java-Spring.Boot-ccc-20160905.png\"><img loading=\"lazy\" decoding=\"async\" class=\"aligncenter size-medium wp-image-224\" src=\"http:\/\/redmonk.com\/fryan\/files\/2016\/09\/java-Spring.Boot-ccc-20160905-300x300.png\" alt=\"java-Spring.Boot-ccc-20160905\" width=\"300\" height=\"300\" srcset=\"https:\/\/redmonk.com\/fryan\/files\/2016\/09\/java-Spring.Boot-ccc-20160905-300x300.png 300w, https:\/\/redmonk.com\/fryan\/files\/2016\/09\/java-Spring.Boot-ccc-20160905-150x150.png 150w, https:\/\/redmonk.com\/fryan\/files\/2016\/09\/java-Spring.Boot-ccc-20160905-768x768.png 768w, https:\/\/redmonk.com\/fryan\/files\/2016\/09\/java-Spring.Boot-ccc-20160905-1024x1024.png 1024w\" sizes=\"auto, (max-width: 300px) 100vw, 300px\" \/><\/a> <a href=\"http:\/\/redmonk.com\/fryan\/files\/2016\/09\/java-Spring.Boot-cci-20160905.png\"><img loading=\"lazy\" decoding=\"async\" class=\"aligncenter size-medium wp-image-225\" src=\"http:\/\/redmonk.com\/fryan\/files\/2016\/09\/java-Spring.Boot-cci-20160905-300x300.png\" alt=\"java-Spring.Boot-cci-20160905\" width=\"300\" height=\"300\" srcset=\"https:\/\/redmonk.com\/fryan\/files\/2016\/09\/java-Spring.Boot-cci-20160905-300x300.png 300w, https:\/\/redmonk.com\/fryan\/files\/2016\/09\/java-Spring.Boot-cci-20160905-150x150.png 150w, https:\/\/redmonk.com\/fryan\/files\/2016\/09\/java-Spring.Boot-cci-20160905-768x768.png 768w, https:\/\/redmonk.com\/fryan\/files\/2016\/09\/java-Spring.Boot-cci-20160905-1024x1024.png 1024w\" sizes=\"auto, (max-width: 300px) 100vw, 300px\" \/><\/a><\/p>\n<p>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.<\/p>\n<h3>VertX<\/h3>\n<h2><a href=\"http:\/\/redmonk.com\/fryan\/files\/2016\/09\/java-VertX-ccc-20160905.png\"><img loading=\"lazy\" decoding=\"async\" class=\"aligncenter size-medium wp-image-226\" src=\"http:\/\/redmonk.com\/fryan\/files\/2016\/09\/java-VertX-ccc-20160905-300x300.png\" alt=\"java-VertX-ccc-20160905\" width=\"300\" height=\"300\" srcset=\"https:\/\/redmonk.com\/fryan\/files\/2016\/09\/java-VertX-ccc-20160905-300x300.png 300w, https:\/\/redmonk.com\/fryan\/files\/2016\/09\/java-VertX-ccc-20160905-150x150.png 150w, https:\/\/redmonk.com\/fryan\/files\/2016\/09\/java-VertX-ccc-20160905-768x768.png 768w, https:\/\/redmonk.com\/fryan\/files\/2016\/09\/java-VertX-ccc-20160905-1024x1024.png 1024w\" sizes=\"auto, (max-width: 300px) 100vw, 300px\" \/><\/a> <a href=\"http:\/\/redmonk.com\/fryan\/files\/2016\/09\/java-VertX-cci-20160905.png\"><img loading=\"lazy\" decoding=\"async\" class=\"aligncenter size-medium wp-image-227\" src=\"http:\/\/redmonk.com\/fryan\/files\/2016\/09\/java-VertX-cci-20160905-300x300.png\" alt=\"java-VertX-cci-20160905\" width=\"300\" height=\"300\" srcset=\"https:\/\/redmonk.com\/fryan\/files\/2016\/09\/java-VertX-cci-20160905-300x300.png 300w, https:\/\/redmonk.com\/fryan\/files\/2016\/09\/java-VertX-cci-20160905-150x150.png 150w, https:\/\/redmonk.com\/fryan\/files\/2016\/09\/java-VertX-cci-20160905-768x768.png 768w, https:\/\/redmonk.com\/fryan\/files\/2016\/09\/java-VertX-cci-20160905-1024x1024.png 1024w\" sizes=\"auto, (max-width: 300px) 100vw, 300px\" \/><\/a><\/h2>\n<p>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.<\/p>\n<h3>Dropwizard<\/h3>\n<h3><a href=\"http:\/\/redmonk.com\/fryan\/files\/2016\/09\/java-DropWizard-ccc-20160905.png\"><img loading=\"lazy\" decoding=\"async\" class=\"aligncenter size-medium wp-image-228\" src=\"http:\/\/redmonk.com\/fryan\/files\/2016\/09\/java-DropWizard-ccc-20160905-300x300.png\" alt=\"java-DropWizard-ccc-20160905\" width=\"300\" height=\"300\" srcset=\"https:\/\/redmonk.com\/fryan\/files\/2016\/09\/java-DropWizard-ccc-20160905-300x300.png 300w, https:\/\/redmonk.com\/fryan\/files\/2016\/09\/java-DropWizard-ccc-20160905-150x150.png 150w, https:\/\/redmonk.com\/fryan\/files\/2016\/09\/java-DropWizard-ccc-20160905-768x768.png 768w, https:\/\/redmonk.com\/fryan\/files\/2016\/09\/java-DropWizard-ccc-20160905-1024x1024.png 1024w\" sizes=\"auto, (max-width: 300px) 100vw, 300px\" \/><\/a> <a href=\"http:\/\/redmonk.com\/fryan\/files\/2016\/09\/java-DropWizard-cci-20160905.png\"><img loading=\"lazy\" decoding=\"async\" class=\"aligncenter size-medium wp-image-229\" src=\"http:\/\/redmonk.com\/fryan\/files\/2016\/09\/java-DropWizard-cci-20160905-300x300.png\" alt=\"java-DropWizard-cci-20160905\" width=\"300\" height=\"300\" srcset=\"https:\/\/redmonk.com\/fryan\/files\/2016\/09\/java-DropWizard-cci-20160905-300x300.png 300w, https:\/\/redmonk.com\/fryan\/files\/2016\/09\/java-DropWizard-cci-20160905-150x150.png 150w, https:\/\/redmonk.com\/fryan\/files\/2016\/09\/java-DropWizard-cci-20160905-768x768.png 768w, https:\/\/redmonk.com\/fryan\/files\/2016\/09\/java-DropWizard-cci-20160905-1024x1024.png 1024w\" sizes=\"auto, (max-width: 300px) 100vw, 300px\" \/><\/a><\/h3>\n<p>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.<\/p>\n<h3>Spark Java<\/h3>\n<h3><a href=\"http:\/\/redmonk.com\/fryan\/files\/2016\/09\/java-Spark.Java-ccc-20160905.png\"><img loading=\"lazy\" decoding=\"async\" class=\"aligncenter size-medium wp-image-230\" src=\"http:\/\/redmonk.com\/fryan\/files\/2016\/09\/java-Spark.Java-ccc-20160905-300x300.png\" alt=\"java-Spark.Java-ccc-20160905\" width=\"300\" height=\"300\" srcset=\"https:\/\/redmonk.com\/fryan\/files\/2016\/09\/java-Spark.Java-ccc-20160905-300x300.png 300w, https:\/\/redmonk.com\/fryan\/files\/2016\/09\/java-Spark.Java-ccc-20160905-150x150.png 150w, https:\/\/redmonk.com\/fryan\/files\/2016\/09\/java-Spark.Java-ccc-20160905-768x768.png 768w, https:\/\/redmonk.com\/fryan\/files\/2016\/09\/java-Spark.Java-ccc-20160905-1024x1024.png 1024w\" sizes=\"auto, (max-width: 300px) 100vw, 300px\" \/><\/a> <a href=\"http:\/\/redmonk.com\/fryan\/files\/2016\/09\/java-Spark.Java-cci-20160905.png\"><img loading=\"lazy\" decoding=\"async\" class=\"aligncenter size-medium wp-image-231\" src=\"http:\/\/redmonk.com\/fryan\/files\/2016\/09\/java-Spark.Java-cci-20160905-300x300.png\" alt=\"java-Spark.Java-cci-20160905\" width=\"300\" height=\"300\" srcset=\"https:\/\/redmonk.com\/fryan\/files\/2016\/09\/java-Spark.Java-cci-20160905-300x300.png 300w, https:\/\/redmonk.com\/fryan\/files\/2016\/09\/java-Spark.Java-cci-20160905-150x150.png 150w, https:\/\/redmonk.com\/fryan\/files\/2016\/09\/java-Spark.Java-cci-20160905-768x768.png 768w, https:\/\/redmonk.com\/fryan\/files\/2016\/09\/java-Spark.Java-cci-20160905-1024x1024.png 1024w\" sizes=\"auto, (max-width: 300px) 100vw, 300px\" \/><\/a><\/h3>\n<p>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.<\/p>\n<h2>Commercial Support &amp; Licensing Information<\/h2>\n<p>&nbsp;<\/p>\n<p>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. \u00a0All of the Tier 1 frameworks are available under an Apache 2.0 license.<\/p>\n<table border=\"1\">\n<tbody>\n<tr>\n<td><strong>Framework<\/strong><\/td>\n<td><strong>Commercial Support<\/strong><\/td>\n<td><strong>License<\/strong><\/td>\n<\/tr>\n<tr>\n<td>Spring<\/td>\n<td><a href=\"http:\/\/pivotal.io\">Pivotal<\/a><\/td>\n<td>Apache 2.0<\/td>\n<\/tr>\n<tr>\n<td>Play<\/td>\n<td><a href=\"http:\/\/lightbend.com\">Lightbend<\/a><\/td>\n<td>Apache 2.0<\/td>\n<\/tr>\n<tr>\n<td>Netty<\/td>\n<td>None<\/td>\n<td>Apache 2.0<\/td>\n<\/tr>\n<tr>\n<td>Spring Boot<\/td>\n<td><a href=\"http:\/\/pivotal.io\">Pivotal<\/a><\/td>\n<td>Apache 2.0<\/td>\n<\/tr>\n<tr>\n<td>VertX<\/td>\n<td>nothing official,<br \/>\nRed Hat considered\u00a0possible<\/td>\n<td>Dual licensed,<br \/>\nEclipse 1.0, Apache 2.0<\/td>\n<\/tr>\n<tr>\n<td>Dropwizard<\/td>\n<td>None<\/td>\n<td>Apache 2.0<\/td>\n<\/tr>\n<tr>\n<td>Spark Java<\/td>\n<td>None<\/td>\n<td>Apache 2.0<\/td>\n<\/tr>\n<\/tbody>\n<\/table>\n<p><strong>Notes on the analysis<\/strong><\/p>\n<ul>\n<li>Data was pulled at the end of August<\/li>\n<li>Where possible we have identified commercial contributions to a project, but there will be some minor gaps and inaccuracies in this mapping.<\/li>\n<\/ul>\n<p><strong>Disclaimers<\/strong>: Pivotal, Red Hat, Oracle, Lightbend (formerly TypeSafe) are current RedMonk customers.<\/p>\n","protected":false},"excerpt":{"rendered":"<p>TL; DR \u2013 Spring still dominates, Spring Boot is on an exponential curve, Netty and Play continue to grow strongly Framework: \u2018a basic structure underlying a system, concept, or text.\u2019 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<\/p>\n","protected":false},"author":40,"featured_media":0,"comment_status":"open","ping_status":"open","sticky":false,"template":"","format":"standard","meta":{"footnotes":""},"categories":[19,15,32,33],"tags":[],"class_list":["post-210","post","type-post","status-publish","format-standard","hentry","category-community","category-developers","category-frameworks","category-java"],"jetpack_featured_media_url":"","_links":{"self":[{"href":"https:\/\/redmonk.com\/fryan\/wp-json\/wp\/v2\/posts\/210","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/redmonk.com\/fryan\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/redmonk.com\/fryan\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/redmonk.com\/fryan\/wp-json\/wp\/v2\/users\/40"}],"replies":[{"embeddable":true,"href":"https:\/\/redmonk.com\/fryan\/wp-json\/wp\/v2\/comments?post=210"}],"version-history":[{"count":0,"href":"https:\/\/redmonk.com\/fryan\/wp-json\/wp\/v2\/posts\/210\/revisions"}],"wp:attachment":[{"href":"https:\/\/redmonk.com\/fryan\/wp-json\/wp\/v2\/media?parent=210"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/redmonk.com\/fryan\/wp-json\/wp\/v2\/categories?post=210"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/redmonk.com\/fryan\/wp-json\/wp\/v2\/tags?post=210"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}