A brief history of programming languages
This article presents in a chronological way the evolution of programming languages over time. It allows to have a good vision of the programming languages that have marked the eras.
Origin of the program
We can define several dates for the beginning of programming. But let's remember one: Ada Lovelace defined in 1840 the principle of successive iterations in the execution of an operation. For Ada Lovelace, a calculating machine had to include :
- a device allowing to introduce the numerical data (punched cards, cogwheels...),
- a memory to store the numerical values entered,
- a control unit through which the user will indicate to the machine the tasks to be performed,
- a "mill" in charge of performing the calculations,
- a device allowing to read the results (printer...).
These rules will take us to the end of the 1940s and the creation of computers.
The 50s and 60s
Let's start just before the 50's: 1949. The most used language is assemblerwhich is low level code and which allows the interface between man and machine.
In 1955, the Fortran language arrived at IBM. In 1959, we have the beginnings of COBOL (Common Business Oriented Language) when almost at the same time the LISP language is created at MIT by John Mccarthy. Cobol will become the most used language for 20 years.
Kenneth Iverson created the APL language in 1962. The 1960s also saw the appearance of the BASIC language (universal symbolic instruction code for beginners) in 1964. To overcome the weaknesses of Cobol and Fortran, IBM created thePL/1 language. Note that computers with transistors appear in this decade.
The 70s and 80s
Pascal, Prolog, SmallTalk, C, SQL, Awk, Ada, Rexx. Here is a list of important languages created in the 70's. C is still used quite a bit, Pascal too, to a lesser extent and of course SQL. Pascal is at this time the most structured and very readable language. It is therefore adapted to the teaching of programming. This is still the case in the economic and commercial preparatory courses.
And for the 80's? Dbase, C++, Eiffel, Perl, Tcl/Tk, Mathematica, Maple. Maple, a language allowing to do formal calculation has been used until 2014 in the scientific pre-pas. Dbase will become the language used to manage relational databases in the 80s. This is also the period when the first PCs and the first Apple computers appeared.
HTML also appeared in 1989. It is not considered by all as a programming language.
The years 90-2000
We arrive in the 90's on names more known by the young generations:
- Visual Basic (1991)
- Python (1991)
- Ruby (1993)
- PHP (1994)
- Java (1995)
- MySQL (1995)
Databases and website management are the languages at the heart of the creation of the 90s. We also see the appearance of VBA, a language very much used by people who do not have a background and training as developers.
For the years 2000, no new language but important versions: PHP 4.0, PHP 5.0, Java 1.5 or even Maple 8 and Maple 9. Let's note the creation of C#. Let's also note Scala which appeared in 2003.
Here, all the names will be known by anyone who follows a minimum of what is going on in programming. Matlab, Scilab will allow the development of numerical calculation methods. R will become the reference programming software for statistics. Ruby and Python develop enormously, 20 years after their creation. Python becomes the most used programming language in the world with even a framework for the development of websites: Django. These years also saw the appearance of libraries, backed by the language, which provide common programming frameworks for developers and other software engineers.
Python, Java and SQL are the most in-demand programming languages in 2022 by companies, according to Codingdojo, a U.S. recruiting firm.
What are the differences between Cobol and Python?
First of all, you should know that COBOL is still used, especially in finance.
COBOL is a compiled language while Python is an interpreted programming language.
A compiled language is a language in which you must first compile the code. That is to say that we will use an interpreter that will translate the code into a binary language, directly interpretable by the computer. This code will no longer be readable by humans. A compiled language is called "low-level". This means that it is closer to what the computer can read. In an interpreted language, the computer will read the information line by line. This language is higher-level, less close to the machine.
Low-level languages are generally more complicated to implement but are faster to execute.
And in the future?
To conclude, let's talk about no-code. No-code is a way to program with no or little code. It is a language even more high-level than the languages of the last generations like Python. These new ways of programming allow to democratize the code to a larger part of the population.