The First Programming Languages
Was the first programmer a woman? 🙂 If we consider the first code to be the program written for the analytical engine — then yes ❤️ The machine created by Charles Babbage was a mechanical proto-computer. Babbage himself, however, never managed to finish work on his invention. It was Ada Lovelace who described this extraordinary machine and then created a program for it that calculated Bernoulli numbers. Not bad 😉
The first programming languages were typically machine languages or symbolic representations of machine instructions. Much has changed since Ada Lovelace's time. Today we invite you on a kind of sentimental journey to the roots of programming. What did the first programming languages look like, and how did they bring us closer to ever better and faster coding?
Here is a brief history:

ENIAC against the backdrop of important historical events.
Although today computers are programmed using the binary system, the oldest computer — generally considered to be ENIAC — initially used the decimal system. However, during the work it was understood that the binary system is more efficient for logical operations and data storage. Programming this computer, then referred to as configuring it, was a complex process that required employing a great many people. ENIAC was programmed using wires and switches, which was cumbersome and time-consuming. In 1945, the US Army hired 6 women mathematicians (who had until then worked on calculating bomb trajectories) for a secret government project — which was precisely the programming of ENIAC. After a year, their efforts yielded unprecedented results. ENIAC, instead of performing five functions (in this case additions) per second, was performing 20,000! WOW. And that was the result achievable by each of the 20 accumulators that ENIAC had. It was also an extraordinarily versatile machine. Initially it was intended for weather prediction. However, its universal architecture meant it was used for work related, among other things, to designing and testing nuclear weapons.
How to make all this easier?
A major breakthrough in writing code came with the Assembler. In 1948, J.M. Hill and Maurice Wilkes developed the first assembler for the EDSAC computer. It was a set of macro-instructions that were translated into machine instructions — in other words, commands were converted from human-readable to machine-readable form, meaning we became more "understandable" to machines. Two years later, Alick Glennie, also working on the EDSAC project, developed an assembly language called "SOAP" (Symbolic Optimal Assembly Program), which was the first assembly language in history. Two more years later, in 1952, IBM created the first assembler for the IBM 701 computer. Around this time, the development of the UNIVAC II computer also brought a significant breakthrough in this field. The inventions and ideas of the late 1940s and early 1950s gave rise to a kind of standardization and popularization of the assembler.
Ah, FORTRAN.
At the foundation of FORTRAN's creation was the desire to build a language in a form more comprehensible to humans, based on mathematical formulas and equations. Work on it began in 1954, and after three years the first version of Fortran was created (Fortran I). It is worth pausing here because this year is considered the year the first high-level language was created. Just three years later, in March 1957, a book entitled "The FORTRAN Automatic Coding System for the IBM 704" was published, authored by John Backus and other IBM team members. This was an important publication documenting the principles and usage of the Fortran language. Of course, the history of FORTRAN did not end in '58 😄 — we wanted here to show its influence on the history of programming languages.

What happened next?
It seems that 1958 and 1959 were turning points in the history of programming languages (or at least very important ones 😉). Three more significant events fall in those years. In 1958, LISP and ALGOL were created, and a year later COBOL.
Each of them introduced some kind of breakthrough.
LISP
In 1958, John McCarthy presented the concept of a language capable of manipulating symbolic expressions. He also introduced basic list operations such as CAR and CDR. This is how LISP was born. Then came the introduction of the concept of lambda calculus, which allowed for the formal implementation of operations on functions and expressions. At the same time, McCarthy also introduced the "eval" function.
ALGOL
This language was created as the result of an international meeting of mathematicians. The mathematicians formed a special committee. Its goal? To develop a new programming language, of course. In 1959, the first version of the ALGOL 60 standard was published. This language was meant to be used in scientific and engineering calculations. It introduced numerous innovations, such as code blocks, records, procedures, arithmetic operators, conditional and iterative control structures, and the ability to define custom data types.
COBOL
And again the saying proved true — necessity is the mother of invention. Reports from those years say that Mary Hawes, a programmer at Burroughs Corporation, in March 1959 called on computer users and manufacturers to create a new computer language that would work across computers from different vendors. She also argued that this program should handle accounting tasks, such as payroll calculation, credit and debit records, and inventory control. And so COBOL was designed by members of CODASYL. Grace Hopper made a significant contribution here. Long associated with the navy, she began working in the private sector in 1949. In 1952, Hopper and her team created the first computer compiler in history. It became the true foundation for the COBOL programming language (Common Business Oriented Language). Grace is still called to this day the "Grandmother of COBOL." COBOL itself was a high-level, user-friendly language, and its code could be reused multiple times.

We'll put a full stop here for now. These 15 years of programming language history show how determined the researchers and programmers of that era were. How they were able to create new programs that would become ever more perfect tools. Some of their ideas were ahead of their time. Also impressive is the fact that such diverse groups and organizations were able to collaborate with each other rather than just compete 😉 Undeniably, those dozen or so years at the turn of the 1940s and 1950s laid the groundwork for the spectacular development of our field. In the years that followed, things only got more interesting 😄
We will certainly write more about this on our blog.
