Skip to main content

Need for programming languages

Lesson Objective

In this lesson you will understand the need to learn one or more programming languages. You will be given a brief history on how programming languages came to be and the different types that have emerged. This is a self-paced class.

Introduction

💬 How would you define the word language?

Communication requires a format or structure that is understood by all if it aims to be effective. If we all decided to communicate in some format or structure that was only known to us, we would not be able to convey important messages. This results in the need to develop a ‘language’. Aristotle defines language as a speech sound produced by human beings to express their ideas, emotions, thoughts, desires, and feelings.

Now look back at your definition of a language and take a moment to revise before we formally define the word.

Here is the definition of ‘language’; A language is a system of conventional or written symbols through which human beings, as members of social groups and participants in their culture, communicate.

Let’s look at an instance. If you need to communicate with two people, one person knows Hindi and the other person knows Telugu. In this case you need to identify a common language between them in order for them to communicate with each other. You speak to them in some commonly known languages and come to the conclusion that they both understand English. Now, all the three parties can effectively communicate with each other in English.

Similarly, some specific languages are needed to communicate with computers, and those languages are called programming languages.

🏁A programming language is a set of instructions written in a specific language to perform a specific task. It is mainly used to develop desktop applications, operating systems, websites, mobile applications, etc.

Need for multiple programming languages:

  • Some languages, such as C, are designed to produce efficient code to be run on small computer systems.
  • Languages like Pascal and Simula are designed to teach programming concepts to beginners.
  • Fortran is a language designed to produce efficient numeric calculations.
  • Some languages, such as COBOL, are designed to provide readable syntax for financial and other business applications.
  • Languages such as Ada are designed to combine reliability, robustness, readability, and execution efficiency.
  • Some languages, such as Python, are designed to produce programs with reduced effort on the programmer’s end.

You must have now realised why multiple programming languages exist; one solution doesn’t fit all. 😓

Why do we need knowledge on programming languages?

Learning the fundamentals of programming can give you a competitive edge in the technology-driven world. It also enhances your logic and problem solving ability. Programming languages help you broaden your knowledge bank and be a more informed citizen. From these languages you learnt to:

  • Choose the most appropriate language for a given task.
  • Learn any new languages more easily
  • Use the languages you know more productively
  • Design your own language and tap into your creativity
  • Encounter fascinating ways of programming you might never have imagined before

Types of programming languages

1. Low-level programming languages

A low-level language is a machine-dependent (machines can only understand binary 0s and 1s) programming language. The processor runs low- level programs directly without the need of a compiler or interpreter, so the programs written in low-level language can be run at high speeds. You will learn the words compiler and interpreter from a programming perspective in subsequent chapters.

2. High-level programming languages

High-level programming languages (HLL) are designed for developing user-friendly softwares, programs and websites. This programming language requires a compiler or interpreter to translate the program into machine language and then proceed with executing the program.

The main advantage of a high-level language is that it is easy to read, write, and maintain as they are languages made to translate human words and commands into something much easier for machines to understand.

Some examples of high-level programming languages include Python, Java, JavaScript, PHP, C#, C++, Objective C, Cobol, Perl, Pascal, LISP, FORTRAN, and Swift programming language.

3. Middle-level programming languages

A middle-level programming language lies between the low-level programming languages and the high-level programming languages. It is also known as the intermediate programming language or pseudo-language.

A middle-level programming language's advantages are that it supports the features of high-level programming, it is a user-friendly language, and closely related to machine language and human language.

Example: C, C++, language

Check-point Assessment

Que:Which of the following is not a programming language?

  1. PHP
  2. Java
  3. Trap
  4. Pascal
Check the Solution!
Ans : Trap

See what Winston Churchil has got to say -

It is said that we should learn from our mistakes and even better, learn from other’s mistakes. Just to avoid repetition, let’s see what languages already exist.

History of programming languages: A timeline

Listed below is a timeline of the history of programming languages. The first known programming languages were complicated machine codes that were manually inputted into early computing machines. As we move further you’ll discover that computer programming developed quickly from machine codes to fully automated human-readable code.

Before we dive deeper into the years and names of programming languages, check out the timeline of how it evolved.

Click here to see! (make this a link and add the below image to open up in a new tab)

1843: Ada Lovelace’s machine algorithm

Ada Lovelace invented the first-ever machine algorithm for Charles Babbage’s Difference Machine that laid the foundation for all programming languages.

1944-45: Konrad Zuse’s Plankalkül

Somewhere between 1944-45, Konrad Zuse developed the first ‘real’ programming language called Plankalkül (Plan Calculus). Zuse’s language (among other things) allowed for the creation of procedures, which stored chunks of code that could be invoked over and over to perform routine operations. These are more popularly known as routines or subroutines and can be used to store chunks of code that could be invoked repeatedly to perform routine operations such as taking a square root.

1949: Assembly Language

Assembly language was seen in use first in 1949 and very soon used in the Electronic Delay Storage Automatic Calculator (EDSAC). It was a type of low-level programming language that simplified the language of machine code. In other words, the specific instructions necessary to operate a computer.

Check-point Assessment:

Que: The first ever machine algorithm was invented in the year?

  1. 1853
  2. 1843
  3. 1833
  4. 1863
Check the Solution!
Ans : 1843

1949: Shortcode

Shortcode (or Short-order code), was the first High-Level Language (HLL) suggested by John McCauley in 1949. However, it was William Schmitt who implemented it for the BINAC computer the same year and for the UNIVAC in 1950.

1952: Autocode

Autocode was a general term used for a family of programming languages. First developed by Alick Glennie for the Mark 1 computer at the University of Manchester, Autocode was the first-ever compiled language to be implemented meaning that it can be translated directly into machine code using a program called a compiler. Autocode was used on the Ferranti Pegasus and Sirius early computing machines in addition to the Mark 1.

1957: FORTRAN

FORmula TRANslation or FORTRAN was created by John Backus and is considered to be the oldest programming language in use today. The programming language was created for high-level scientific, mathematical, and statistical computations. FORTRAN is still in use today in some of the world’s most advanced supercomputers.

1958: ALGOL (Algorithmic Language)

Algorithmic language or ALGOL was created by a joint committee of American and European computer scientists. ALGOL served as the starting point for the development of some of the most important programming languages including Pascal, C, C++, and Java.

Check-point Assessment

Que: Select the incorrect statement(s) from the following?

  1. FORTRAN was created by John Backus
  2. ALGOL was created by a joint committee of Asian and Australian Computer Scientists
  3. Alick Glennie developed Autocode
  4. None of these
Check the Solution!
Ans : ALGOL was created by a joint committee of Asian and Australian Computer Scientists

1958: LISP (List Processor)

List processor or LISP was invented by John McCarthy at the Massachusetts Institute of Technology (MIT). Originally purposed for artificial intelligence, LISP is one of the oldest programming languages still in use today and can be used in the place of Ruby or Python. Companies such as Acceleration, Boeing, and Genworks are still using LISP in their tech stacks.

1959: COBOL (Common Business Oriented Language)

Common Business Oriented Language (COBOL), is the programming language behind many credit card processors, ATMs, telephone and cell calls, hospital signals, and traffic signals systems (just to name a few). The development of the language was led by Dr. Grace Murray Hopper and was designed so that it could run on all brands and types of computers. COBOL is still used to this day primarily for banking and gamification systems.

1964: BASIC (Beginner’s All-Purpose Symbolic Instruction Code)

Beginners All-Purpose Symbolic Instruction Code or BASIC was developed by a group of students at Dartmouth College. The language was written for students who did not have a strong understanding of mathematics or computers. The language was developed further by Microsoft founders Bill Gates and Paul Allen and became the first marketable product of the company.

Check-point Assessment

Que: The programming language behind many credit card processors, ATMs, telephone and cell calls, hospital signals, and traffic signals systems is ?

  1. COBOL
  2. BASIC
  3. LISP
  4. ALGOL
Check the Solution!
Ans : COBOL

1970: PASCAL

Named after the French mathematician Blaise Pascal, Niklaus Wirth developed the programming language in his honor. It was developed as a learning tool for computer programming which meant it was easy to learn. It was favored by Apple in the company’s early days, because of its ease of use and power.

1972: Smalltalk

Developed at the Xerox Palo Alto Research Centre by Alan Kay, Adele Goldberg, and Dan Ingalls, Smalltalk allowed for computer programmers to modify code on the fly. It introduced a variety of programming language aspects that are visible languages of today such as Python, Java, and Ruby. Companies such as Leafly, Logitech, and CrowdStrike state they use Smalltalk in their tech stacks.

1972: C

Developed by Dennis Ritchie at the Bell Telephone Laboratories for use with the Unix operating system. It was called C because it was based on an earlier language called ‘B’. Many of the current leading languages are derivatives of C including; C#, Java, JavaScript, Perl, PHP, and Python. It also has been/still being used by huge companies like Google, Facebook, and Apple.

Check-point Assessment

Que.Microsoft supported which of the following languages in development?

  1. Smalltalk
  2. Pascal
  3. BASIC
  4. COBOL
Check the Solution!
Ans : BASIC

1972: SQL (SEQUEL at the time)

SQL was first developed by IBM researchers Raymond Boyce and Donald Chamberlain. SEQUEL (as it was referred to at the time), is used for viewing and changing information that is stored in databases. Nowadays the language is an acronym – SQL, which stands for Structured Query Language. There are a plethora of companies that use SQL and some of them include Microsoft and Accenture.

1980/81: Ada

Ada was originally designed by a team led by Jean Ichbiah of CUU Honeywell Bull under contract to the United States Department of Defense. Named after the mid-19th-century mathematician Ada Lovelace, Ada is a structured, statically typed, imperative, wide-spectrum, and object-oriented high-level programming language. Ada was extended from other popular programming languages at the time such as Pascal. Ada is used for air-traffic management systems in countries such as Australia, Belgium, and Germany as well as a host of other transport and space projects.

1983: C++

Bjarne Stroustrup modified the C language at the Bell Labs, C++ is an extension of C with enhancements such as classes, virtual functions, and templates. It has been listed in the top 10 programming languages since 1986 and received Hall of Fame status in 2003. C++ is used in MS Office, Adobe Photoshop, game engines, and other high-performance software.

1983: Objective-C

Developed by Brad Cox and Tom Love, Objective-C is the main programming language used to write software for macOS and iOS, Apple’s operating systems.

Check-point Assessment

Que: IBM Researchers played a very big role in the development of which of the following Languages?

  1. C++
  2. ADA
  3. SQL
  4. Objective C
Check the Solution!
Ans : SQL

1987: Perl

Perl was created by Larry Wall and is a general-purpose, high-level programming language. It was originally designed as a scripting language designed for text editing but nowadays it’s widely used for many purposes such as CGI, database applications, system administration, network programming, and graphic programming.

1990: Haskell

Haskell is a general-purpose programming language named after the American logician and mathematician Haskell Brooks Curry. It is a purely functional programming language meaning it’s primarily mathematical. It’s used across multiple industries particularly those that deal with complicated calculations, records, and number-crunching. Like many other programming languages from this era, it is not overly common to see Haskell in use for well-known applications. With that said, the programming language has been used to write a number of games one of which is Nikki and the Robots.

1991: Python

Named after the British comedy troupe ‘Monty Python’, Python was developed by Guido Van Rossum. It is a general-purpose, high-level programming language created to support a variety of programming styles and be fun to use (a number of the tutorials, samples, and instructions often contain Monty Python references). Python is, to this day, one of the most popular programming languages in the world is used by companies such as Google, yahoo, and Spotify.

Check-point Assessment

Que: Select the incorrect option

  1. Brad Cox and Tom Love : Objective C
  2. Guido Van Rossum : Python
  3. Honeywell Bull : Haskell
  4. Bjarne Stroustrup : C++
Check the Solution!
Ans : Honeywell Bull : Haskell

1991: Visual Basic

Developed by Microsoft, Visual Basic allows programmers to utilize a drag-and-drop style of choosing and changing pre-selected chunks of code through a graphical user interface (GUI). The language is not overly used these days however Microsoft has used portions Visual Basic to a number of their applications like Word, Excel, and Access.

1993: Ruby

Created by Yukihiro Matsumoto, Ruby is an interpreted high-level programming language. A teaching language which was influenced by Perl, Ada, Lisp, and Smalltalk – among others. Ruby’s primary uses are for web applications development and Ruby on Rails. Twitter, Hulu, and Groupon are some well-known examples of companies that use Ruby.

1995: Java

Java is a general-purpose, high-level language created by James Gosling for an interactive TV project. It has cross-platform functionality and is consistently among the top of the world’s most popular programming languages. Java can be found everywhere, from computers to smartphones to parking meters.

Check-point Assessment

Que: Visual Basic has been developed by?

  1. IBM
  2. Apple
  3. Microsoft
  4. Oracle
Check the Solution!
Ans : Microsoft

1995: PHP

Formerly known as ‘Personal Home Page’ which now stands for ‘Hypertext Preprocessor’, PHP was developed by Rasmus Lerdorf. Its primary uses include building and maintaining dynamic web pages, as well as server-side development. Some of the biggest companies from across the globe use PHP including Facebook, Wikipedia, Digg, WordPress, and Joomla.

1995: JavaScript

JavaScript was created by Brendan Eich, this language is primarily used for dynamic web development, PDF documents, web browsers, and desktop widgets. Almost every major website uses JavaScript. Gmail, Adobe Photoshop, and Mozilla Firefox include some well-known examples.

2000: C#

Developed at Microsoft with the hope of combining the computing ability of C++ with the simplicity of Visual Basic, C# is based on C++ and shares many similarities with Java. The language is used in almost all Microsoft products and is seen primarily in developing desktop applications.

Check-point Assessment:

Que: Which of the following languages does not use the concept of object oriented programming?

  1. C
  2. JAVA
  3. Python
  4. C++
Check the Solution!
Ans : C

2003: Scala

Developed by Martin Odersky, Scala which combines mathematical functional programming and organized object-oriented programming. Scala’s compatibility with Java makes it helpful with Android development. Linkedin, Twitter, Foursquare, and Netflix are just a few examples of the many companies that use Scala in their tech stacks.

2003: Groovy

Derived from Java, Groovy was developed by James Strachan and Bob McWhirter. The language improves productivity because of its succinct and easy to learn. Some well-known companies that are using Groovy in their tech stacks are Starbucks, Transferwise, and Craftbase.

2009: Go

Go was developed by Google to address issues that occur due to large software systems. Due to its simple and modern structure, Go has gained popularity among some of the largest tech companies around the world such as Google, Uber, Twitch, and Dropbox.

2014: Swift

Developed by Apple as a replacement for C, C++, and Objective-C, Swift was developed with the intention to be easier than the aforementioned languages and allow less room for error. Swift’s versatility means it can be used for desktop, mobile, and cloud applications. Leading language app ‘Duolingo’ launched a new app that was written in Swift.

Check-point Assessment:

Que: Which of the following languages was introduced by Apple as a replacement for C, C++ and Objective C?

  1. Go
  2. Groovy
  3. Scala
  4. Swift
Check the Solution!
Ans : Swift

What old programming languages are still used today?

Not all programming languages last forever. Whether it’s a result of developments in technology or simply being replaced by a more sophisticated language. With that said, there are some old programming languages that are still being used by IT professionals today:

FORTRAN

The initial version of FORTRAN was proposed at IBM by John Backus way back in 1953. It was the first optimizer compiler and was widely used for scientific work because it’s optimised code competed favourably with hand-written assembly code. The language is still used to this day on some of the world’s fastest supercomputers. There have been a string of updates since 1953 with the most recent version released in 2018.

COBOL

COBOL was developed back in 1959 and was one of the first high-level programming languages. Despite being invented so long ago COBOL is still hugely prevalent today. In the US alone, 43% of banking systems are built on COBOL, accounting for 95% of ATM swipes, and 80% of in-person transactions.

Early Microsoft and Apple Programming Languages

Microsoft and Apple are two of the most fundamental companies in the history of programming languages. BASIC (first released in 1964), was modified by Microsoft founders Bill Gates and Paul Allen in 1975. Their modified version became Altair BASIC, which was the first marketed and distributed product of Microsoft, and led to the creation of the company.

Pascal was the programming language of choice during the early days of Apple. Invented in the early 1970s, Apple developers liked Pascal because of its power and ease of use. However, when Apple acquired the NeXTSTEP code library in 1996, Objective-C (which was licensed under NeXTSTEP) became the popular language of choice for the tech giant.

What is the most popular programming language today?

We’re nearing the end of our journey through the history of programming languages. As you’ve seen, computer programming has developed to a level beyond all expectation, powering the technology that we rely on a daily basis. It’s for this reason that we need skilled professionals to implement and control the programming languages that power the world today.

But which programming language is the most popular?

The DevSkiller 2020 IT Skills Report provides valuable insight for precisely that question. The report contains data from over 213,000 coding tests sent across 143 countries by companies looking to hire specialised IT professionals.

As you can see above, JavaScript was the most popular language tested on DevSkiller based on the test invites that were sent out. This finding is confirmed in the 2020 Stack Overflow Developer Survey which lists JavaScript as the most popular programming language for the eighth year in a row. SQL, Java, HTML/CSS, and .NET/C# rounded out the top 5 in our results.

Conclusion

Before we conclude, let’s hear from the accomplished people in the computer field of why they feel Programming is important.

The history of programming languages is fascinating. Who would have thought that an algorithm from the mid-19th century would pave the way for the technology-driven society we live in today. From early machine codes to the sophisticated human-readable code that powers our favourite technologies today, programming languages have come a long way. What’s for certain, computer programming will continue to develop as it has done for the past 150 years and it’s exciting to see what the future brings.

We hear you,

Get some rest!!