DEV Community

Bruce Axtens
Bruce Axtens

Posted on • Updated on

COBOL - not dead; not dying; not even idle

COBOL is still alive and kicking. There are still millions of lines of it running around the world. There is still a market for COBOL programmers. And there's a good, free, open-source compiler that anyone with a Windows, Mac or Linux machine can use.

See GnuCOBOL which is still being actively developed. For those of you who know what USENET is (not was!), there's still stuff happening on comp.lang.cobol.

Top comments (19)

Collapse
 
ahferroin7 profile image
Austin S. Hemmelgarn

A lot of people who say COBOL is dying are referring to the fact that it's insanely rare to see completely new software built from scratch in it for commercial usage.

Honestly, I see the exact same situation with COBOL that you typically see with a natural language dying out these days. There's essentially zero reason for young people to learn it, but there are a handful (comparatively) of people trying desperately to keep it alive.

Collapse
 
robefoster profile image
Rob Foster

There's no one "trying desperately" to keep COBOL alive. It "lives" for the most part because of the massive cost of re-engineering the systems currently written in COBOL - and the fact that there's absolutely no reason whatsoever to take that hit when things are perfectly fine as they are.

Collapse
 
ahferroin7 profile image
Austin S. Hemmelgarn

I'm not referring to the existing systems, I'm talking about the people doing new things with it and developing the language further than it's current state. Without those efforts, the language is effectively dead since the existing usage is functionally time-limited (those existing systems using it will be replaced eventually, because the hardware will have to be completely replaced some day).

Thread Thread
 
robefoster profile image
Rob Foster • Edited

Replacing system hardware doesn't mean having to replace applications software. A lot of COBOL systems that used to run on IBM and ICL mainframe environments now run on cloud systems. Take a look at what Fujitsu have to offer in this respect. Cheap, modern platform solutions without the MASSIVE expense of software re-engineering. Also, the language features ARE regularly updated to provide new features and functionality, while still being able to run the core legacy applications. New 'from scratch' projects are rare (outside of banking and finance, anyway) but development continues on existing systems, as it must.

Thread Thread
 
bugmagnet profile image
Bruce Axtens • Edited

Hmmm ... let's see, when was COBOL's last ISO standard released? Oh, 2014. Can't be doing anything new then, can it?

And there's a clue in its name. The "B". It stands for Business. So you're not going to see it being used to write word-processors, signal-processors or Google API back-ends.

Existing systems may be replaced eventually, @ahferroin7 , but you and I will both have died and turned to dust by then.

Collapse
 
boscobaby profile image
AKat • Edited

It's not "insanely rare to see completely new software built from scratch" in COBOL. At least not in banking and Wall Street. There is a shortage of experienced COBOL programmers to the point we have to hire offshore. My team is always writing new stuff in COBOL. It's stable and efficient and easy to maintain. The front end screens are written in Java but the meat and potatoes is all mainframe COBOL. ISO only does updates every 5 years or so, and there is expected to be a COBOL update in 2020.
techrepublic.com/google-amp/articl...

Collapse
 
anpos231 profile image
anpos231

Are you implying that I should drop JS development and become COBOL programmer?

Collapse
 
bugmagnet profile image
Bruce Axtens

No.

Collapse
 
bugmagnet profile image
Bruce Axtens

However, if you have room on your bow for an extra string, or you enjoy being a saviour for a company with a legacy system, or you're into the ancient and arcane and don't mind rotating slowly lazily stretched out in the warm summer sun on a leaf in an eddy in a backwater, then COBOL might just be for you.

300 reserved words makes for a very expressive and very readable (provided Engish is your first language or nearly so) experience. Granted, you have to get used to MOVE instead of = but even that has its advantages, e.g. MOVE CORRESPONDING

Collapse
 
g3nark0 profile image
Joel Rivera-Pintado

Good to know! I learned COBOL back and college and have some COBOL tools on my machine to dust off some knowledge. Considering to do some work on the side or if the pay is good do it full time when I get tired of the current!

Collapse
 
divakarraj profile image
Divakar Rajashekaran

The first language I ever learned, along with Fortran and Assembly.

Collapse
 
bugmagnet profile image
Bruce Axtens • Edited

Mine were 8080 assembler, MBASIC, COBOL, and dBase II. The fact that I could touch-type meant I had time to learn other stuff as well like Pascal, Fortran, Vax DCL and CBASIC. And I've been a language junkie ever since: I'm currently studying 9 languages on exercism.

Collapse
 
divakarraj profile image
Divakar Rajashekaran

Dbase 3+ and Pascal after, for me. Thanks for the site info, I use a bunch of online resource for recent programming, but I am more into data and my coding days are made minimal with current role. But I still dabble when I make an opportunity for it

Collapse
 
codingsam profile image
Coding Sam

It doesn't really appeal to me... But I actually wouldn't mind knowing that programming language. If not many people know it, you can take advantage of it and ask for a nice paycheck :)

Collapse
 
teodorgxg profile image
Teodor Gxg #GG33

Hi Bruce, I read your nice posts about COBOL. Can I ask if it is stupid/naive for a newbiew in programming to hope to learn COBOL in few months to be hired by big banks after?

Thanks!

Collapse
 
bugmagnet profile image
Bruce Axtens

Disclaimer 1: These are suggestions. This is not prescriptive advice. I expect you to do due diligence.

Disclaimer 2: While I have a lot of respect for COBOL and did learn it in a tertiary education environment, I have never been called upon to develop anything in it.

Suggestions:

  1. Drop into the comp.lang.cobol newsgroup in usenet. The best way of doing that these days is via groups.google.com. Once there, introduce yourself to some of the denizens, particularly Arnold Trembley, Pete Dashwood and Doc Dwarf. Let them know I sent you (which may, or may not, help) and ask their advice. As far as I am aware they are all very active COBOL programmers with decades of language and workplace experience between them. There's some interesting discussion going on in the topic 'Still think COBOL is dead (or should be!)' which may be instructive.
  2. Look up your local job sites and see what's going for COBOL programmers, e.g. Seek COBOL jobs and Indeed COBOL jobs. Get in touch with the companies that are hiring and ask what skills are required on top of COBOL. Get in touch with the employment agencies who specialise in finding COBOL programmers and ask them the same thing.

With all that under your belt, you'll be in a better place to make a decision. And you may well decide against COBOL.

Collapse
 
teodorgxg profile image
Teodor Gxg #GG33

Thanks a lot, Bruce for your time and patience to reply on my query!
Solid advises and definitely I will give a try to continue my research on this matter.

Much appreciated your thoughts on this.

Regards!

Teodor

Collapse
 
anpos231 profile image
anpos231

I am here mainly for the badass beard.

Collapse
 
justinkaffenberger profile image
JustinKaffenberger

This company even makes tools that let you run COBOL on a .NET runtime!