If you’ve spent any time in the development world, you’re well aware that there are hordes of programming languages. It’s impossible to be an expert in every programming language in existence, but it’s also hard to determine where your time is best spent in terms of acquiring new skills.
You may ask yourself, “What are the trendiest programming languages? What expertise are employers looking for today? What languages are developers most interested in learning? And what languages are being used most often?”
In an effort to gain some insight into these and other burning questions on developers’ minds, we took a deep-dive into a bunch of data to get some answers. In this guide, we’ll delve into:
Read on to find out what we discovered about the current trends in programming languages and technologies.
To find out what programming languages are most used today, we looked at GitHub pushes. Not surprisingly, a lot of legacy languages top this list. Here are the top 20 programming languages by total GitHub pushes:
That doesn’t really give us a clear picture, though, because naturally the languages that have been around the longest have a greater likelihood of having more pushes. We also took a look at the languages with the most active repositories in GitHub, with similar findings:
JavaScript, obviously, has been around for a long time (since 1995, to be exact). While it’s not the oldest language landing on the list, it’s certainly one of the most prominent that continues to be widely used today. In fact, according to Fossbytes, JavaScript grew by 97 percent in 2016. They describe it as “a high-level, dynamic, and interpreted programming language that’s supported by all modern web browsers,” noting that it’s earned a status as “the language of the web.”
Developers are in the know about JavaScript’s prominence, with 55.4 percent of developers reporting that they use this programming language in the 2016 StackOverflow Developer Survey, making it the most-used programming language overall.
Google Trends also indicates that JavaScript is making a bit of a comeback in search, with search volume hitting a peak (a five-year high) in February 2017. Here’s the current Google Trends graph for JavaScript based on the past five years:
Overall, though, JavaScript has remained pretty steady over the past five years with some peaks and valleys throughout the year.
Want to learn JavaScript? Check out these courses and tutorials:
The next most-used language, Java, has a full 1.1 million fewer GitHub pushes than the top-used JavaScript, which points to the power of JavaScript as a legacy programming language. But according to GitHub’s Popularity of Programming Language Index (PYPL), Java is the most popular language worldwide. Here’s a look at the five-year Google Trends chart for Java:
By comparison, you can easily see that Java is trending downward slightly over the same five-year period. In fact, search interest for Java hasn’t peaked since February 2004, as you can see from this Google Trends chart illustrating search trends from 2004 to present:
Want to learn Java? Check out these tutorials and courses:
But what about SQL? According to StackOverflow’s survey, it’s the second most-used language among developers, with 49.1 percent of respondents reporting that they use SQL technology. Interestingly, SQL doesn’t land in the top 20 for active respositories or GitHub pushes. But as SitePoint reports, it lands solidly in the #10 spot among the programming languages most-dreaded among developers, with 60.3 percent of respondents to StackOverflow’s survey reporting that they’re not huge fans of SQL.
Search volume peaked for SQL around March 2012 according to Google Trends data, and so far in 2017, it’s hovering at around 80 to 85 percent of that peak search volume:
Want to learn SQL? Check out these learning resources:
SQL is, however, still in high demand by employers. Let’s take a look at what programming languages employers are seeking.
Knowing the programming languages that are most used is one thing, but if you’re a developer or programmer looking to enhance your skillset, it’s worth knowing what languages are the most in-demand among employers. We searched Indeed for the top 20 on the most-used programming languages lists above (based on GitHub pushes and active repositories) to find out which among them are the most wanted skills by employers. We also threw SQL in the mix given that it’s the second most-used language per StackOverflow’s data.
Based on job listings on Indeed as of March 2017, here are the top 10 programming languages currently in demand among companies seeking developer talent:
As mentioned previously, SQL continues to be in pretty high demand by employers despite developers not being overly enthusiastic about the technology. Conspicuously missing from the above list, however, is Ruby, another legacy programming language that’s been around since 1995. Ruby had a spike in interest in December 2016 per Google Trends, as you can see in the chart below illustrating 5-year search volume trends:
While Ruby doesn’t make the top 10 among the most sought-after languages by employers on Indeed, at the time of this writing, there are 2,692 job post results based on a search for “Ruby developer.” It seems the surge in search interest is shared by employers, as Hacker Earth reported in November 2016 that there were 2,136 jobs posted for Ruby developers (based on jobs listed with the language keyword), which marks an increase of 556 new jobs in four-month period, or a 26 percent increase. Our verdict? Ruby is one to watch throughout 2017.
Want to learn Ruby? Here are a few informative tutorials and other resources:
Because there seems to be some discrepancy between the languages developers enjoy and employer demand, we thought we’d take a look at StackOverflow’s most-popular and most-loved languages lists and compare those results directly to the current number of job postings for each language on Indeed.
The takeaway: If you love Rust, F#, Clojure, or Haskell, you’ll probably be hard-pressed to find a job allowing you to focus on one of those languages – at least based on current hiring trends. But that may change if Google Trends data is any indication.
Here’s a look at Google Trends data for Rust over a five-year period:
As you can see, Rust has some strong growing interest, particularly over the past three years, with interest peaking around May 2015.
Want to learn Rust? Check out these useful Rust learning resources:
F# also has some interesting Google Trends data:
Interest in F# has a lot of peaks and valleys, with the latest spike in interest in March 2017.
Want to learn F#? Check out these resources:
Clojure, on the other hand, saw its biggest spike in interest in early-to-mid 2014, with no other notable increases or trends over a five-year period:
Want to learn Clojure? Check out these resources:
And, finally, Haskell has a similar trend graph (comparable to Clojure) per Google Trends:
Want to learn Haskell? Check out these useful learning resources:
While many programming languages remain pretty static over a period of several years overall, there are some pretty clear trends emerging on approaches and technologies such as Docker:
Learn more about Docker from these resources:
And DevOps:
As well as Agile, although to a lesser extent:
So in addition to staying on top of the hottest, most sought-after programming languages, developers are also tasked with being up-to-speed on the latest trends in development methodologies and other approaches.
If you’re looking to hedge your bets on a well-liked language that’s not yet in high demand, though, we’d suggest putting your money on Rust. However, it’s worth noting that while a few of these most-loved programming languages don’t appear to be in high demand at the present time, jobs requiring expertise in F# and Clojure tend to pay handsomely. According to StackOverflow’s 2016 survey data, the top-paying technologies in the U.S. include:
Now, if you’re looking to learn a new programming language in 2017, both Usersnap and SimpleProgrammer.com have done their own data analysis and come up with their recommendations. According to Usersnap, the top programming languages to learn in 2017 include:
Check out our article about JavaScript vs TypeScript
SimpleProgrammer.com has a slightly shorter list of recommendations, all of which also appear on Usersnap’s list:
Check out our article about C#: Why C# and .NET Core are the Next Big Thing
While Swift, Rust, and Elixir don’t land in the top 10 for earnings potential, there’s a good chance those skills will come in handy in the coming years. We’ve already looked at Google Trends data for Rust, so here’s a look at Swift and Elixir.
Interest in Swift peaked in mid-2014, but is recently on an upward trend:
Want to learn Swift? Check out these resources:
And Elixir, which doesn’t show up on any of our other lists based on our data analysis, has a bit of a spiky trend curve but is also on an upward trend, even hitting its peak interest in late February/early March 2017:
Want to learn Elixir? Check out these learning resources:
While Rust shows more promise based on our other data, Swift and Elixir are worth keeping your eye on as well.
It’s worth evaluating search volume data as another measure of interest. We looked up search volume for the top 20 programming languages and below we’ve illustrated a side-by-side comparison of search volume data against GitHub commits to compare the programming languages most actively used (GitHub commits) to the languages more people are learning about or interested in learning about (search volume). You can click here or click the image to enlarge:
Some key findings of note:
So what skills should you focus on acquiring as a developer in 2017? Of course, there’s tons of data out there. If you’ve ever worked with data, you know that you can slice it in hundreds of different ways. There’s no clear-cut answer, and it largely depends on the types of projects you want to work on and what your employer demands (or what you’re most interested in doing). And it’s a topic that most everyone has a personal opinion on, too – check out this Quora thread or this discussion on Reddit for a look at the many differing opinions on the subject.
It’s safe to say that top developers who don’t already have the skills should enhance their knowledge of JavaScript, Java, Python, CSS, and Ruby. R is worth spending some professional development time on, particularly if you plan on dipping into the statistical analysis in the professional world.
Among the newer technologies (relative to the languages that have been around since the mid-1990s), Rust, first appearing on GitHub in 2010, is one to watch, along with Swift and Go. The good news in all of this is that some languages are here to stay for the foreseeable future, and others are sure to start making an impact as development needs and trends shift to keep up with the pace of technology – but there is nothing and no one stopping you from adding to your skillset anytime need or inspiration strikes.
For more insights and data deep-dives on the hottest programming languages, check out these resources:
If you would like to be a guest contributor to the Stackify blog please reach out to [email protected]