From mboxrd@z Thu Jan 1 00:00:00 1970 From: crossd at gmail.com (Dan Cross) Date: Mon, 13 Apr 2020 13:59:22 -0400 Subject: [COFF] COBOL. Message-ID: So I imagine that most readers of this list have heard that a number of US states are actively looking for COBOL programmers. If you have not, the background is that, in the US, a number of unemployment insurance systems have mainframe backends running applications mostly written in COBOL. Due to the economic downturn as a result of COVID-19, these systems are being overwhelmed with unprecedented numbers of newly-unemployed people filing claims. The situation is so dire that the Governor of New Jersey mentioned it during a press conference. This has led to a number of articles in the popular press about this situation, some rather sensational: "60 year old programming language prevents people filing for unemployment!" E.g., https://www.cnn.com/2020/04/08/business/coronavirus-cobol-programmers-new-jersey-trnd/index.html On the other hand, some are rather more measured: https://spectrum.ieee.org/tech-talk/computing/software/cobol-programmers-answer-call-unemployment-benefits-systems I suspect the real problem is less "COBOL and mainframes" and more organizational along the lines of lack of investment in training, maintenance and modernization. I can't imagine that bureaucrats are particularly motivated to invest in technology that mostly "just works." But the news coverage has led to a predictable set of rebuttals from the mainframe faithful on places like Twitter; they point out that COBOL has been updated by recent standards in 2002 and 2014 and is being unfairly blamed for the present failures, which arguably have more to do with organizational issues than technology. However, the pendulum seems to have swung too far with their arguments in that they're now asserting that COBOL codebases are uniformly masterworks. I don't buy that. I find all of this interesting. I don't know COBOL, nor all that much about it, save for some generalities about its origin and Grace Hopper's involvement in its creation. However, in the last few days I've read up on it a bit and see very little to recommend it: the type and scoping rules are a mess, things like the 'ALTER' statement and the ability to cascade procedure invocations via the 'THRU' keyword seem like a recipe for spaghetti code, and while they added an object system in 2002, it doesn't seem to integrate with the rest of the language coherently and I don't see it doing anything that can't be done in any other OO language. And of course the syntax is abjectly horrible. All in all, it may not be the cause of the current problems, but I don't know why anyone would be much of a fan of it and unless you're already sitting on a mountain of COBOL code (which, in fairness, many organizations in government, insurance and finance are...) I wouldn't invest in it. I read an estimate somewhere that there are something like 380 billion lines of COBOL out there, and another 5 billion are written annually (mostly by body shops in the BRIC countries?). That's a lot of code; surely not all of it is good. So....What do folks think? Is COBOL being unfairly maligned simply due to age, or is it really a problem? How about continued reliance on IBM mainframes: strategic assets or mistakes? - Dan C. (PS: I did look up the specs for the IBM z15. It's an impressive machine, but without an existing mainframe investment, I wouldn't get one.) -------------- next part -------------- An HTML attachment was scrubbed... URL: