5 Stages of Programming Languages
Table of Contents
The Origins of Coding
Low-Level Languages
High-Level Languages
— Early Birds
— New Paradigms
— Imperative Languages
— Rise of the Internet
— Recent Trends
How Coding Has Evolved
Conclusion
Computer programming has become an inherent part of our daily lives. As a result, there are over 500 programming languages. But, do you know when and how they came to be what we get to know nowadays? Along this article, we’ll focus on the origins of programming and coding, and how they have evolved. As a heads up: it has been in the making for way longer than you may believe.
The Origins of Coding
Would you believe us if we told you that coding rose up in 1804? What if we also added that, in 1843, the first programming language already existed?
Quite some time before computers existed, Joseph Marie Jacquard invented the Jacquard loom. In the 17th century, this machine's purpose was to create patterns on rugs, and blankets. To do so, Jacquard used metal-punch cards that laced together, to weave the desired pattern. In fact, you can check its process and work in this video. Yet, it wasn’t until a few decades later, that Charles Babbage designed the Analytical Engine. With strong inspiration from Jacquard, mathematician Ada Lovelace created the first machine algorithm. In a further step, this algorithm led to compute the Bernoulli numbers.
Lovelace and Babbage wrote an essay about this. In it, Lovelace included a large table with data values, variables, and results. Also, it represented what would now we know as “execution traces”. In its origins, the Analytical Engine was a steam-powered programmable computer. Unfortunately, due to a lack of funding, it was never built. It wasn’t until around a century later, that the first computer was actually built. But Lovelace and Babbage’s work laid the foundation for all programming languages.
Low-Level Languages
Putting it to work.
As we’ve mentioned, Babbage never got to build his Analytical Language. Nonetheless, the 20th century brought Babbage and Lovelace’s work to fruition. As far as we know them today, the first step to programming was through low-level languages. Within this, the first programmable computer was the Z1, designed in 1936 by Konrad Zuse. As a standard, low-level programming languages are machine-oriented. Moreover, programmers need extensive knowledge of hardware and its configuration to use them. There are two types of low-level languages: machine codes and assembly languages.
Machine Code
If we want a comprehensive knowledge and understanding, we must mention machine codes. As a start point, machine code, or machine language, is the elemental language of computers. Besides being the lowest level of programming detail a programmer can see, it’s based on the binary code.
Assembly Languages
Launched in 1949, Assembly language was the first to move away from binary code. This allowed us to simplify machine code and make it easier for humans to read it. As a result, it was the first widely-used programming language, but it had its issues. Among those, the most pressing one was that each type of computer used a different language. This problem was what led the path to high-level languages.
High-Level Languages
The next step.
High-level languages are, in essence, different ways to say the same thing to a computer. Unlike low-level’s high-level languages are not restricted to a specific device. But, as different languages address different needs, they don’t serve the same purposes. Nowadays, with the amount of existing languages, some address similar needs. In those cases, choices rely on specific features or developer’s preferences. Now, let’s take a look at how high-level languages have progressed over time.
Early Birds
1952 - Autocode
Developed by Alick Glennie, Autocode actually refers to a family of programming languages. As its biggest advance, it was able to translate into machine code with a compiler. Because of this, it’s thought of as the first compiled language. Also, it was the language applied for the Mark 1 computer, as well as Ferranti, Pegasus and Sirius.
1957 - Fortran
Fortran stands for Formula Translation and it’s an IBM creation. For instance, Fortran 5 was the chosen language for Nasa’s probes Voyager 1 and Voyager 2. As a language, it’s used for numeric and scientific computation. Besides, it’s versatile, high-performance and easy-to-learn. On top of that, it’s still in use today! This makes it the oldest programming language in usage. For that, IBM has credits for developing “the first computer language standard”.
1958 - AlgoL
ALGOrithmic Language is the creation of a committee of American and European scientists. Moreover, it was the first language to include begin and end code blocks. Also, it was the starting point for popular programming languages still used, like C, C++ and Java.
1959 - LisP
MIT’s John McCarthy created LISP (List Processor). While its original purpose was getting close to AI, it’s still in use nowadays. As a result, some people dubbed him as the father of functional programming languages. Today, you can use it instead of languages like Ruby or Python, and it’s currently known as Common Lisp. With its function-oriented language, it created platforms like Grammarly.
1959 - CoBOL
Common Business-Oriented Language is a creation of Dr. Grace Murray Hopper. Usually known as COBOL, its original purpose was for it to be able to run on every computer. Furthermore, in its origins, it applied for business uses. As a result, you can find it on credit card processors and ATMs, to name a few.
1964 - BASIC
Dartmouth students John G. Kemeny and Thomas E. Kurtz developed BASIC. To simplify, its initials stands for Beginner’s All-purpose Symbolic Instruction Code. Later on, Microsoft completed and released it in 1991. With its launch, BASIC became Microsoft’s first product.
New Paradigms
1970 – Pascal
Named after French mathematician Blaise Pascal, Niklaus Wirth developed this programming language. Soon enough, Pascal became one of Apple’s favorites. In consequence, it was its main language for software dev during the company’s first years. Since then, Pascal has been an influential imperative and procedural programming language.
1972 – SmallTalk
SmallTalk it’s a product from the Xerox Palo Alto Research Center. Its biggest contribution was to change programmers to change code on the go. Furthermore, it has also influenced the syntax and concepts of other languages. These include Java, Python, and Ruby.
1972 – C
Dennis Ritchie created C at Bell Labs. With its structure, many believe it’s the first high-level programming language. In summary, it’s a general-purpose, procedural language. As a result, it ended up replacing code written in assembly language. Furthermore, current languages, like C++, JavaScript and Python come from C. Of course, C itself is still popular and used nowadays by companies such as Google and Facebook.
1972 – SQL
By Donald D. Chamberlin and Raymond F. Boyce, SQL —Structured Query Language— was also born at IBM. Among its main uses are viewing and changing information stored in databases. When created, it was called SEQUEL.
1978 – MatLab
MATLAB —Matrix Laboratories— it’s a Cleve Moller‘ product. As a remarkable point, it’s an excellent language for writing mathematical programs. Moreover, it’s used for matrix manipulation, implementing algorithms and creating user interfaces.
Imperative Languages
1980 – ADA
ADA‘s development purpose was to serve the US Department of Defense. As you might have guessed, it’s named after Ada Lovelace, whom we’ve talked about before. As of its structure, it’s a tactically-typed, imperative and object-oriented language. Today, it’s used for air-traffic management systems. Besides, it applies to other transport and space projects.
1983 – C++
C++ is a C’s extension, designed by Bjarne Stroustrup. Besides C’s components, it also includes classes, templates and virtual functions. Since 1986, it has been among the top 10 programming languages, used in Adobe Photoshop and MS Office. Within its great achievements, it shifted from procedural to object-oriented programming.
1983 – Objective-C
Brad Cox and Tom Love were the developers behind Objective-C. Among its purposes is that it’s general-purpose and object-oriented. Currently, Objective-C is widely used to code software for macOS and iOS.
1987 – Perl
This general-purpose language comes from Larry Wall. During its development, Perl‘s goal was to be a scripting language. Since then, it’s now used for a wide variety of purposes. These include network programming, CGI, and system administration.
Rise of the Internet
1990 – Haskell
Haskell is a pure functional language used for complicated calculations, records and number-crunching. Also, it’s used to develop games, such as Nikki and the Robots.
1991 – Python
Designed by Guido Van Rossum, Python is one of the most popular programming languages to this day. Among its popularity reasons, it’s very easy to learn and that it requires fewer lines of code. Today, its main usage is in software and web application development. Also, it comes handy with information security. For instance, Google Search, Nasa and YouTube are some of its current users.
1991 – Visual Basic
Microsoft developed Visual Basic at the beginning of the 90s. Through its proposal, programmers can drag and drop chunks of code. While it’s not that popular anymore, parts of it were vital to develop worldwide known tools like Word and Excel.
1993 – Ruby
Yukihiro Matsumoto created Ruby as a teaching language. So, it’s no surprise that it builded from his favorite programming languages. To mention a few, those include Perl, Ada, Lisp, Smalltalk and Eiffel. Today, it’s used for web apps, and also on the web app framework Ruby on Rails.
1995 – Java
Java is a platform-independent language, created by James Gosling. Initially, it was used for cable boxes and hand-held devices. But, now, it’s embedded in pretty much everything. For instance, it’s used from computers and smartphones to even the Mars rovers! On top of that, it’s one of the most popular programming languages in use today.
1995 – PHP
PHP is a scripting language developed by Rasmus Lerdorf. In its beginnings, it stood for Personal Home Page. Nonetheless, nowadays it stands for Hypertext Preprocessor. Today, it’s popular on web programming for connecting databases. Furthermore, it runs in over 20 million websites, and it’s the main language on WordPress.
1995 – JavaScript
JavaScript is one of the most popular languages within the rise of the internet. So much that it’s pretty much essential for any web or app developer. Fun fact: built by Brendan Eich, its creation only took 10 days! As for its purpose, it focused on dynamic web development, PDFs documents and widgets. For instance, Gmail, Adobe Photoshop and Firefox use JavaScript since their starting days.
Recent Trends
2000 – C
Microsoft developed C# with the aim of combining C++’s abilities and Visual Basic’s simplicity. Currently, C# uses lies most in Microsoft products. Moreover, it’s used in Unity to create incredible games.
2003 – Scala
Combining mathematical functions with organized object-orientation, Scala is a creation of Martin Odersky. Also, it’s compatible with Java. Furthermore, companies like LinkedIn, Netflix, and Twitter use it.
2003 – Groovy
Groovy borns as a derivative from Java, developed by James Strachan and Bob McWhirter. Among its most prominent features, it’s easy to learn and concise, improving productivity. Because of this, ventures like Starbucks and CraftBase use this language.
2009 – Go
Go (or Goland) is a Google product to tackle issues that stem from large software systems. Its specialities include web development and cloud and network services. Also, its features include DevOps and site reliability, and command-line interfaces. Since its popularity, Uber, Dropbox, and Twitch handle their projects with Go.
2011 – Kotlin
JetBrains, in 2011, develop Kotlin, for the Java Virtual Machine (JVM). On the bigger picture, it’s usually used to develop Android apps. Also, Kotlin is the language behind companies like Google, Amazon, Pinterest, and Trello.
2014 – Swift
To reduce C, C++, and Objective-C’s margin errors, Apple created Swift. As a general-purpose programming language, it’s used for desktop, mobile, and cloud apps.
How Coding Has Evolved
In this article, we’ve covered quite a few programming languages with a long-term impact on coding. As a recap, we’d like to summarize how coding has evolved, adding extra information.
Since the beginning of coding to current days, a huge difference has been education. Back then, you had to study computer science, while learning operating systems on your own. Also, a degree or a master was the main key to get a job in this field. Nowadays, quality lies on level, experience, and availability to work with certain tools. Moreover, now there are countless online tools . As a result, programmers can learn and keep updated with latest trends.
Another difference involves code’s durability. Back then, at its beginnings, we aimed for code able to stand the test of time. Yet, now we know that constant change is a key norm. For example, requirements change throughout a project and code is more customizable. In the past, object-oriented programming and waterfall-modes were all programmers had. Now, coding relies on agile methodologies and functional programming. While in early days code needed to be able to read and understand, we now aim for concise codes.
Conclusion
Last 70 years have been so rich in progress about coding and programming languages. For instance, in the beginning, we spoke machines’ language. In the current days, we’re able to create the languages we work with. Also, we’ve adapted how we code, and we learn to code to meet current industry requirements. In fact, there’s no secret that we can do much more now through coding than 10 years ago. Furthermore, we bet this will still be true 10 years ahead. So, what do you think the future holds when it comes to coding and programming?
With the right team in place, your business can harness the power of digital transformation to create an engaging user experience that leads to increased sales. If you’re interested in turning your idea into a reality, get in contact with us today!