TE
TechEcho
Home24h TopNewestBestAskShowJobs
GitHubTwitter
Home

TechEcho

A tech news platform built with Next.js, providing global tech news and discussions.

GitHubTwitter

Home

HomeNewestBestAskShowJobs

Resources

HackerNews APIOriginal HackerNewsNext.js

© 2025 TechEcho. All rights reserved.

Cobol Still Powers the Global Economy

256 pointsby psim1almost 6 years ago

28 comments

hermitdevalmost 6 years ago
One of my last jobs as an intern in 2004 was to rewrite an old batch process COBOL app in C# and ASP.Net. App was basically input about 6 fields, and based up some rules. It really wasn&#x27;t terribly complicated, but I had to read the source to understand exactly what it did. It was also my real exposure to COBOL. Took me a while to realize that around 60 printed pages of the 80ish page program was nothing but hard coded data tables and rules, when this, then that, etc. Once I realized that, it was a few simple regexs to pull that and transform to xml (was early 2000s...).<p>While decyphering the remaining logic, I discovered what I think is the most evil programming construct I&#x27;ve so far seen; think goto is bad? Meet MOVE NEXT SENTENCE. COBOL is traditionally written in all uppercase (and historically EBCIDIC). So what does &quot;MOVE NEXT SENTENCE&quot; do? It&#x27;s an unconditional jump to the next period, that&#x27;s right &#x27;.&#x27;. Thats right, in a language where everything looks like it&#x27;s yelling at you, you have to find a little tiny period to find where execution resumes. No labels, just a tiny couple of pixel round period. Fun...
评论 #20456485 未加载
评论 #20456842 未加载
评论 #20457583 未加载
评论 #20457191 未加载
评论 #20455268 未加载
评论 #20457214 未加载
aksssalmost 6 years ago
I worked on Y2K remediation fixing COBOL programs I&#x27;d never seen before at a large oil company. It&#x27;s an easy-to-understand language by design. The complexity of dealing with the apps&#x2F;jobs wasn&#x27;t the code or the impact analysis, but just the volume of work -- the endless test cases. The nice thing about those systems was that because they were financial apps, success was pretty black or white. Either things balanced and agreed with production or didn&#x27;t. But sooo many green bar reports. Killed many green bar trees in &#x27;98. My theory is that if you like programming, preferences aside, you&#x27;ll appreciate the beauty in any language, COBOL&#x27;s no exception once you grok it. May not be sexy but I&#x27;ve seen sexier languages come and go in 20+ years.
dlivingstonalmost 6 years ago
&gt; “I think there is a misconception about [COBOL]. A misunderstanding about it as far as it being old. Usually in technology we think because it is old it is irrelevant,” he said. “But it’s still the fastest processing language out there.”<p>I thought this comment was born from naivety or bias, but after reading up on it a little further, it appears that it&#x27;s true or close to true for many cases.
评论 #20454871 未加载
评论 #20454755 未加载
评论 #20455092 未加载
orphelinealmost 6 years ago
My first gig out of college was maintaining Cobol at a bank for two years. Some of the programs were 20+ years old, and we made changes monthly - it always seemed like a fantastic rate of churn.<p>If something went wrong during a deployment, heaven help you. One time a pair of transposed digits got through testing and code reviews and into deployment. My colleague spotted it and called the management center to hold jobs... Thirty seconds too late.<p>It took four days to back everything out.
评论 #20457733 未加载
评论 #20458316 未加载
aetherspawnalmost 6 years ago
At my last job they had a custom variant of COBOL and hey I don’t know why everyone is playing it down. It was beautiful. You could make a full GUI form with full validations in like only a few lines of code.<p>Like a whole tax form is how you’d do a Hello world.<p>And then we ported the runtime to render web pages over a web socket and that’s when things got really interesting. 20+ MLOC of legacy apps rendering directly to the web.<p>It’s such a flexible language and I absolutely enjoyed working on the run time and the other guys in the company really enjoyed writing in it.
segmondyalmost 6 years ago
Cobol is mostly likely around because no one knows exactly what the code does. Missing design documents &amp; decisions don&#x27;t help either. Companies making money are risk adverse, they won&#x27;t risk killing their golden goose over a rewrite, it&#x27;s often companies that are not making money that go on massive rewrites believing that new tech will give them the Midas touch towards profit.
评论 #20455178 未加载
评论 #20455060 未加载
评论 #20456657 未加载
codr7almost 6 years ago
I once had a boss who was an old Cobol Cowboy, he walked me through a financial system that&#x27;s still in use.<p>I can&#x27;t help but feel that even back in the days, they would have been better served by Pascal with fix point math. The only convenient features I could spot were related to working with records in files, and Pascal has that covered.<p>Their Cobol implementation sort of, kind of supported subroutines but they were such a pain in the ass that code was usually copy-pasted instead.<p>The only thing about Cobol that I just can&#x27;t stand so far is the optional filler &quot;keywords&quot; that allows code to look sort of, kind of like natural language. That&#x27;s just wrong.
评论 #20457173 未加载
donkeydalmost 6 years ago
I had an assignment at the Dutch Tax Service and was surprised to learn that they were still actively developing new software in COBOL. The reason, I was told, was that they had many COBOL developers and not as many that were experienced in other languages. Most of these people, however will start their pensions in a couple of years, so they&#x27;ll have nobody to maintain this stuff.
评论 #20457624 未加载
评论 #20457872 未加载
fc_barnesalmost 6 years ago
My understanding is that part of COBOL&#x27;s longevity stems from its particular handling of fixed-point math being a specified requirement of various financial contracts. Odd to see this write-up not mention fixed-point math, actually.
评论 #20455004 未加载
评论 #20454805 未加载
评论 #20454843 未加载
评论 #20454785 未加载
评论 #20454874 未加载
tomlockwoodalmost 6 years ago
&gt; Some banks have spent hundreds of millions of dollars and several years migrating systems.<p>The commonwealth bank in Australia, one of the biggest four banks in the country, spent AUD$1B migrating away from COBOL.<p><a href="https:&#x2F;&#x2F;increment.com&#x2F;programming-languages&#x2F;cobol-all-the-way-down&#x2F;" rel="nofollow">https:&#x2F;&#x2F;increment.com&#x2F;programming-languages&#x2F;cobol-all-the-wa...</a>
评论 #20455078 未加载
ajxsalmost 6 years ago
I&#x27;m a bit young to have had any contact with COBOL, but I&#x27;ve worked in financial institutions implementing mission-critical code handling customer transactions in other languages. The first thing that springs to mind to ask is, what kind of features does COBOL offer to make these processes safer and less bug-prone? At least 75% of the code and associated reams of unit testing I&#x27;ve seen written in these applications is to deal with weird input and edge-cases. Is there anything specific about COBOL that is especially suited for dealing with this kind of task? I&#x27;ve never seen anything written about static analysis or formal modelling either. Is the compiler especially attuned to catching potential errors? Is there implicit run-time bounds checking and analysis like in Ada et al?
评论 #20456364 未加载
评论 #20456416 未加载
apaprockialmost 6 years ago
I was curious if anyone has published a decent chunk of “modern” COBOL since articles and stories never really link to large working systems. It turns out Walmart has! Enjoy: <a href="https:&#x2F;&#x2F;github.com&#x2F;walmartlabs&#x2F;zFAM&#x2F;blob&#x2F;master&#x2F;Source&#x2F;ZFAM007.cbl" rel="nofollow">https:&#x2F;&#x2F;github.com&#x2F;walmartlabs&#x2F;zFAM&#x2F;blob&#x2F;master&#x2F;Source&#x2F;ZFAM0...</a>
评论 #20456442 未加载
_glassalmost 6 years ago
My day job is writing German COBOL, i.e. ABAP. The language changed a lot and is quite usable, except they don&#x27;t have namespaces. But the worst is all of the cruft that accumulated. Not just of legacy code, but also in the language itself. So many different paradigms, old frameworks, everything is still working. On the other hand it is very high level for the job to be done. SQL can be directly embedded and there is a syntax check. There are a lot of integrated tools that are heaven and hell in the same time. The database migrations are so easy, but source code management, deployment is hell.
zeotrophalmost 6 years ago
Looking at the absurdly long code required to make factorials work makes you wonder what conveniences we are all used to without really appreciating them. And which ones will future programmers take for granted but are too niche now - maybe async&#x2F;await or the borrow checker concepts, or is programming mostly &quot;done&quot;?<p><a href="http:&#x2F;&#x2F;rosettacode.org&#x2F;wiki&#x2F;Factorial#COBOL" rel="nofollow">http:&#x2F;&#x2F;rosettacode.org&#x2F;wiki&#x2F;Factorial#COBOL</a><p>or also <a href="http:&#x2F;&#x2F;rosettacode.org&#x2F;wiki&#x2F;FizzBuzz#COBOL" rel="nofollow">http:&#x2F;&#x2F;rosettacode.org&#x2F;wiki&#x2F;FizzBuzz#COBOL</a><p>Is there a code example where Cobol shines in comparison to, say, Python?
评论 #20454957 未加载
评论 #20456868 未加载
os7bornealmost 6 years ago
3 years ago I learned that large insurance companies in India still use COBOL. That fact blew my mind. This fact (Estimates as high as 80% of financial transactions use... COBOL) further blows my mind as I thought only Indian financial institutions are rigid. Clearly not.
评论 #20457243 未加载
评论 #20457463 未加载
评论 #20457292 未加载
anotherevanalmost 6 years ago
If your company is looking for training materials for COBOL or other mainframe technology, it might be worth taking a look at Interskill.<p><a href="https:&#x2F;&#x2F;interskill.com&#x2F;" rel="nofollow">https:&#x2F;&#x2F;interskill.com&#x2F;</a> or <a href="https:&#x2F;&#x2F;interskill.co.uk&#x2F;" rel="nofollow">https:&#x2F;&#x2F;interskill.co.uk&#x2F;</a><p>Disclosure: I work for them.
seventhtigeralmost 6 years ago
I&#x27;ve heard this sentiment about Cobol often. As someone who has never seen Cobol or used it, how hard would it be for me to specialize in Cobol maintenance and porting? Is it really as impenetrable as it seems, requiring years of experience, or can someone like me work through a few books and get on it?<p>With this kind of thing you never know when organizations move away from the technology en masse and it would be great to be in it at the time.
评论 #20458198 未加载
RickJWagneralmost 6 years ago
My first programming job (29 years ago!) was a COBOL gig. I worked for a company that wrote banking software, most of it COBOL and a little Assembler.<p>It all ran on IBM mainframes (the size of a small car) surrounded by disks and controllers the size of refridgerators. All the hardware was kept in a glassed-in room with white-tiled raised floor. Most of the coding was done on dumb terminals, but a few applications still had punch cards.<p>Ah, the memories. Long live COBOL.
davalmost 6 years ago
From what I understood when I worked at LiveNation, every time you buy a ticket from Ticketmaster the transaction flows through some ancient spaghetti COBOL, probably running in Phoenix.
jason_slackalmost 6 years ago
I <i>really</i> want to get a job writing COBOL. However, nobody will give me a chance at it. I recently applied for a few jobs in my area but they wanted 10+ years of COBOL so I was turned down. I learned in college (however would need to re-learn) and I really enjoyed it. I also enjoy financials and data.<p>If anyone has any thoughts I&#x27;d appreciate it. I&#x27;m currently writing c++ software for making robots work, plus I have financial industry experience.
Alohaalmost 6 years ago
I&#x27;ve had a limited exposure to COBOL and I consider it quite elegant for the problems it&#x27;s trying to solve, particularly for column oriented transactional data processing, I found it interesting that on System Z, all of the IO, is done in the JCL that you use to start the program, not in the program itself.
评论 #20458373 未加载
dejaimealmost 6 years ago
I hate how the title says &quot;powers the global economy&quot; when it should be &quot;powers banking systems&quot;. I spend a lot of money on many things, my smartphone, gsuite, slack, Netflix, Amazon, Dropbox, games, tools, hardware, and I would guess most of that stuff never touched Cobol. Meanwhile I pay 1usd monthly for my bank (which, btw already migrated). So saying it &quot;powers the global economy&quot; is definitely a bit of a stretch.<p>I am sure there&#x27;s a lot of it running still, mission critical stuff, also that there are still a few teams creating new projects with it. So it is not dead by this definition. But if I&#x27;m honest, I can&#x27;t name one single language that is.
评论 #20459124 未加载
评论 #20458622 未加载
评论 #20458596 未加载
sys_64738almost 6 years ago
I used COBOL when it was cool back in the 80s!
评论 #20455859 未加载
mushufasaalmost 6 years ago
<a href="https:&#x2F;&#x2F;wordsandbuttons.online&#x2F;if_i_were_to_invent_a_programming_language_for_the_21st_century.html" rel="nofollow">https:&#x2F;&#x2F;wordsandbuttons.online&#x2F;if_i_were_to_invent_a_program...</a>
davidwalmost 6 years ago
The term from economics that describes the situation well is &quot;switching costs&quot;. They&#x27;re very high in this case, as comments regarding banks migrating away indicate.<p>This book is a great overview of the economics of these kinds of situations:<p><a href="https:&#x2F;&#x2F;en.wikipedia.org&#x2F;wiki&#x2F;Information_Rules" rel="nofollow">https:&#x2F;&#x2F;en.wikipedia.org&#x2F;wiki&#x2F;Information_Rules</a>
_bxg1almost 6 years ago
They still run it on actual mainframes? Wouldn&#x27;t an emulator running on a modern machine be many times faster?
评论 #20457729 未加载
评论 #20456326 未加载
xxxpupugoalmost 6 years ago
...because people aren&#x27;t willing to change it.<p>That doesn&#x27;t make Cobol sounds less like a fossil in any way. It will be go away eventually.
beigeoakalmost 6 years ago
What an incredible website<p>The audio version has the quotes in the voice of the original speakers (probably because this is a radio).<p>There is an interactive timeline custom made for the content of the article.<p>Other audio logs can be accessed super easily via the drop down menu.<p>Incredible stuff.