Follow the guide to discover or rediscover computing languages, essential tools for developers. From the most important to the most neglected, from the most popular to the oldest, you will find everything you need to improve your knowledge.
If the word Python doesn't make you think of luxurious jungles or dangerous predators...If the word Java doesn't make you smile at the thought of family gatherings where grandma and grandpa sing at the top of their lungs "c'est la javaaaa bleuuuueee" (typical French old song) ...If you don't think of Swift as a household product or the name of pop singer Taylor Swift...If the words Ruby and Perl don't bring precious gems to your mind...
Man, you're a computer developer... or about to be! And you're not the only one! There are more than 26 million developers in the world and that's quite a tribe (well enough for some parties... "c’est la javaaa bleuuuueee"... Or not! It's up to you).
So, of course, the lines of code have no secret for you?Computing languages or programming languages are your ABCs? You know by heart the different names of computing languages? Their history, the most important ones or the most loved ones, and the most hated ones?
No? Not necessarily? That's not a problem. That's why we're here!
Let's have a look at these languages and (re) share with you some well-known and lesser-known features.So welcome home, great scribe and coding adventurer. Let's enter the world of programming languages together, for a quick review.
A developer must master one or more programming languages depending on the different projects he is working on. Here is a quick selection providing some simple key points recognized by developers around the world.
Definition: "A programming Language is a vocabulary and a set of grammatical rules intended to command a computer or a computing device to perform specific tasks."
The must-have languages, our “VIPs”:
All the rankings put them at the top:
- Python (1991)
This is the most popular language, that has recently knocked off the top spot champions like Java or C. Created in 1991 by Guido Van Rossum, and a real Swiss army knife for developers, Python is a high-level and open-source programming language. It is an alternative to Perl and Ruby, used for Artificial Intelligence (AI) and Data Science, Machine Learning but also in Internet of Things (IoT); it matches the current needs and trends.
70% of Machine Learning and Data scientist developers say they use Python. More than 80% of websites use Python. It is used by Google, Yahoo and Spotify.
Fun fact : the name is said to come from the famous group of British comedians and their television series "Monty Python Flying Circus”.
C language and its different evolutions are among the oldest and most stable programming languages.
- C (1973)
Created in the 70's by Dennis Ritchie, an employee of Bell Laboratories, the C language is the successor to B, which is itself the successor to BCPL. It was initially intended to program the UNIX operating system and quickly became universal thanks to its portability and its performances. The C language remains popular for being fundamental because it gives direct access to hardware. Like Python, the C language is portable, meaning that all operating systems can run it. However, it has been criticized for security flaws related to memory.
- C++ (1981-1986)
Created by Bjarne Stroustrup, still at Bell Laboratories, C++ is an improvement of C. Its language is object-oriented programming (OOP) and has been regularly listed in the top 10 computer languages since 1986.
It is used in Microsoft Office, Adobe Photoshop but also in game drivers and other softwares.
- C# (2000) (C-sharp)
C# is the reference language for the development of Windows applications (Microsoft).
Trend: the top 5 languages that developers in 2021 plan to adopt or to migrate to are Go, Kotlin, TypeScript, Python and Rust.
Popular languages, our “In”: Rust, Clojure and TypeScript
They are not necessarily the most used, but the developers choose them for the future or for the enjoyability of their use:
- Rust (2006-2011)
Rust is a programming language originally created by Graydon Hoare in 2006 and taken over by Mozilla in 2009. It is object-oriented but it’s used more in procedural programming ("in procedural programming, programs are based on functions, and data can be easily available and editable, while in object-oriented programming, each program consists of entities called objects, which are not easily available and editable").
It is intended to be more secure for the Web while taking better advantage of current processors. Renowned for system programming, its aim is to replace C in this field. Rust is appreciated and innovative thanks to its memory management where the ownership of information is unique. It is also considered as a second language after C for the development of the Linux core, partly because it can help to eliminate security bugs related to memory. It is used by Mozilla and Microsoft.
- Clojure (2007)
Rich Hickey is the creator of the Clojure language, a modern LISP dialect for functional programming that runs on the JVM (Java Virtual Machine) with all the traditional Java libraries, and is oriented towards concurrent programming, making it easy to take advantage of the power of LISP in an existing infrastructure. Clojure is convenient because even if it is mainly used in back-end, it can also be used in front-end. The name Clojure is a wordplay between "closure" (mathematical element where a result is always identical and defined) and the letters C, L and J in reference to C#, Lisp and Java, the three languages that influenced its creator.
- TypeScript (2012)
The easiest ones to learn, “the basics”
With its numerous libraries and its large community of users who are very active in helping you learn it; it is a safe bet. It’s the language that most beginners in computer code start with. Its intuitive nature makes it a popular computer language because it's easy to learn, read and write, and it's very convenient because by learning Python, you can create solutions that can run on iOS, Windows and Linux.
- HTML(5) et CSS(3)
If you want to develop a web application, the binomial is essential. A binomial is a pair of 2 languages, or bases of languages, which are complementary and constitute the ABCs of web development.
The basics of HTML(5) are known to be learnable in a few days. HTML has the role of structuring the web page and thus allows to create its skeleton. It is therefore a basic tool for any programmer, and on this foundation, graphic and visual elements will then be added.
It is at this stage that CSS(3) comes into action: this is the stylist of websites and therefore deals with the look of the site. You can easily learn the basics in a few weeks through online tutorials, books or other self-learning resources. Introductory web development programs and online university courses teach CSS also.
The prehistory of programming languages
" The one that doesn't know where he comes from can't know where he goes " Otto von Bismarck
- Ada Lovelace (1843)
Many years before the appearance of computers, Ada Lovelace, whose full name was Augusta Ada King, Countess of Lovelace (1814-1852), was the creator of the first machine-executable algorithm, the logical process of running a program. This algorithm was designed for the difference engine and then the analytical engine of the mathematician Charles Babbage, for whom she worked after being his student, whose concepts will be at the origin of the first computers.
In the late 1970s, the U.S. Department of Defense asked several developers to create a programming language that would be the future standard. The language chosen from the options was given the name Ada (1980-1983) in honor of the Countess. It is still used today in aeronautics, defense or for real-time operating systems (RTOS).
- PlanKalkül (1941-1945)
The first high level computing language was developed in the 40's by Konrad Zuse, during WWII, but was not published until 1948 due to the war and time limitations (the inventor was working on his Z4 computer). Unrecognized, this language would be, according to some sources, the ancestor of the object-oriented languages (OOP). It allowed to create processes with the possibility of repeating code sequences several times.
- Assembly language (ASM 1949)
The programs of the EDSAC (electronic delay time automatic calculator, which is the first calculator with a recorded program), were written using alphabetical one-letter mnemonics for each instruction. The translation was then done by hand by the programmers, a long, complex and prone to errors operation.
Later on, in the 50's, the first three modern programming languages appeared (Fortran, Lisp and Cobol)
Older programming languages to be considered
- Cobol (1959)
Born in 1959, Cobol or Common Business Oriented Language, was a project supported by the American Department Of Defense which included a consortium of computer suppliers like IBM, the Short Range Committee in which we find among others Grace Hopper who had defined Flow-Matic, a compiled language in the 50s.
The Cobol language is a classical procedural language for business management. For 20 years, Cobol will be the world's most used language. Today, it is still the most important language in the world for the banking industry or financial services, or even administrative systems.
However, Cobol is too old and is almost no longer taught in universities. It is therefore difficult to find developers who still know Cobol. This is a source of concern for companies that still use it: for financial and banking services, making the transition to other, more modern languages would be too costly and insecure. This will give developers who use the language the means to get paid properly, considering the scarcity and the urgent needs.
(Geek culture tip: a few lines of code written in cobol can be found in the science fiction film Terminator directed by James Cameron in 1984)
- Lisp (1958-1960)
Also born in 1959, Lisp or LIST Processing was invented by John McCarthy from MIT (Massachusetts Institute of Technology). It is a functional list-processing language, very popular in the 60s and 70s for artificial intelligence (AI) research. As the oldest family of programming languages, the first real Lisp used was Common Lisp. Lisp languages are still used today in many fields such as web programming, computer training and in finance. Companies like Acceleration or Boeing still use Lisp.
- Fortran (1954-1958)
Launched in 1954, FORTRAN or mathematical FORmula TRANslator system (transfer formula) is a language created by John Backus and other researchers at IBM. It is the oldest known programming language still in use today. Its value for scientific and mathematical calculations (NASA); or high-level statistics; is still a reference today. It can be found in some of the most powerful supercomputers in the world. In 2020, it has reappeared at the 20th place of the most popular programming languages. This comeback is explained by the huge need for scientific computing that only Fortran is still able to provide.
Trends: the languages most disliked by developers in 2021 are Cobol, VBA, Matlab and Objective-C.
That's it, we've travelled back in time and completed this quick overview to guide and give hints to those who want to become developers or already are. With the evolution of technologies and languages, it will be useful to come back regularly to this overview, which is constantly changing in such an important field.
Because our IT Jobs Barometer makes no mistake, it is the family of developers that remains at the top of demands for companies, thus it was quite natural to talk about their favourite tools: programming languages. So, if you belong to this family or want to join it, if you are looking for a job, don't hesitate and check our opportunities.