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 (20)
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.
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.
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).
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.
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.
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.
Are you implying that I should drop JS development and become COBOL programmer?
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
=but even that has its advantages, e.g. MOVE CORRESPONDING
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!
The first language I ever learned, along with Fortran and Assembly.
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.
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
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 :)
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?
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.
comp.lang.cobolnewsgroup 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.
With all that under your belt, you'll be in a better place to make a decision. And you may well decide against COBOL.
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.
I am here mainly for the badass beard.
This company even makes tools that let you run COBOL on a .NET runtime!