What are the most popular libraries in Java, JS, and Ruby?

Love them or loath them, choosing which library to use for your latest project can be one of the most challenging aspects of the planning process. That’s not necessarily a bad thing though - the huge variety of choice means that you’ve a wealth of options at hand to meet individual needs.

The downside of this is that it can be all to easy to be swayed by a sexy new framework over old faithful alternatives, only to find a few months down the line that the committers behind it have disappeared as fast as they signed up.

With this in mind, production server debugging specialists Takipi wanted to take a look at the communities of users and contributors behind the myriad of options out there to see which ones appeared to have the highest volumes of engagement - and by proxy, chances of being successful in years to come.

To do this, they picked the top three languages on GitHub - Java, Ruby, and JavaScript -  and sifted through a mammoth 10,000 GitHub repositories for each one, biasing their research towards those most frequently favored by developers.  

The team analyzed the top 100 most frequently used components, breaking them down into sub-categories such as Testing, Database, and UI, and then finally broke their results down into individual top ten lists (if you’ve got time to kill and you’d like to read through the full lists, you can find the results here).

Individual top ten libraries were as follows:

Perhaps the most interesting take home from the world of Java is that, whilst 25% of the top 100 Java libraries split fairly evenly between Apache and Spring, Google libraries such as GWT and Guava are clearly gaining traction, gaining a 7% share in the listings.

Both Java and Ruby repositories are chock a block with test driven development (TDD) tools. Between 40 and 50 percent of projects reviewed are utilising an automated testing framework, with JUnit the most popular in Java and RSpec in Ruby respectively.

Predictably, data processing takes up a sizeable chunk of the Java top 100, with 16% of top entries centering on database management and Hadoop leading the charge.

In other takings from Ruby world, amidst a sea of NoSQL groupies, good old vanilla SQL still reigns supreme. 25% of Ruby projects use Sqlite, postgreSQL, whilst Redis and MongoDB only appear 3% of the time. That being said, MongoDB still appears in twice as many Ruby projects than Java - 185 in all.

New JavaScript language layer CoffeeScript is currently trending with Ruby devs, with over 1000 projects currently employing it. And speaking of trending, there’s a definite Twitter buzz, with it being employed in three libraries in the Ruby top 100 and 382 projects.

And finally, on to (relatively) new kid on the block, JavaScript. It crams in 50% more frameworks than Java or Ruby, reflecting that fact that a lot of new capabilities have yet to be absorbed into the language or standard libraries.

The language is grappling its way towards structure though. With 844 entries, it also has the largest number of language extensions. As developers look to refine JavaScript, Underscore.js, which provides functional programming capabilities similar to those found in more structured languages such as Scala, is being frequently employed. Currently, there are 416 entries - making it the 5th most prevalent in this library.

Image by yukop

Lucy Carey

What do you think?

JAX Magazine - 2014 - 03 Exclucively for iPad users JAX Magazine on Android


Latest opinions