Banks Should Let Ancient Programming Language COBOL Die

I was taught to program in COBOL as well as PASCAL...

I started with APL, then FORTRAN and then COBOL. My first job out of school was working with COBOL on a Burroughs B1800 and ultimately converted it to work on Convergent technologies CTOS systems.
 
I did a JAD (Joint Application Design) session almost 20 years ago with one of the 4 big banks in Canada - the mandate was to do a sizing on replacing the bank's deposit system based on COBOL, Assembler and CICS transactions processors with a more current C-based system. The group of us included architects, designers, coders and analysts from everything encompasing online terminal replacement with PCs to backend batch systems (at the time all front end work was handed using 47xx financial dumb terminal equipment). At the end of the day the EVP for their Systems division got up in front of us to be presented with that bottom line. Our answer was for that one system (which did not include things like the hardware, credit, investment, insurance or trust systems) was on the order of $150M CA (about $110 US back then). That number in today's $ would be closer to 1/4 Billion CA$.

Needless to say that for the rest of the time I worked with that bank (about 8 years) no project was ever initiated to replace that bank's aging deposit system.
 
LOL, a continual complaint in many industries is about old shitty software. But the cost to replace it even with packaged software and apply customization is just not feasible. In one case after spending 20 million for consultants.
 
Hmmm, I know COBOL and Fortran, I wonder if there's a job opening ?

Yes, I'm that old.
 
I just retired from over 35 years in the banking industry. For Transaction processing (for ATM and POS devices), we used a specialized language called TAL. It means Transaction Application Language. Pascal-like - but one could drop into machine language if you knew how. The only place where we used COBOL was for Customer Service display screens. It was a requester / server based system. You wrote your requester in SCOBOL (Screen COBOL) and the servers were in regular COBOL and they used embedded SQL for database access. The company I started working at had 68% of the entire world's business (at one time) for banking-related software. We also used C # later on. Sorry, no Fortran or BASIC allowed. In being a part of a company that has a part of the Billions of transactions every year, I can honestly say that NO transaction was ever hacked. NEVER, not once! Bank accounts getting hacked? That's a different story. I'm talking about transactions in-flight. Never hacked and probably never will be.
 
doesn't demand create a market? Could any programming guru here tell me why people just aren't learning Cobol to meet the demands? Honestly asking, I don't know the deficiency in the system.

As an outsider all I see is a market that already exist that has a need. Is it possible to get the education and training to fill that need?
 
doesn't demand create a market? Could any programming guru here tell me why people just aren't learning Cobol to meet the demands? Honestly asking, I don't know the deficiency in the system.

As an outsider all I see is a market that already exist that has a need. Is it possible to get the education and training to fill that need?

Are there classes you can take to learn COBOL? Yes. Is it possible to get training? Yes. The question comes down to, why? Let's be honest. No one really goes to college to say they really want to work for the banking system. I'm not talking finance here (i.e. Wall Street), which is another animal altogether, as it offers very good salaries (much better than Google, Facebook, etc.)

I guess it's mostly similar to many blue collar jobs tradesmen. The jobs are there, but it's just not attractive.
 
I was taught to program in COBOL as well as PASCAL...

Did Pascal in high school in late 80's. My background was primarily C64 basic, but I had no problem picking it up. Years later I switched to C++ and it was like trying to learn French. I gave up at that point and focused on hardware!
 
Yeah I don't so much see an issue here.

COBOL may be old, but programming principles don't really change when you jump languages.

Sure, a newer, more modern language may have more bells and whistles, but the COBOL code has pretty well be battle tested by now.

I blame this article on kids being lazy and not wanting to learn anything besides the Java they were taught in school.
 
Eh, spend 15 minutes perusing cobol documentation, take existing cobol programs and modify them and done. Not brain surgery
 
I always found COBOL fairly straightforward and easy. Mind you I have no idea when it comes to these new whizzbang languages!
 
This is what I hate about our current economy.


Fine, it's dying. THEN TRAIN PEOPLE! When my sister graduated back when the economy was doing great, she got her degree in sociology, which is a wonderful useless degree that will get you nowhere in life. But she got a job as a programmer and her company paid for her to learn COBOL. Even when I graduated, companies were still willing to hire people who didn't meet the entire 22 things on their must haves, and were willing to train you on where you were lacking.

Today, companies are whining about how there just aren't enough people for those jobs, yet there are plenty of unemployed people out there looking for jobs, who are mostly qualified, but just not that perfect candidate. Why aren't companies willing to invest in their employees anymore? We're not talking about rocket science or brain surgery here. As others have mentioned above, for a person with a CS degree, learning a new language isn't exactly hard.

It's the same reason you've seen American Airlines shareholders complaining that the flight staff are getting raises. Profit is the only thing that matters, and labor is seen as a cost instead of an investment. The profit-first model of capitalism is broken.
 
About 2 years ago I worked for a private company that produced school district management software for the AS/400. Had to deal with COBOL and a little RPG. What I saw didn't seem terribly complex, but the version of COBOL we used was super old (even by COBOL standards). Current standards of COBOL are modern enough, it even supports object oriented programming now.
 
When I entered college in 1988, and was part of the CiS program, COBOL was the main thing we were taught.

Needless to say.... I never found a practical use for it in my life, but I bet if I could remember it all now, I could get a pretty nifty paying job.

Oh well.... ;)

Some of the IBM mainframe OS related languages had a sort of similarity to COBOL, COBOL handy in the financial segments or was but it is an old language.
One aspect I loved as a student is the early discipline it teaches for certain structure. screw that up in COBOL and you have 100s of compile errors to find the root one :)
Assembler was far from fun in comparison to learn, especially when one was made to create mathematical/science related programs with it for no better reason than the lecturers to torture the student (felt like that anyway lol), pig of a language that when you 1st start with has everyone cursing.
Cheers
 
Last edited:
  • Like
Reactions: Damar
like this
What languages you learn is a bit generational. I learned BASIC, then Visual BASIC, then along came DOOM and I was like, I must learn C. When I finally got to college it was JAVA, LISP and ASM, but by that time it was just learning new syntax and rolling my eyes at how verbose people were when writing code. I have done work with PASCAL, COBOL, Python, Ruby, R, C# and number proprietary languages that only exist within specific environments (nothing annoys me more than companies that develop their own scripting languages when better ones already exist). The hardest part of programming, in my world, is opening up someone else's code and trying to learn how they think. Just like reading a book, code is a reflection of the author's thought process. I have opened up source that I will stare out for hours just trying to figure out how it compiles, let alone runs because it seems to violate everything I know.
 
I'm in a financial company atm, and I know at least one person on my team in his 30s who knows COBOL. We've also got an entire COBOL team. Could the code be upgraded into something more "modern"? Maybe. But everything in the financial word is in COBOL. So, if you want your system to work with another system, COBOL is where you go to. Mix that with the fact that companies who pay for processing cycles on their leased mainframes - yes this is still a thing - and COBOL's efficiency, and you get a situation where COBOL is still preferred by many.

That isn't to say code isn't being re-written in more modern, easier-to-maintain languages, but merely that it is still preferred in many ways. Our new applications are written in more modern languages, but back-end processing is still heavily COBOL-based. We're certainly not panicking over this. It's a slow process to convert decades of code to modern languages, if that's even the plan within my org. Believe it or not, COBOL is still a maintained language that is receiving updates, thus there's no real rush to change things over beyond the supposed lack of developers. But if you can learn Java or C#, why can't you learn COBOL? My peers are.
 
COBOL programmers make $200K/year now
FORTRAN isn't far behind. Even here we have to maintain code that was first written in 1968

The problem is as code balloons, there are many hooks and spaghetti slap-ons to fix bugs and handle special request. Do you think ATMs were part of the first COBOL systems? What about electronic bill pay? What about e-check processing?

The old code base became so complex with so many features it became an all or nothing endeavor to convert the system. And many banks have tried and failed miserably far overshooting their design budget.

Trust me, I'm an expert in legacy code issues. When you are dealing with programs with 1/2 million lines+ of code, it just becomes impossible to give them the whole ball o wax. And the CEO and CTO, and COO's don't like a system that is only 1/2 of what they have that cost a fortune. It doesn't matter if the new system is cleaner, more efficient, with better security, and lower maintenance cost. They want the whole thing replaced.
 
there are other ways around that. one method is the service bus concept. You turn everything into a service and use an application to enable the communication between all the pieces. Then you upgrade the services as necessary. And yeah, it is way more complex than this, but it has been doable for many cases.
 
No wonder home prices are moving towards a $1 million average... it's all those COBOL programmers.

Actually most of the positions are in NYC (bank capital) and Deleware (Credit card capital). I will admit, there's a number of places in Cali though.
 
Hells bells.. I always hear of this mythological COBOL jobs and I would gladly look at 'em and even jump ship for the right amount. *sigh* Maybe next year.
 
Hells bells.. I always hear of this mythological COBOL jobs and I would gladly look at 'em and even jump ship for the right amount. *sigh* Maybe next year.

You pretty much have to sign on with contract agencies servicing banks. That's where I drew from for 20 years.
 
Aaaaaah.. so job by indirection. Gotcha. That would account for the tumble weeds blowing by when I go around looking for those who would like a more spry COBOL miner.
 
Back
Top