I received an interesting email today from Iris Shoor, VP of Product and Marketing at Takipi, a start-up that aims to help you know when a new deployment breaks your application in production [at right, Iris is glancing, but seems not all that concerned by that "Illegal Argument" monster that has suddenly camped out on her shoulder]. Iris is a co-founder of Takipi, and she said "I thought this might interest you and be relevant for Java.net." I think it is indeed interesting!
Handing it off to Iris:
A few months ago we began working on an internal project to learn what are the most popular code libraries Java developers use today. We decided to use the biggest resource for code out there - GitHub.
We built an application which indexed and ranked over 10,000 Java projects, leaning towards the ones most favorited by developers. From this we compiled a list of the 100 popular Java technologies.
That sounds interesting, right? One of the great things about GitHub is the GitHub API. The API provides users with a large set of data about GitHub projects, GitHub users, repositories, issues... It's really quite powerful.
So, what did the Takipi team find when they utilized the API to search Java projects on GitHub? Iris notes these interesting findings:
- Google has risen to be is one of the driving forces in Java, having built 7% of the top 100 libraries used today. That gets close to those of Spring and Apache Common which split 25% equally.
- Hadoop is living up to its promise as the leading big data technology with 168 entries.
- ElasticSearch, for searching across large data sets, is also doing quite well with over a 100 projects using it.
- These figures come close and even surpass those of traditional relational DBs such as MySql with 225 entries, and 121 entries for Postgre SQL.
So, in the top 10,000 most-favorited Java projects on GitHub, what are the most utilized libraries?
- slf4j-api (a logging library) is used in 3068 of the projects
- junit (a testing library) is used in 3068 of the projects
- log4j (a logging library) is used in 891 of the projects
And what categories of libraries are most utilized in the top 10,000 most-favorited Java projects on GitHub?
- logging libraries are used in 5937 of the projects
- testing libraries are used in 4014 of the projects
- libraries classed as 'util' are used in 3991 of the projects
- libraries classed as 'db' are used in 2528 of the projects
- libraries classed as 'web' are used in 2064 of the projects
The amount of data Takipi provides in this document is way more than I can possibly sort through in a single blog. It's such a fascinating study, though! So, I wanted to get the news out to the Java.net community right away.
Takipi is a start-up, but many members of the Takipi team have worked together for quite a while, and they've worked on some pretty mission critical software in the past. I think Autodesk may have lost a superb team when Takipi was formed. But, that's likely a gain for the rest of us!
Subscriptions and Archives: You can subscribe to this blog using the java.net Editor's Blog Feed. You can also subscribe to the Java Today RSS feed and the java.net blogs feed. To follow Java.net net on Twitter, follow @javanetbuzz.