The second decade of the 21st century is over, and it’s time to sum up the progress of software development technologies over the last ten years. We have witnessed the emergence of brand new programming tools, the evolution of existing ones, and the decline of some good old techs. Let us compare several trustworthy ratings to define the most popular programming languages of the last decade and identify the most promising of them to use and learn in 2020.
Trends and Ratings of Programming Languages in 2010-2019
In order to present the list of the most popular programming languages of the last decade, we refer to three well-known ratings that are considered the most trustworthy among development community: the Stack Overflow survey, the TIOBE index with its “Programming language of the year” award, and the PYPL index.
Stack overflow developer survey
Every year, the famous website Stack Overflow conducts a survey among novice and professional developers from all around the world. We researched the category “Programming, Scripting, and Markup Languages (among professional developers)” to define the trends and future perspectives. The compiled results are given in the table below. It should be noted, however, that Stack Overflow changed the structure of its rating in 2017, hence the difference in the number of listed languages and the seeming disappearance of Node.js and AngularJS – they were moved to separate categories “Web frameworks” and “Other frameworks, libraries, and tools.” For the sake of clarity and for better identification of the current trend, only the highest-ranking languages over the last five years are shown.
It is clear that nine languages are consistently present among the highest-rated technologies showing the steady trend of being in demand. Objective-C was present in the “top 15” list in 4 out of 5 last years and has left it only in 2019. TypeScript and Swift showed a tendency to gain popularity over the last three years. Also, let’s not forget about such frameworks as Node.js and Angular JS that remain steadily popular despite being moved to different categories.
TIOBE programming community indexThe TIOBE index represents the sheer popularity of a particular programming technology calculated using the results from 25 search engines. This index reflects how often a coding language is mentioned on the Internet, and, for this reason, it is not always consistent with the real attractiveness of the languages for coders and customers who want to buy software development services. Considering this feature, let’s review the results from the selected years: 2010, 2015, 2019, and 2020 to determine the trends of the decade.
TIOBE’s "Programming Language of the Year"
While this title seems impressive, don’t get your hopes too high: this award only defines the language with the highest increase of the TIOBE index during a particular year. The winners over the last decade are presented below:
2019 - C
2018 - Python
2017 - C
2016 - Go
2015 - Java
2013 - Transact-SQL
2012 - Objective-C
2011 - Objective-C
2010 - Python
PYPL indexSimilar to TIOBE, the popularity of the programming language (PYPL) index is also based on Internet searches. However, it takes the number of searches for language tutorials as the key indicator oh the language popularity among the software development community. The underlying assumption is straightforward: the more coders want to learn a particular language, the higher popularity and potential it has.
Top 10 Programming Languages: the Ultimate List
Considering the aforementioned ratings, here is the list of 10 languages that had the strongest influence on the software development industry over the last ten years. The logical conclusion allows us to say that they were the best languages to learn and use throughout the last decade. We will comment on the reasons why these entrants have made the list but won’t describe their pros and cons, otherwise it would be an extremely long read.
- Python. We love Python, so it is very hard to stay unbiased. We have published articles on its various beneficial implementations for Machine Learning, Big Data, and science projects, and intend to cover other spheres of its use in the future. We strongly believe that Python is the best there is, was, and ever will be among programming languages, and have plenty of cases to prove it!
- Java. This language owes much of its current popularity to the development of native applications for Android. However, it has also proven itself as a reliable and easy-to-learn back-end technology capable of handling even most demanding websites with continuously high traffic, such as LinkedIn, eBay, Twitter, and many others.
- C. This veteran technology is extensively used over the years for creating whole operating systems (Unix), or their kernels, like in Windows, Linux, or Android. Moreover, C is the predecessor of many modern programming languages that were directly borrowed or derived from it and, coincidentally, comprise the majority of the current list.
- PHP. This is another popular server-side scripting language widely used for web development. It powers the MediaWiki engine and the most popular content management system – Wordpress, but there are many other reasons why there is such high demand for PHP.
- C#. The evolution and re-evaluation of the “traditional” C and C++ languages resulted in the appearance of C# that combines the best features of those two technologies into the form of a simpler, powerful, and type-safe language for object-oriented programming. The extensive support from Microsoft and the tremendous extension of applicability provided by the Xamarin platform made C# one of the most popular languages of the decade.
- C++. Another language of the “C family,” C++ is characterized by being regularly standardized by the ISO working group. It had a great influence on the software development industry but is often criticized for its excessive complexity, long compilation times, and other drawbacks.
- SQL. Nowadays, Big Data is a hot trend in many industries, and SQL dominates in the area of digital databases. This time-proven technology is standardized by ANSI and ISO, and is going to be highly demanded in the foreseeable future.
- Ruby. Judging by the ratings presented above, this programming language has been steadily popular over the last decade but has become less attractive for developers starting from 2016. It was the 7th most dreaded language in 2019, which is another negative indicator for considering it a potential language to learn in 2020.
- Objective-C. This representative of the C family had its Renaissance period thanks to all the hype and craze regarding iPhones, MacBooks, and other Apple products. However, the appearance and rapid development of Swift resulted in the continuous decrease of Objective-C’s popularity among developers of native iOS software in the second half of the 2010s. It was the second most dreaded language in 2019, which means that many programmers intend to drop it in favor of another, more perspective technology.
As you can see, several young yet highly promising languages did not make the list despite gaining popularity over the last couple of years. However, they will have their chance in our next list of the most perspective languages for the nearest future.
What Languages to Learn in 2020?
At last, we’d like to recommend several languages that, in our opinion, will be highly demanded in 2020 and subsequent years In addition to features, advantages, and applicability of languages, one of the determining factors in this choice is the “Most wanted” and “Most loved” ratings in the Stack overflow survey.
- Python. This powerful technology has shown no signs of losing its tremendous popularity over the last decade. The “Most wanted” language for three years in a row: 2017 - 2019, and the runner-up in the nomination “Most loved” in 2019. All hail the King!
- Rust. Currently, an excellent choice as a system programming language: it is similar to C++ in terms of syntax and performance but offers many enhancements, including memory safety.
- Go (Golang). Google is putting much effort into supporting and enhancing Golang, so no wonder it is considered one of the most promising languages to learn in 2020. It offers generally similar functionality as Python, Node.js, Java, or other back-end development technologies but with substantial improvements, including simpler coding, higher efficiency, and many others.
- Kotlin. Similar to the belief that Typescript is the “future JS,” Kotlin is regarded by many as the “next Java.” Its most notable benefit is shorter code, that’s why it is an excellent choice for fast development of native apps for Android.
- Java. Despite the impressive age and the presence of more perspective rivals (see Go and Kotlin), Java is still a solid choice for Android native applications as well as server-side web development.
- Swift. If you want to engage in iOS native development, this is your go-to choice. It is actively supported by Apple and has numerous benefits over the only other possible variant – Objective-C.