Programming Languages
Introduction
A programming language is a formal language used by programmers to develop
various kinds of output such as softwares and scripts by inputting a set of
instructions.The first high-level programming language was Plankalul, created
by Konrad Zuse between 1942 and 1945 for the purpose of engineering. The
language was initially described in Zuse’s planned Ph.D. dissertation in 1943
and later developed in 1945. The main features of this programming language
are that the fuctions don’t support recurrsion, only supports call by value,
only local variables, composite types are arrays and tuleps, contains
conditional expressions, contains a for loop and a while loop and no “goto”.
History
Most of the major programming languages model that we use today were
invented during the late 1960s and 1970s. During this period, there was a
considerable debate regarding the usage of structured control flow constructs
selection and repetition, block structures and subordinates in contrast to
using simple tests and jumps. This debate was due to some languages not
including a “goto” at all, which forced structured programming on the computer.
During the 1980s the focus shifted from inventing new programming models to
elaborating uppon the ideas invented in the previous decade. The 1980s bougth
advances in programming language implementation. The RISC movement suggested
that the hardware should be designed for compilers rather than for human
assembly programmers. Along with the RISC movement, professors significanty
improved their speed during this period which enabled increasingly aggresive
compilation techniques that sparked greater interest in compilation technology
for high-level languages.
1990s was the age of the Internet which was historically important for
programming languages. It opened up a radically new platform and opportunity
for new languages to be created and adopted. Netscape gained popularity as it
was the most popular web browser. Furthermore, 1990s saw a lot of recombination
and maturation of old ideas. The era begain with the spread of functional
languages. Many RAD languages emerged which were all object-oriented such as
Java. Scripting languages also emerged during the 90s.
Current Market Trends
Common examples of programming languages that are currently used include but
are not limited to Python, Javascript, C# and Qbasic. There are more than
hundreds of programming languages that are used by programmers but select few
programming languages are used very frequently in different sectors and
ocupations. The most popular programming language include Java, C, C++, Python,
C#, Visual Basic .NET. It is easy to lean the basics of some of the
aforementioned popular languages free of cost using services provided by
Lynda.com, codeacademy.com and khanacademy.org.
It is a good idea to check the current market trends for the in-demand
programming languages before starting to lean a programming language so that
you can ensure that the language that you learn can be utilized to generate
revenue. The TIOBE index is a great place to look for market trends regarding
programming languages becasue TIOBE factors in variables such as the number of
professional developers worldwide, training courses as well as third-party
vendors as a variable when collecting their data. Most of these information is
derived by analyzing search engine results.
The TIOBE index for April 2018 states that JAVA, C, C++, Python, C#, Javascript
and VB.Net are the programming languages that cover more than 50% of the market
share. The same programming languages are also listed in the most in-demand
programming languages derived from Indeed Job Openings 2017. Java has a demand
of 26,269, JavaScript has a demand of 24,248, and C# has a demand of 13,523
out of every 100,000 tech related jobs. Langugaes such as Ruby and PHP do not
make the top 5 list for most in-demand jobs or the top 5 lists for market share
but make the top 5 list for the “languages with most pull requests in 2017”.
Pull requests are the amount of code being written in a certain language. After
analyzing the usage of programming languages and its market share, we can
conclude that languages such as Java, C, Python and JavaScript are the most
popular and in demand programming languages.
Java has been the number one or 2 programming language since its creation in
the mid-90s. It is used to develop desktops and backend web systems. Therefore,
someone with an adequate knowledge of java wouldn’t have a hard time finding
work. Java is very portable which means that it can run on nearly every system
due to its platform-agnostic Java Virtual Machine. Java is the most popular
Android language, so the vast majority of Andriod apps are also built in Java.
Furthermore, Java is also very popular Andriod langauge, so the vast majority
of Android apps are alos built in Java. Furthermore, Java is also very popular
with both big enterprises as well as small startups due to its scalibiity.
Since Java verifies and enforces the constraints of types at compile-time as
opposed to run-Java verifies and enforces the constraints of types at compile-
time as opposed to run-time as it is faster ad easier to maintain with less
bugs. It is also backwards compatible which means that the older version of the
langauges will still run after the newer versions are released. This is a big
relief for businesses becasue they do not have to retype the new code everytime
ther is an update and a newer version comes out. Thus, factors such as
portability, scalability and its large community makes Java so popular.
C is the other most popular and oldest programming language doe to its
universal portability. It works with nearly every system and operates as low to
the machine as you can get. It is low level enough to be close to a hardware,
but not so low level that you have to do everything manually. Its popularity
was also helped due to its adoption by the biggest companies in the technical
fields such as Microsot, Apple, Linux and Oracle. Any programmer will benifit
from learning C language becasue it is a nice “in-between” language in that it
is object oriented without having to be fanatical about it.
There is clearly a reason that python makes the top 5 lists for language
with most market shares, language with the highest demand as well as the
language with the most pull requests. It is becasue Python is a major
language in the most exciting technologies today. Machine learning, artificial
intelligence, Big Data and Robotics all rely heavily on Python. Its simplicity
makes it easy to learn and its broad usage even in the most popular field such
as cyber security makes its so popular. Therefore, it is one of the most
popular introductory language taught in universities.
Due to the popularity of web briwsers, JavaScript has become one of the most
popular programming languages in the world and number 1 in terms of pull
requests. JavaScript allows developers to add interactive effects on web pages.
It’s becoming common for web apps to be built entirely in JavaScript. More and
more startups and tech businesses are starting to use JavaScript because of its
simplicity and speed.
Future Market trends
We have established that Javascript, Python and C family of programming
langauges are the most popular as of today but what is the programming language
of the fture? Every year, the TIOBE Index releases the “langauge of the year”
which states the fastest growing languages. For the year 2017, Kotlin and C
were the two finalists. C ultimately won the crown. I have already covered C
and why it is very popular. So, lets talk about Kotlin.
Kotlin was named an official development language for the Android platform.
This is a great news for the language because Android is the most popular
mobile development platform as well as the 3rd most popular development
platform behind Windows desktop and Linux. The reason Kotlin is so popular is
becasue of its 100% interoperability with Java and it runs on Java Virtual
Machine. Due to its compatibility with Java, it is extremely useful for both
frontend and backend development. I expext to hear a lot about Kotlin in the
future.
Excluding Kotlin, there are many other up and coming programming laguages as
well. Swift, Go, and Rust are some of the examples of the future programming
languages. Swift is a platform developed by Apple when they got complaints from
programmers regarding the endless mess of writing Objective C. Swift makes
programming much easier than Objective C by making it modern and similar to
Java and Python. The main difference between Swift and Objective C is that
Swift has a dramatically cleaner syntax and less low-level juggling of pointers.
Go is a language built by Google to power its server farms. There is no
complex abstractions or clever metaprogramming in Go-just basic features
specified in a straightforward Syntax.
Rust is another up and coming programming language that combines C-like
efficiency and control over memory with functional langauge features such as
strong static typing and type inference. Its three primary goals are safety,
speed and concurrency. It also comes with distinct additional features such as
the borrow checker, composition over inheritance and fabulous tooling.
Resources for learning programming languages
The world’smost popular programming languages provide various employment
opportunities. Programming langauges cover topics from machine learning to
cybersecurity and web apps to battery power. These technologies will only go as
far as software developers take them. Therefor, it is essential that you have a
general understanding of these programming languages. You can learn Java
though Codeacademy. You can learn C through learnC.org or The C Programming
Language, Second Edition by Brian Kernighan and Dennis Richie. C++ through
Learncpp.com and hacker.io tutorials. Python and JavaScript through
Codeacademy and C# through Microsoft Virtual Academy and LearnCs.org.