Do a simple web search and you’ll find there are hundreds of programming languages in existence. Do another search for the most popular ones and again, you’ll come up with a head-spinning list. To be as objective as possible, we’re examining the top programming languages from a career perspective.
There are many ways to rank programming languages, like the number of websites built with them, Google search results, GitHub projects or StackOverflow questions. We pored through data from job search engine Indeed.com for the number of job postings that contained the name of a programming language.
Coding Dojo did the same analysis for the top coding languages of 2016 and found some interesting changes in 2017, which are explained below. So without further ado, here are the nine most in-demand programming languages of 2017.
1. SQL
The number of Indeed job descriptions including SQL (Structured Query Language) increased by nearly 50,000 this year over last year, giving SQL a dramatic lead over the other languages. It’s unclear if this is entirely due to more SQL jobs in the market or a change in how Indeed works. Either way, SQL is still the clear leader in our analysis. SQL is used to communicate with and manipulate databases. It is extremely common, with many variations like MySQL and Microsoft SQL. Microsoft released SQL Server 2016 in the past year, which proved to be surprisingly popular and introduced several new features to make the language more open-source like integration with R, the popular data analysis programming language, and a Linux version.
2. Java
The number of Java positions available on Indeed went up by almost 30,000 in 2017 compared to 2016. This is possibly due to the rise in Android users in the market, the steady growth of its developer community, and some of the inherit characteristics of Java that make it worthwhile to learn. After all, Java is a simple, readable programming language used by millions of developers and billions of devices worldwide. All native Android apps are built in Java and 90 percent of Fortune 500 companies use Java as a server-side language for backend development. User have been getting excited about the upcoming Java 9 launch in July 2017, although Java Enterprise Edition declined in popularity in 2016.
3. Python
Python continued to grow in popularity in 2016 and moved up two places in our rankings to be the third-most common language by job posting. Furthermore, as highlighted in our most recent guide to learning Python, it’s also a general purpose programming language that emphasizes code readability and increasing developer productivity, used for desktop apps, web apps and data mining. In October 2016, Microsoft launched the beta version 2.0 of its Cognitive Toolkit open source deep-learning framework, which includes support for Python.
4. JavaScript
JavaScript (different from Java and mean stack development) moved down one place in our ranking compared to 2016, but otherwise the number of job postings stayed roughly the same. It’s a mainly client-side, dynamic scripting language used for front-end development. JavaScript is compatible across all browsers, used in over 90 percent of all web pages and is the most popular language on StackOverflow. Compatibility and adoption of JavaScript 6 continued to grow in 2016 and Progressive Web Apps became more usable, allowing offline-first functionality for web apps.
5. C++
C++ grew by about 20,000 job postings over 2016 and passed pori to take fifth place. Built on C, the grandfather of all programming languages, C++ is a powerful, high-performance language used to build system software, games engines and desktop and web apps. Many beginners find C++ harder to learn than dynamically typed languages like Python or JavaScript.
6. C#
“C Sharp” saw a small increase in popularity in 2017, but not enough to keep it from falling behind C++. The language was developed for Microsoft’s .NET software framework and can now be used on non-Windows machines since the release of the new .NET Core open-source development platform in June 2016. Its main use is building Microsoft enterprise software. Most of the features in C# 7.0 were released last year, including language support for Tuples, local functions, pattern matching and many more.
For more info, check-out our beginner’s guide to .NET Core!
7. Perl
Perl made a big jump in popularity this year to move ahead of iOS and PHP and knock Ruby off of our list. Perl, or “the duct tape that holds the Internet together,” as it’s been named, is actually two languages now; Perl 5 and Perl 6, which launched in Dec. 2015. Both of them are general-purpose dynamic programming languages that see a lot of use in CGI, graphics, network, and finance programming. Some think the growth of DevOps triggered this popularity surge because Perl is versatile and works well with other languages, making it a good DevOps tool.
8. iOS Family
Most developers writing for the iOS operating system use Objective-C, C, or Apple’s new Swift programming language. We counted any job postings that included “iOS” in our ranking and saw little change from 2016. Swift launched in 2014 and it rose quickly in popularity due to its scalability, speed, ease of use and strong demand from the mobile app marketplace. Apple released Swift 3.0 in Sept 2016 with new features including better translation of Objective-C APIs, modernizations of debugging identifiers and a new model for collections and indices. Apple plans to release Swift 3.1 and Swift 4 in 2017.
9. PHP
PHP stayed in the same place in our rankings from 2016 to 2017 with little change in popularity. It’s a server-side programming language used on more than 80 percent of websites today including Facebook, Wikipedia, Tumblr and WordPress. It wasn’t the buzziest language in 2016, but the sheer number of websites still built with it ensure it’s still a useful skill for developers, especially when paired with Javascript and SQL.
But Where’s Ruby?
Ruby on Rails, which was number nine on our list last year, dropped down several spots to number seventeen. This may be caused by Ruby losing some of its market share to increasingly popular alternatives like Node.js and Go. But that doesn’t mean there aren’t any jobs for it, or any reasons to learn Ruby on Rails in general. It’s still a popular language, just not as hot as it used to be.
If there’s one thing to take away from our analysis, it’s that no programming language can accomplish every task and the job market changes quickly from year to year. To be a successful developer, it’s important to master multiple languages and train yourself to pick up new languages quickly so you can adapt to changing job opportunities.