All Posts
From ATMs to WhatsApp: The Old Programming Languages Behind Your Everyday Tech

From ATMs to WhatsApp: The Old Programming Languages Behind Your Everyday Tech

Every once in a while, the tech community organizes a kind of mourning, a farewell to some old programming languages. Reporters publish throwback articles. Stack Overflow polls demote them to marginal...

Every once in a while, the tech community organizes a kind of mourning, a farewell to some old programming languages. Reporters publish throwback articles. Stack Overflow polls demote them to marginal notes. Academic computer science courses clandestinely exclude them from the list of topics. However, the moment you use your card to withdraw cash from an ATM, a weather forecast is saying it will rain in 3 days, you are sending a WhatsApp message to someone halfway across the world, these dead languages are the ones that are running behind the scenes.

This​‍​‌‍​‍‌ article is not a reflection of nostalgia. It is a piece about what's really running the world, the layers of code behind the beautiful apps and cloud dashboards, in programming languages that were invented before the internet, still working silently in the basement of modern ​‍​‌‍​‍‌civilization.

Here is a deep, seriously studied exploration of the ancient programming languages that have never really gone away, who they are, where are they still doing their job, why they have remained over the years, and how the world would be a very different place without them.


BORN 1959 · GRACE HOPPER & CODASYL

COBOL

Common Business-Oriented Language — the invisible backbone of global finance


COBOL was designed almost like plain English and capable of processing large volumes of business data reliably and efficiently, was the brainchild of computing pioneer Grace Hopper back in 1959. It was a radically new concept at that time: a language a businessperson could read, not only a programmer. More than 60 years on, COBOL remains the programming language with the highest financial impact globally, and most people haven't even heard of it.

220B+
lines of COBOL code still in active production globally
$3 trillion
in daily commerce processed by COBOL systems
95%
of all ATM transactions run on COBOL
43%
of all US banking systems built on COBOL

Where Is It Used Today?

More than 95% of ATM cash withdrawals, 43% of banking systems, and the usage of COBOL are interlinked. The US Social Security Administration, IRS, large insurance companies, and almost every major bank in the world are the ones dealing through COBOL mainframes. Up to 220 billion lines of COBOL code are operating today, and COBOL performs 80% of all credit card transactions at the point of sale. Still, new lines are being formulated: around 1.5 billion new lines of COBOL code are produced each year in business systems globally.

Active Deployment Environments

  • Global Banking Systems,
  • ATM Networks,
  • US Social Security Administration
  • Insurance Processing
  • Government Payroll
  • Credit Card Transactions
  • IBM Mainframes
  • Tax Systems (IRS)

Why Hasn't It Been Replaced?

The truth is, it's not for lack of trying. Back in 2012, the Commonwealth Bank of Australia attempted to replace its core COBOL platform, but it took a whopping five years and cost a staggering $749.9 million. More recently, in 2018, UK bank TSB was forced to migrate away from COBOL, only to suffer through days of trading downtime, a hefty £330 million in migration costs, and a staggering 204, 000 customer complaints. The thing is, replacing COBOL isn't just a technical challenge it's more like an archaeological dig. The code is largely undocumented, the engineers who originally wrote it have long since retired, and the business logic embedded in it represents decades of institutional knowledge that was never written down anywhere else. This makes it incredibly difficult to understand, let alone replace.

Did You Know: Amid the COVID-19 crisis, New Jersey made a public appeal to retired COBOL programmers to assist its unemployment system in coping with the drastic increase in claims. The system, operating on code written in COBOL 40 years ago, was completely overloaded, and nobody was around anymore to figure out how to scale it.


BORN 1957 · JOHN BACKUS, IBM

FORTRAN

Formula Translation — the language that predicts the weather you'll face tomorrow


FORTRAN, short for Formula Translation, was created by John Backus at IBM in 1957 and became the world's first widely used high-level programming language. Backus later described writing early machine code as "hand-to-hand combat with the machine, " and FORTRAN was his solution: a language that let scientists and engineers write something close to mathematical notation and have the computer understand it. It revolutionised scientific computing, and nearly 70 years later, it is still the language of choice wherever raw numerical performance is non-negotiable.

Where Is It Used Today?

Today, FORTRAN is still widely used in scientific computing, especially when it comes to complex calculations and simulations. It's really good at handling big numbers and complicated math problems, which makes it perfect for things like climate research, weather forecasting, and other scientific applications. In fact, many scientists and researchers rely on FORTRAN to help them understand and predict things like climate change, weather patterns, and even the behavior of tiny particles like nanoparticles and atoms.

NASA is one example of an organization that still uses FORTRAN extensively. They use it to build climate models, simulate the behavior of objects in space, and even predict the weather. And it's not just NASA many other scientists and researchers use FORTRAN to study the atmosphere, oceans, and other complex systems. Every time you check the weather forecast or read about a new climate change study, there's a good chance that FORTRAN code was used to make it happen. Whether it's tracking hurricanes, predicting temperature changes, or simulating the behavior of DNA and genomes, FORTRAN is still an essential tool in the world of scientific computing.

Active Deployment Environments

  • NASA Space Missions
  • Climate Modelling (NOAA, ECMWF)
  • Doppler Weather Forecasting
  • Nuclear Physics Simulations
  • Computational Fluid Dynamics
  • Seismology
  • Astrophysics Research
  • UK Met Office
  • Supercomputer Benchmarks

"FORTRAN is the mother tongue of scientific computing. Its replacement by any other possible language may remain a forlorn hope."Cecil E. Leith, 1993

Why Hasn't It Been Replaced?

So, what's the reason behind this? Well, it's simple nothing can beat its speed. FORTRAN is the foundation of many major climate models used by top organizations like NOAA, NASA, ECMWF, and the UK Met Office. These legacy codebases are huge, highly optimized, and rewriting them in a different language would be a massive task with a high risk of introducing errors and performance issues. But here's the thing the latest FORTRAN standard, FORTRAN 2018, has some great modern features like object-oriented programming and parallel processing, which makes it just as good as any modern HPC language. This means it can still keep up with the demands of today's high-performance computing.

Did You Know: During 2017, NASA organized a code optimisation challenge for a FORTRAN-driven aerodynamic solver. They were forced to call off the event, not because there wasn't enough participation, but since they received more than 1, 800 submissions making the screening process unmanageable. It's not that FORTRAN programmers are few; in fact, they're just not seen.


BORN 1947 · KATHLEEN & ANDREW BOOTH

Assembly Language

The language closest to the machine — running inside the hardware you touch every day


Assembly language is just a thin level higher than the machine code, the language directly understood by a processor's instruction set. It was the very first step away from pure binary, where programmers could use easily recognizable code words (mnemonics) instead of endless strings of zeros and ones. Though the use of high-level programming languages replaced general-purpose programming a long time ago, Assembly language is still being used where having control over the hardware is not just a wish, but a necessity.

Where Is It Used Today?

Assembly language is still widely used today for tasks that require direct control over hardware, such as accessing special processor instructions or resolving critical performance issues. It's commonly used in device drivers, low-level embedded systems, and real-time systems. For instance, the Linux kernel, which runs on more than 96% of the world's web servers, contains handwritten assembly code in its architecture-specific directories. Additionally, companies like TSMC, Samsung Semiconductor, and Sony's imaging division use assembly language to develop firmware for performance-critical components in their chips.

A recent study revealed that a significant 75% of embedded system developers use assembly language for at least part of their code. Moreover, the use of assembly language is also prevalent in the aerospace and defense industries, where high reliability and low-level control are crucial. In fact, about 60% of aerospace software developers use assembly language in their projects, highlighting its importance in these fields. This shows that assembly language continues to play a vital role in various industries where performance, reliability, and control are essential.

Active Deployment Environments

  • Linux Kernel
  • Device Drivers
  • Embedded Firmware
  • Cryptography (OpenSSL)
  • Game Console GPU Shaders
  • Microcontrollers (IoT)
  • Aerospace & Defense
  • Bootloaders
  • Cybersecurity / Reverse Engineering

Why Hasn't It Been Replaced?

Assembly language remains indispensable for the times when a program needs to be run within a certain number of processor cycles, when the program runs on a single chip with a very limited amount of memory (512 bytes), or when the program has to access a hardware register that no higher-level language is aware of. Global embedded systems market, which is one of the main assembly-languages domains, is growing at 9.2% CAGR and is expected to reach $215 billion by 2030. Assembly code is present in the lowest layers of every IoT device, pacemaker, aircraft flight controller, and smartcard.

Did You Know: Assembly language was the programming language of the Apollo 11 guidance computer that made landing humans on the moon possible in 1969. The entire code 145, 000 lines was typed by hand on punch cards and checked by the mostly women engineers team at MIT. It functioned perfectly.


BORN 1958 · JOHN McCARTHY, MIT

LISP

List Processing — the language that invented AI, and still powers parts of it today


LISP, which stands for List Processing, was developed by John McCarthy at MIT in 1958. McCarthy was the one who first gave the term "Artificial Intelligence" and he made LISP as a means to the end of creating robots that can think. It was the first one to introduce such concepts as automatic memory management, dynamic type system, recursive functions, functions as first-class citizens, code as data, all of which are the basis of the modern languages. LISP is the second-oldest high-level programming language still in common use today, only FORTRAN surpasses it in longevity.

Where Is It Used Today?

LISP dialects have been widely used for programming in different scenarios such as web-applications, software operation controllers of, for example, mass transit systems like the London Tube. Commercial instances include Grammarly that employs AI for proofreading and text enhancement, and Boeing whose server is coded in a LISP variant. Clojure clients are Amazon, Capital One, and Walmart.

LISP is still in use for AI and data science but mostly in certain niches: symbolic AI and reasoning layers, rule engines, planning, theorem proving, knowledge representation, constraint solving, and program transformation. In a world full of large language models, LISP is the soft voice language used for building the reasoning and policy layers that work around them.

Active Deployment Environments

  • Grammarly (AI text analysis)
  • Amazon (Clojure)
  • Capital One (Clojure)
  • Boeing (server infrastructure)
  • London Underground Systems
  • AI Symbolic Reasoning
  • Academic AI Research
  • Theorem Provers
  • Emacs (text editor)

"In 1960, John McCarthy did for programming something like what Euclid did for geometry. He showed how, given a handful of simple operators, you can build a whole programming language."Paul Graham, Founder of Y Combinator

Did You Know: Paul Graham, who started Y Combinator, the accelerator that funded Airbnb, Dropbox, Stripe, and Reddit, developed his startup Viaweb completely in Common LISP back in the 1990s. He explained that LISP provided him with a competitive edge so potent that his rivals were puzzled not only by what he was doing but also by how they could emulate it. Yahoo bought Viaweb for $49 million.


BORN 1986 · JOE ARMSTRONG, ERICSSON

Erlang

The telecom language quietly powering billions of real-time messages


Erlang was developed at Ericsson in 1986 mainly by Joe Armstrong, Robert Virding, and Mike Williams, at first, it was a secret development tool to create fault-tolerant telephone exchange software. The fundamental concept was to let go of the idea of keeping the system failure-free and instead, designing the system which fails gracefully and recovers by itself. In 1998 it was released as open source and from then on it unexpectedly turned out to be the ideal programming language for the internet age with its extensive concurrency and continuous availability of systems.

Where Is It Used Today?

Every year, Cisco distributes 2 million products with Erlang operating systems. Ericsson has for years used Erlang in the core part of its GPRS, 3G, 4G, and 5G networks and this accounts for 40% of the global market share, so there's a high chance the program written in Erlang has given your smartphone the IP address that it has today. WhatsApp, a major player among the world's largest messaging platforms, has built its entire backend system with Erlang.

Discord, the platform which is quite popular for real-time communications, is based on Elixir/Erlang to handle its messaging systems. RabbitMQ, Goldman Sachs, T-Mobile, Amazon, and a host of other leading companies are using Erlang for their production systems.

Active Deployment Environments

  • WhatsApp (2B+ users)
  • Discord
  • Ericsson 4G/5G Infrastructure
  • Cisco Networking Devices
  • RabbitMQ
  • Goldman Sachs
  • T-Mobile
  • Amazon SimpleDB
  • Riot Gamesy

Why Hasn't It Been Replaced?

At the time when Facebook decided to buy WhatsApp in 2014 for $19 billion, the messaging app had around 450 million monthly active users that were managed by a group of only 10 software engineers working on the server side. On December 31, 2013, the incredible figure of 54 billion messages was exchanged worldwide via WhatsApp. It was Erlang's confluence of features among others, the ability to connect millions of lightweight processes with virtually no hardware that enabled this scale of operation. Whenever a system is required to be available at all times, highly concurrent, and capable of self-healing, Erlang is still the first and only choice in the world.

Did You Know: Erlang's "Let It Crash" philosophy is the radical change in programming compared to most ways software is written. Instead of trying through defensive programming to avoid every possible error, Erlang processes are designed in such a way that if they crash, they do so cleanly and get restarted automatically, which is why Erlang systems can achieve nine-nines uptime 99.9999999% availability that is used in real Ericsson telephone switches.


BORN 1980 · US DEPARTMENT OF DEFENSE

Ada

Built by the US military for systems where a bug could mean lives lost


Ada was ordered by the US Department of Defense in the 1970s and finalized in 1980. The name came from Ada Lovelace who is considered the world's first computer programmer. At that time, the DoD was investing huge amounts of money in software for military systems that were being developed in dozens of incompatible languages. Ada was meant to be the single, standardised, most reliable language for all safety-critical defense software. Its main features are strong typing, clear concurrency, and a compiler that identifies more errors before runtime than almost any other language.

Where Is It Used Today?

Ada is a language that is relied on such a degree that software failure is not an option. The avionics and flight management systems of Boeing 787 Dreamliner are implemented in Ada. Ada is the programming language for the avionics systems of Airbus A380. European Space Agency operates Ada for satellite control systems. Paris Métro's fully automated Line 14 is running on Ada. US Air Force's F-22 Raptor and Eurofighter Typhoon are the two aircrafts whose mission-critical flight control systems are run with Ada. In fact, every commercial aircraft you fly almost certainly has Ada somewhere hidden in the systems that keep it flying.

Active Deployment Environments

  • Boeing 787 Flight Systems
  • Airbus A380 Avionics
  • F-22 Raptor
  • Paris Métro Line 14
  • European Space Agency
  • US Navy Navigation
  • Medical Device Firmware
  • Nuclear Plant Control Systems
  • Air Traffic Control

Did You Know: Ada's one of the very few programming languages that was conceptualize to prevent bugs 'by design', not just to catch them afterward. Its compiler compels so many rules at compile time that a considerable category of runtime errors that are common in C or Java are simply not able to occur in Ada programs. In safety-critical industries, this is not a feature. It is the main reason.


BORN 1972 · ALAIN COLMERAUER, UNIVERSITY OF MARSEILLE

Prolog

Logic programming — the language that reasons with facts, not instructions


Prolog, short for Programming in Logic, came into existence in 1972 University of Marseille and it is a radically new way of programming. At the step of the most languages telling a computer how to do this or that, Prolog tells it what is true and expects it to work out the rest. You list facts and make rules; Prolog does the search for answers. Because of this, it is able to handle with reason, understanding of human languages, and knowledge representation, aspects of the main problems in artificial intelligence.

Where Is It Used Today?

IBM's Watson, the AI system that made history by defeating human champions on Jeopardy! in 2011, among other things, employs Prolog for its knowledge representation layer. And a lot of natural language processing pipelines, even now, rely on Prolog for parsing and semantic analysis. Prolog is also the language of choice for a variety of expert systems in medical diagnosis, legal reasoning, and financial compliance. It continues to be a staple in computer science curriculums worldwide and is regularly used in academic AI research projects. Several European air traffic control systems leverage Prolog-based logic engines for the detection of conflicts.

Active Deployment Environments

  • IBM Watson
  • Natural Language Processing
  • Medical Expert Systems
  • Legal Reasoning Tools
  • Air Traffic Control Logic
  • Academic AI Research
  • Theorem Proving
  • Compiler Design

Did You Know: During the 1980s, Japan launched a government-funded project called the Fifth Generation Computer Project to build AI supercomputers. They decided to use Prolog as the main programming language for the project. This project was very ambitious and eventually turned out to be ahead of its time.However, it hastened the worldwide adoption of Prolog and affected the evolution of logic programming for many years to come.


At a Glance: Old Languages Still Running the World

LanguageSBornWhere It Still RunsWhy It Endures
COBOL1959Banking, ATMs, government payroll, insurance$3 trillion in daily commerce depends on it. Replacement is too costly and risky.
FORTRAN1957NASA, climate models, weather forecasting, physicsFastest language for numerical computation. No modern language matches it in HPC.
Assembly1947Kernels, firmware, embedded chips, cryptographyDirect hardware control is impossible in any higher-level language.
LISP1958AI research, Grammarly, Amazon, Boeing, EmacsUnmatched for symbolic reasoning and AI prototyping. Invented modern programming concepts.
Erlang1986WhatsApp, Discord, Ericsson 5G, Cisco, RabbitMQFault-tolerant concurrency at scale that no modern language replicates as naturally.
Ada1980Aircraft avionics, military systems, metro railCompiles out entire classes of runtime errors. Safety-critical systems demand it.
Prolog1972IBM Watson, NLP pipelines, expert systems, AI researchDeclarative logic reasoning has no equal for certain AI and rule-based problems.


What This Tells Us

The story that old programming languages are going extinct is not only false but at the very least it is deeply misleading. Why? Technological stratification is really what is going on: the present, trendy languages such as Python, JavaScript, and Rust are mainly entrusted with the development of user-facing applications whereas the old languages do their work silently, supporting the infrastructure.

COBOL handles your transactions. FORTRAN is the tool of climate forecasting. Assembly language is the one operating at the chip level in your phone. LISP is the one thinking your grammar corrections through. Erlang is the transport mechanism for your messages. Ada is the one spotting problems and keeping your flight in the air. Prolog is the one reasoning through and assisting you with expert systems you use every day.

There were a number of reasons why this did not happen that the languages were replaced due to their being old. For the very nature of the problems they were initially made to solve, these languages have stood the test of time because nothing can do it better yet. That is not legacy. It is simply engineering excellence that has survived the era that has produced it.

The very next time someone says a programming language is dead, ask them: dead to whom? The banks, the space agencies, the aircraft manufacturers, and the telecom networks of the world would have a completely different answer.

Enjoyed this post?

Get notified when I publish next.

No spam — only new posts on networking, security, DevOps and infrastructure.

Comments

Leave a comment