Programming Languages
Programming Languages
In simple words, Programming Language empowers human to instruct and control machine.
So, it is natural that there will be so many languages which try to make this process more
powerful and simple. For this very reason there are hundreds of programming languages,
many of those programming languages are now out of active use, few are going to be obsolete
in coming years and then there are languages which is going to continue and prove its usage
in coming years and then there are new programming language fighting for it acceptance.
This article going to present the trends of top Programming Languages which will continue in
the coming year 2020. To predict the trend of the programming language in 2020 this article
uses data from authentic surveys, various collected statistics, search results and salary trends
according to programming languages. This article will help the new learner to pick
a programming language to learn and for expert, it will help to decide either to switch to
another language or to continue with his expertise language.
In the next section, I have prepared two tables which summarize the popularity trend
of Programming Languages in the last five years (2015-19). The data is taken
from Stackoverflowpopularity survey 2015-19. For a clear and accurate understanding, the
programming languages are divided into two groups, first, languages which have origin
before 2000 and the second group has languages which came after 2000. The selection of 2000
as the boundary is just random but very helpful to understand the programming trend under
these two groups. The table also lists origin year and main or documented purpose of
these programming/scripting languages.
Language Origin 2015 2016 2017 2018 2019 Main Purpose
Objective-
C 1986 7.8% 6.5% 6.4% 7.3% 4.8% General purpose
OBSERVATIONS:
There is a decrease in the popularity of all languages from 2018 to 2019 except Python.
PYTHON
Python is the only language continuously on rising since last five years. It is a general purpose
language, so someone wants to learn just one programming in 2020 and want to cover more
area of software development then Python could be chosen.
JAVA
Java was on rising but fall in 2019, the reason could Kotlin gaining popularity on
the Androidplatform. Java is a good choice for a programming language but now it is
under Oracle and Google is promoting Kotlin so it is in the conflicted zone. As a matter of fact
still, the large number of the company is using Java and going to continue with Java due to its
developers base, framework, and legacy application.
C/C++
C and C++ are still holding with approx 20% and it will be there due to its inherent features
and legacy system.
JAVASCRIPT
JavaScript popularity can be attributed to the growth of popular JavaScript library and
framework like node.js, etc. JS is the language for the dynamic website and this going to be
top for coming years because of its active development, support from Mozilla and penalty
of libraries and frameworks. So, if someone wants to be web development, javascript is a must.
R is gaining popularity in recent years and reason would be growth and popularity of data
analysis. It is used by data scientist but again much behind in comparison to Python which
has established as general-purpose languages and enjoy active developers with lots of data
science libraries and modules. So, one can prefer Python over R if they have to choose only
one otherwise if wanted carrier in Data Sciences then learning both will a good option.
RUBY
Like PHP, Ruby is also facing tough competition from JavaScript and even Python to establish
as back-end web development programming language. So, again for web
development javascript and Python (server-side (Flask, Django etc.) would be a good choice
and will offer more domain flexibility than Ruby.
PHP
There is a sharp decline in PHP popularity in 2019 and it can be traced back to server-side
acceptance of javascript and Python. So, if someone wants to go to server-side web
development then still PHP is a good choice with a large number of popular framework
like CakePHP, Codeigniter etc., otherwise choosing a general-purpose programming language
would be better.
OBJECTIVE-C
Objective-C was the main language for Apple’s software such as MacOS, iOS etc. before Apple
moved to Swift language. So this transition is reflected in the popularity of both languages, i.e.
there is a fall in popularity for Objective-C and the popularity of Swift is rising. So, again if
someone wants to be a developer for Apple’s products then Swift should be the language of
choice.
Language Origin 2017 2018 2019
Juila 2012 – – –
OBSERVATIONS:
SWIFT
Swift has replaced the Objective-C as the main language for Apple-related software and
application. Since it is supported and promoted by Apple so there is an increase in popularity
since its inception and as Apple is going to continue with it so if someone is looking for Apple-
specific development platform then Swift is going to be a must-know programming language.
This is mostly vendor and product-specific language with very less usage outside Apple’s eco-
system.
GO
Go (Golang) is getting popularity as maintain, use and promoted by Google. The motivation
of Go development was to address criticism of some of the popular languages and keeping the
best of them in one place. Since 2017, Go is moving upward in popularity and
with Google support, it is going to enjoy this in coming years. Google is also making Go as a
primary language for new projects and replacing other languages with Go, this trend going to
make useful and important to learn in coming years so one can pick Go as a new
programming language.
KOTLIN
Kotlin is being offered as an alternative of Java for Android development and again it is
supported and promoted by Google so it is also picking up by developers and gaining
popularity in recent years. So, with the growth of Android, support of Google and with clean
and short syntax it is going to be a choice of Android application developers and is a good
choice to learn for Android App developer. Kotlin going to be shine as a prominent
programming environment for Android development.
SCALA
Scala tries to establish as an alternative to Java but didn’t get very well among developers. It
doesn’t have big support from any multi-national company, perceive as functional languages
and dependency on JVM doesn’t provide much scope to rise in popularity. There could be
steady growth but very slow and surely not a language to learn as a beginner.
JULIA
Julia aims to bring the speed of ‘C’ and simplicity of Python but it is strange that didn’t found
any popularity in Stackoverflow survey but gaining popularity among data science domain
and being seen as a challenger for R and Python in long run. Surely, there will be growth in
Julia but still, Python or R is better for job and growth.
C#
C# is the language for the .NET framework and developed by Microsoft. Its popularity is
approx constant over past years and going to continue with a similar trend. This is vendor-
specific language so one can pick this language if want to work in the Microsoft development
environment. Recently, Microsoft has open-sourced the .NET so there would be some upward
trend but again it is vendor-specific so there won’t be much affected.
RUST
Rust, Clojure etc. are languages which have a user-base but not so popular so surely not going
to have an upward swing in popularity.
From above Table and Figure, few observations are very obvious, Love of Rust is growing in
last five years whereas Swift is loosing love from developers and Python is in between these
two and last two years have gain for Python. One more unique observation is that out of 5
loved languages 4 are from post 2000 group while only Python is the older language
and Kotlin love started with addition of Kotlin for Android development post 2017.
Programming Language 2015 2016 2017 2018 2019
From above table, wish of developing in javascript and Python is growing in last years and this
reflect in popularity and love for the language. There is a sharp decline in Java and this is due
to the addition of Kotlin as alternative for Android app development and also change of policy
by Oracle who own Java now.
TECHNOLOGIES AND PROGRAMMING LANGUAGES
In this figure, one can see that the largest cluster is for Web development and JavaScript and
its various framework is dominating the cluster this is USP of JavaScript growth. The second-
largest cluster is of Microsoft technologies and Python technologies which again clear the
popularity and love for the language. Python cluster is linked with data science technologies
which highlight the growth story of Python.
TIOBE INDEX
TIOBE index rank programming language based on search engine search result. The selection
of search engines and programming language is defined in its page. The ratings are calculated
by counting hits of the most popular search engines. The search query that is used is
+”<language> programming”. In TIOBE index Java is dominating the ranking in the last two
decades where C is holding the 1st and 2nd rank for the last 30 years. Python has come a long
way in the last two decades i.e. 24th in 1999 to 3rd in 2019. If someone merges
the C and C++then it would hold the 1st positions forever.
In the new languages (post-2000), Rust moved up in ranking i.e. from 33rd to 28th,
and Juliafrom 50th to 39th. It is also interesting to note that Kotlin doesn’t seem to come
closer to the top 20.
From the above table, it is very clear from both survey that Go/Golang is a very high paid job
in the market and even stands 1st rank in a high paid job in stack-overflow 2019
survey and Dice Salary Survey 2018. Now, the reason is very simple, Go is a Google supported
language and mostly used at Google and Google want to promote this language so the high
pay can be connected to Google payroll. One thing is very clear that price elasticity is an
economic term which provides different scenario like less number of product increase the
price, luxury and branded product cost, high product availability decrease the price. So
clearly, the global average salary could not be a good choice to choose a language. For
example, a programming language which is near to extinct but there are few legacy systems
and so to maintain those company often offer very high pay but there are always very few
numbers of positions in such languages. In other scenarios, the mainstream languages offer a
lot of job position and so the average salary goes down.
So, as closing remarks, It is easy to predict a language trend but choosing only one language
to learn is a really difficult choice and totally depend upon the individual choice and their
future plans, for example, if you want to work in Web Development you can’t afford
neglecting Javascript, if you want to work with Apple’s products you can’t neglect Swift now, if
your taste is in system-level programming then C and C++ is your friend, Python makes you
run faster in many domains and currently darling in Data science. You see each language
takes you on a different journey. Choose your destination and then drive with the language of
that path.
We’ll love to know your opinion, please vote for your favourite Programming Language Survey: