为什么没人会 COBOL 编程了?

2020 年 5 月 13 日 CSDN

忘了Python,来学习COBOL,人人都可以成为救世英雄

作者 | Rhea Moutafis
译者 | 弯月,责编 | 郭芮
头图 | CSDN 下载自视觉中国
出品 | CSDN(ID:CSDNnews)

以下为译文:

市场上最古老的编程语言是哪个?Python已有三十多年了。C也快五十岁了。Fortran已六十岁了。却仍在使用中!
另外还有一种广泛使用的计算机语言活化石,你可能从未听说过,那就是已六十岁高龄的COBOL。
COBOL是金融财务方面的编程语言,80%的个人交易和95%的自动提款机使用的都是这种编程语言。如今,仍有超过2000亿行COBOL代码正在使用中,而且都需要维护。
现如今这个需求愈发强烈了。随着美国失业救济申请人数的不断攀升,古老的COBOL社会保障体系出现了超负荷运转。因此,美国政府正在全力招聘COBOL程序员。
因此,如果你想获取高薪,同时还想帮助身处这场疫情中的人民,那么COBOL就是你的理想之选。

为什么没人会COBOL编程了?

首先,因为COBOL面向的是商业人士,而非程序员。其设计初衷是让不懂代码的商人也能理解代码逻辑。这就意味着代码背后的程序员只有靠边站了。
COBOL的语法有很多怪异之处,虽然方便商业人士的理解,但对于顽固的技术宅男而言并非福音。例如COBOL没有任何函数或子例程,但它有部(division)、小节、段落和语句的概念。因此,1970年代的系统编程先驱们对之深恶痛绝:

“使用COBOL会削弱思想,所有教授COBOL编程的行为都应被视为刑事犯罪。”
—— Edsger W. Dijkstra
但当时为时已晚。银行和官僚机构的核心代码已构建完成。

为什么COBOL仍然无处不在?

由于COBOL奇特的结构,你可能会认为它的创建者可能根本不懂得计算机代码是什么。然而,事实并非如此。Grace Hopper是一名具有传奇色彩的计算机天才,正是她创建了这门编程语言。(她是最早的女性程序员之一,美军第一个获得准将头衔的女性,甚至连美国海军驱逐舰霍珀号驱逐舰都是以她命名的)。
与五十年代的编程语言相比,COBOL是一场革命。COBOL不仅易于使用和理解、可移植、独立于机器,而且还能适应各种变化。而获得所有这一切,仅需付出很小的代价。这是一门来自未来的语言。
因此,COBOL被广泛使用,无处不在:银行、保险、联邦政府机构等等。到1970年,几乎所有系统都是用COBOL编写的。
很荒谬的是,新兴语言的出现(例如Fortran等)都巩固了COBOL的传统。80年代,商用计算机语言宣告灭绝,而且这种趋势发展得如此之快,以至于新手程序员甚至都没有注意到。因此,尽管很多老程序员依然在维护现有代码,但没有足够的程序员将其转换为更新的语言。
到2020年的时候,尽管这些老程序员付出了巨大的艰辛,将联邦系统维护得坚如磐石,但没有人预料到这一年里COBOL的需求出现了激增。突然之间,我们需要大量COBOL程序员才能应对这场危机。

需求比天高

“全美的许多劳工部仍在使用COBOL系统。众所周知,这是一种非常非常古老的技术。[…]我们的劳工部已经意识到这是一个问题,因此已开始进行现代化改造。然而,不幸的是,这个过程需要时间。受此次疫情的影响,他们不得不停止向更强大功能系统的过渡。因此,他们仍然在使用非常古老的系统。” 
—— 堪萨斯州州长 Laura Kelly
随着疫情期间美国失业率高涨,几个州的州长争先恐后地寻求帮助。一时之间,他们需要增加大量人手才能实现现代化的系统(通常这需要花费数年时间才能完成)。突然,一切都失去了控制。
新泽西州州长甚至出现在电视上。IBM一直在呼吁COBOL程序员提供帮助,但是寻找这方面的人才依然非常困难。
如今,懂得COBOL编程的人千金难求。

虽然不够好,但值得一试

COBOL并不是炙手可热的新编程语言。甚至都不如Python那般令我爱恨交加。也不是热门的数据科学或人工智能编程语言。
如果你选择使用COBOL,则可能需要进行维护工作。你需要学习数十年前的业务逻辑,而不是开发先进的算法。你会感觉进入了计算机科学的石器时代,这项技术看起来仍然像是为穿孔卡片设计的。
但是,危难之际,我们必须挺身而出。数百万人已失业。虽然许多州已解禁,但经济反弹的可能性不大。
这意味着我们还会看到几百万人失业陆续失业。许多人需要获得国家的补贴才能渡过难关。有人甚至打了几百次电话申请补贴,他们真的很绝望。
因此,我们都应该挺身而出。虽然COBOL不够好,但在如今这种局势下,我们只有互帮互助,共度难关!从这个意义上来说:祝大家编程快乐!
原文:https://towardsdatascience.com/forget-about-python-learn-cobol-and-become-a-crisis-hero-7f15e75ff377
本文为 CSDN 翻译,转载请注明来源出处。

更多精彩推荐

☞强烈推荐 16 款 IDEA 插件,让你的开发速度飞起来 | 原力计划

Go 远超 Python,机器学习人才极度稀缺,全球 16,655 位程序员告诉你这些真相!

你现在从事的程序员还有多久会消失?牛津大学研究员帮你算了算

一次对语音技术的彻底批判

后端程序员必备:书写高质量SQL的30条建议

到底是哪些人在玩链游?| 《区块链游戏玩家研究报告》

你点的每个“在看”,我都认真当成了喜欢
登录查看更多
0

相关内容

【实用书】Python技术手册,第三版767页pdf
专知会员服务
234+阅读 · 2020年5月21日
【干货书】R语言书: 编程和统计的第一课程,
专知会员服务
111+阅读 · 2020年5月9日
《代码整洁之道》:5大基本要点
专知会员服务
49+阅读 · 2020年3月3日
【书籍推荐】简洁的Python编程(Clean Python),附274页pdf
专知会员服务
179+阅读 · 2020年1月1日
Python数据可视化2018:为什么这么多的库?
Python程序员
4+阅读 · 2019年1月2日
各编程领域最好的入门书籍
程序猿
27+阅读 · 2018年7月29日
Python为啥这么牛?
Python程序员
3+阅读 · 2018年3月30日
为什么你应该学 Python ?
计算机与网络安全
4+阅读 · 2018年3月24日
为什么 Python 更适合做 AI/机器学习?
计算机与网络安全
10+阅读 · 2018年3月18日
用于数学的 10 个优秀编程语言
算法与数据结构
13+阅读 · 2018年1月5日
观点 | 为什么我对MATLAB情有独钟
机器之心
5+阅读 · 2017年12月4日
十五条有用的Golang编程经验
CSDN大数据
5+阅读 · 2017年8月7日
我们为什么需要一个时序数据库?
大数据杂谈
3+阅读 · 2017年7月6日
Arxiv
11+阅读 · 2018年5月13日
Arxiv
4+阅读 · 2018年5月10日
Arxiv
6+阅读 · 2018年2月26日
VIP会员
相关资讯
Python数据可视化2018:为什么这么多的库?
Python程序员
4+阅读 · 2019年1月2日
各编程领域最好的入门书籍
程序猿
27+阅读 · 2018年7月29日
Python为啥这么牛?
Python程序员
3+阅读 · 2018年3月30日
为什么你应该学 Python ?
计算机与网络安全
4+阅读 · 2018年3月24日
为什么 Python 更适合做 AI/机器学习?
计算机与网络安全
10+阅读 · 2018年3月18日
用于数学的 10 个优秀编程语言
算法与数据结构
13+阅读 · 2018年1月5日
观点 | 为什么我对MATLAB情有独钟
机器之心
5+阅读 · 2017年12月4日
十五条有用的Golang编程经验
CSDN大数据
5+阅读 · 2017年8月7日
我们为什么需要一个时序数据库?
大数据杂谈
3+阅读 · 2017年7月6日
Top
微信扫码咨询专知VIP会员