5 Programming Languages That Refuse to Die

Not all programming languages will stay relevant forever. As technologies evolve, and companies ask developers to rewrite mountains of legacy code, some languages will inevitably see their “base” erode. But “lesser usage” isn’t the same thing as annihilation. In that spirit, let’s examine five programming languages that, despite a shrinking user base, probably won’t disappear for a decade or two—if ever.

Or to put it another way, in the spirit of October: The Walking Dead ain’t got nothing on these programming languages.

Objective-C

Make no mistake about it: Apple wants Objective-C dead. Although the language undergirded Apple’s development ecosystem for decades, the company has made an aggressive point of promoting Swift, its successor. With Swift gaining power and features with each new iteration (Swift 5 offered ABI stability, for example), Objective-C has seen its solely dedicated developers jumping ship.

When developers begin moving away from particular programming languages, you see stagnation in the amount and quality of documentation being produced, and Objective-C is no different. But there’s one big factor that will prevent Objective-C from disappearing entirely for quite some time to come.

Simply put, there is a ton of legacy Objective-C code out there. In many cases, companies will opt to maintain it, because outright replacement is an expensive and time-consuming proposition. When replacement does occur, it will often take several quarters, if not a few years, especially for mission-critical iOS and macOS apps.

So even as Apple encourages developers to embrace Swift and cross-platform app building, it will take years for Objective-C to dwindle away—and even then, given its current legacy code base, there’s every chance that pockets of usage will remain. It will end up being one of the more zombie-like programming languages.

FORTRAN

As with many programming languages, people have been breezily predicting FORTRAN’s demise for years. And to be fair, the language is 62 years old—unbelievably ancient by technology standards. However, it’s still very much in use by engineers and scientists, and (even more importantly) it’s evolving at a steady clip. If your work is mathematical and highly specialized, such as weather modeling or computational physics, chances are good you’ll encounter FORTRAN at some point.

R

Yes, in our ultra-popular “5 Languages That Are Probably Doomed” article, we wrote that R was slated for history’s dustbin of dead programming languages. And wow, did we ever get a response from some folks! Significant numbers of programmers still care very much about R, which is primarily used by academics and data scientists for data analytics.

In our previous analysis, we suggested that Python would eventually swallow R. To back that up, we pointed to analyses by TIOBE and other firms showing R’s usage among data scientists degrading, with an accompanying rise in Python uptake. But perhaps we were a bit overzealous; instead of stating that R’s decline would end in outright dissolution, maybe it’ll maintain a healthy following among certain data-science shops and academic institutions.

There’s certainly enough passion around R to justify the assumption that it’ll last. And given its role in data science, and data science’s increasingly prominent role at many companies, it’s one of those programming languages worth studying if you do anything data-related. 

COBOL

This is one entry on this programming-languages list that folks might have particular issue with. After all, COBOL is 60 years old, and famous for its use on mainframes. And when was the last time you saw a mainframe in an office?

But COBOL remains in use, even if its usage has dropped radically. For example, it’s still in use at many federal agencies, including the Department of Justice and the Department of Veterans Affairs (as of 2016). The Department of Homeland Security’s Immigration and Customs Enforcement (ICE) Hiring Tracking Systems, which as of three years ago were still running on a 2008 IBM z10 mainframe, are reportedly COBOL-based.

And it’s not just the federal government: financial institutions refuse to give up their legacy systems, at least some of which run on COBOL. Banks refuse to overhaul these systems, and as long as they do, there’s a need out there for COBOL programmers. In 2018, Morgan Stanley, JPMorgan, and Citi had at least two-dozen job openings that listed COBOL, according to eFinancialCareers

Given the widespread refusal to abandon legacy systems and the undead programming languages that go with them, it seems like pockets of COBOL will persist for some time—putting pressure on banks and federal agencies to find developers who actually know the language. That’s good for these highly specialized technologists, who can probably name their price when it comes to salaries and other benefits.

PHP

A few weeks ago, TIOBE predicted that PHP was in a death spiral of sorts. “Till the end of 2009 everything went fine, but soon after that PHP was going downhill from 10 percent to 5 percent market share in 2 years’ time. In 2014 it halved again to 2.5 percent,” the organization wrote in a note accompanying its September update of the most popular programming languages, which shows PHP falling from seventh to ninth place in the overall rankings.

TIOBE blamed the decline on security holes; others have pointed to Python as swallowing up an ever-greater portion of the same market for backend development. However, PHP has been around long enough—and big companies such as Facebook have invested in it heavily enough—that it seems unlikely to disappear completely anytime soon, even as its market-share declines.

36 Responses to “5 Programming Languages That Refuse to Die”

  1. It is really sad how new languages keep popping up, and older ones which are perfectly fine are dismissed as obsolete. The nerds and geeks refuse to lead normal lives and have nothing better to do but to keep reinventing the wheel. I get how Fortran and Cobol have become dead languages. After all, they are literally senior citizen languages. But stuff that has been around for 20 or 30 years is just fine. Most of the new technologies only marginally improve on existing technologies and exacerbate the hiring opportunities by creating too many combinations of skill sets among job seeking candidates. Recruiters have told me this! I believe in sticking with what has worked for decades. “If it ain’t broke, don’t fix it.” Better to spend your free time with your significant other or your family than attending classes or reading about some newfangled language that the nerds in your company decided that they have to use, or else the sky will fall.

    • (redacted)

      One thing that isn’t in there that should be is HTML. It’s practically a dead language since JavaScript, yet w3c still says it’s relevant. I guess it’s relevant enough for my son to be taking a high school course for it. I guess it is still going to be a long time before HTML truly becomes irrelevant.

      • Yeah, the thing is. Static HTML sites will always be relevant, and even when your writing JavaScript it’s just “modifying” the HTML displayed on the page. You still need an understanding of how HTML works, and it’s virtually impossible to describe a UI with just JavaScript alone.

      • Christopher Yoder

        @(redacted)

        Well, it is hard for HTML to be a dying programming language seeing as how it isn’t a programming language but a mark up one. After all, HTML stands for HyperText Markup Language. Also, you can’t, and will never be able to, develop a website without HTML. After all, when you use things like .createElement() or .appendChild() in Javascript what do you think the browser compiles that Javascript down to in order to render it? HTML.

        All in all, methinks you don’t actually know what you are talking about.

      • HTML is not a programming language. It’s a “mark-up language” used for defining the structure of the content of web pages, it is literally the foundation of what makes websites, well, websites. The main purpose of Javascript is to manipulate HTML (and CSS) based on user input or events (such as hovering, clicking, timeouts, etc..). So without HTML, there would be no point of Javascript.
        HTML – defines your content structure (headings, paragraphs, lists, sections, etc..)
        CSS – makes your content look pretty (fonts, colors, positioning, etc…)
        Javascript – Makes your content respond to events and change accordingly.

    • So what you’re saying is that it’s stupid to improve on what has already been made. That’s idiotic, and you know as well as I do that without progress, we get nowhere. That’s like saying you shouldn’t learn Spanish if you already know English. Heck, it’s like saying that inventing your own language is stupid. Improvement is good.

    • These companies have no choice but to update to new tech. If you have significant Assembly, cobol, or Fortran applications. Chances are that most of your devs are in their late 50s or 60s. So you have 2 choices. 1. Replace the tech with something modern. Or 2. Hire and train a bunch of younger devs who don’t want to learn those techs and pay them significantly more money.

    • The two languages listed which I’ve used, php and R, have serious shortcomings. Years ago when I was learning and using them, I wondered how they every became popular. Seeing them on the dieing list to me is seeing a strange situation reverting to normalcy.

      • Depends on what you are using them for. I’ve used both R and Python for data analytics. R is more flexible than python for data analysis and you can usually accomplish the same analysis in fewer lines of code in R, than in Python. Furthermore, the open source community for R is amazing. Anytime I want to do some cutting edge or esoteric data analysis, there is always a professor somewhere in the world that has written their own R code to do it. I would say R is more geared toward statisticians, academics and research while Python (being a little more user friendly) is more geared towards engineers and data scientists. Python is also far more versatile in terms of non-data analysis tasks. You can’t control a servo in a robot arm using R, but you can in Python. However, R was only ever meant for data analysis.

    • Ranjan Pathania

      Hi
      While I agree with Nuke’s point on so many languages popping up with small variations. Yes, it is making our life crazy but the key take away I have is that now applications are more integrated and runs in parallel. For example, SalesForce can call Zuora(Billing) in their framework, user don’t have to log in to Zuora separately. Databases grew from Mainfram->Distributed->MPP and now Hadoop(BigData). Half rack MPP was easily into half a million $ but the same capacity you can build on on-prem cloud or AWS for far less amount with less overhead.

      Progression is good and this is the nature of invention. Not all invention gets into the mainstream.

      Good luck learning……

    • I am one of those COBOL programmers and I don’t feel that it is dead. Majority of financial applications, banking, credit card, insurance continue to use it because of the large amounts of data they process on a daily basis. And as said, they still work great, so why put out the huge cost to rewrite. Don’t throw us OLD folks out the pasture yet…

  2. These companies have no choice but to update to new tech. If you have significant Assembly, cobol, or Fortran applications. Chances are that most of your devs are in their late 50s or 60s. So you have 2 choices. 1. Replace the tech with something modern. Or 2. Hire and train a bunch of younger devs who don’t want to learn those techs and pay them significantly more money.

  3. Tom Mariner

    The fact that these “newer” languages offer something new other than placement of a semicolon or the character to designate a comment is laughable.

    I started in programming when a line of code was holes punched into an 80 column card. It took 100,000 of them read in every time we changed the operating system for the nation’s first on-line banking system.

    Every one of these “lines of code” could just as easily be punched into a paper card! Give us a more effective way of putting our ideas into computing devices. Or keep crowing that YOUR “language” is different — no really!

    • Amen Brother! I have to laugh at these “new languages” which offer nothing really new except for a change of syntax. Some of them even seem to forget the mistakes of the past by offering features from legacy and long dead (for good reason) languages like VB6 and touting them as “improvements”. Anyone who has been in this industry long enough to remember “option strict” knows that things like dynamic/inferred typing and optional variable declaration can cause major problems for large scale systems. Yet some of these new languages tout these as new “features” designed to save you time coding!!! Well…. not if you count how long you spend finding and fixing all of the ridiculous run time bugs associated with typos in some other programmer’s code…

    • Johnny C

      I hear ya’ my first system was an IBM 360 mod 40, punch card storage, Fed through a IBM 1056 teleprocessor. If a card jammed, yeah, it happened a lot, start over, try to make a new card on an IBM 529 card punch, my company used this system through the 80’s. Payroll was always done on 3rd shift.

    • You missed out: “whose server-side programming language we know” – this means their dataset only includes the websites of which they KNOW what the backend language is (which makes sense…)

      That probably excludes most of the internet 🙂

  4. You totally forgot about Assembler old school IBM system/360 and 370 Assembler at our site it is much in use and even new programs sometimes get written in it not sure who is going to maintain it in future as it is totally different from Assembly.

  5. Johnny C

    I just retired a year ago, I was an avid Ada programmer for 15 plus years, I was a defense contractor, primarily working for the USAF. I actually enjoyed working with Ada, mostly because if I had to change data for test purposes, I could do it simply & cleanly, without having to re create the world. For a short time I coded extensively in C & C++ in a secure environment with UAV’s. I began my engineering career using FORTRAN, in the late 70’s, we were told FORTRAN would not be around after 1985. They were wrong.

  6. Kirk Augustin

    The article confuses stand alone programming languages with interpreted scripting languages. For example, PHP and Python are NOT at all programming languages, and are just used for little scripts on in house machines where you can guarantee the interpreter has been installed.
    Popularity should not be the criteria. A language like Fortran should be evaluated from the fact it is the smallest, fastest, and easiest multi process memory sharing language. Therefore it should still be used. While modern proprietary attempts to control a market, like Swift, should not be used if at all possible.

  7. Kirk Augustin

    I have to agree with Arnor Baldvinsson. PHP is likely the single most common sever side scripting language currently in use, so it is wrong to say it is dead. It is just hidden inside the frameworks people are using, so they do not realize they are creating PHP code. About 80 to 90 % of all server side web script is PHP. It is the only official server side scripting language. The fact you can use Python is not relevant. You can also use C++ if you want. The fact is PHP is probably the easiest and most common.

  8. Victoria Valdez

    We forgot about RPG language use primary in the AS400 or IBM iSeries system. This language start at list from the 60’s and use in IBM 360 and System 3. Regardless many prediction about the future of RPG, the language continue to evolve and adapt to business need. They are a lot of applications written in RPG and they actually in current use.

    • OLD_CURMUDGEON

      Actually, RPG started in the early 1960s with the I-B-M 1401 “mainframe” computer. There were 3 alternate languages for the 1401: RPG, AUTOCODER & one other which I fail to remember. But, I certainly DO remember flipping banks of switches on the console; I certainly DO remember punching 80-column H-cards on the “029 Key Punch console (desk); and I certainly DO remember bringing the “source” deck to the Collator, to create the “object” deck, and waiting to run the program to get a printout on the I-B-M 1403 printer! I also remember doing EXACTLY the same process for FORTRAN IV on the I-B-M 1130 mainframe @ HOSTRA U. in the late 1960s. And, now, I spend my day writing LADDER logic programs for PLCs, which is MORE fun than all the other languages combined!!

  9. David Bolton

    One thing that keeps PHP going is the quantity and quality of open source packages. WordPress being the most notable. It was the easiest and quickest way to write server-side code. Take a look at https://www.softaculous.com/software/ to see how many PHP packages are there. It was a few hundred.

    I agree that PHP has seen better days but recent versions since 7.0 are much faster and the language is improving. I wouldn’t write it off just yet. The best thing that ever happened to it was being included in hosting companies LAMP.

  10. LOL! PHP is NOT dying. It’s the 8th most used technology out there, according to Stack Overflow’s developer survey for 2019. In regards to languages it’s 6th (technologies being a wide enough word to include SQL and HTML/CSS).

    If there was anything inherently wrong with PHP, it wouldn’t be used by incredibly popular websites. Facebook runs PHP (with their own improvements in the form of Hiphop, of course).

    Give me a break with this garbage.

  11. Xbase family, particular Microsoft Visual FoxPro 9 SP2 (VFP) is still big all over the world!
    It does the job! These days many VFP applications combined with SQL Server.
    SAP came up with utility to password protect native dbf files and expand the table limit over 2 GB.
    Shame to Microsoft for stopping this legendary programming OOP language in 2015!
    Some other smart giant should take it over and keep up with the next versions!