这门 64 岁却“无人问津”的语言:每天处理 3 万亿美元交易,全球大都在用它的代码

资讯 作者:CSDN 2023-12-08 20:32:48 阅读:60

编译 | 郑丽媛
出品 | CSDN(ID:CSDNnews)

有一种编程语言,全球大部分商业和金融系统都在用,每天要处理价值 3 万亿美元的交易,现在却只有很少开发者掌握——它就是 COBOL,一种已有 64 年历史的编程语言。

诞生于 20 世纪 50 年代的 COBOL,是一款面向商业应用的高级编程语言,而在经历软件开发高速发展的几十年中,它逐渐成为了“陈旧”、“古老”的代言词:COBOL 最初是面向商业人士而非程序员的,为了便于商人理解其代码逻辑,其语法有些,例如没有任何函数或子例程,但有小节、段落和语句的概念。

因此早在上世纪 70 年代,图灵奖获得者、最短路径算法的开发者 Edsger W. Dijkstra 就曾批判 COBOL 称:“使用 COBOL 会削弱思想,所有教授 COBOL 编程的行为都应被视为刑事犯罪!”

此后伴随着许多现代编程语言的出现,COBOL 逐渐被开发者遗忘,大多数学校也不再将其列入教学范围,而基于 COBOL 构建的各种银行、政府等核心系统早已广泛使用,因此它仍是当今全球最常用的大型机编程语言之一:根据 IJARSCT 数据统计,43% 的银行系统仍在使用 COBOL,每天处理的交易额高达 3 万亿美元,其中还包括美国 95% 的 ATM 交易和 80% 的信用卡交易。

数据证明,COBOL 虽然被人逐渐遗忘,但其重要性仍无法取代。

急缺精通 COBOL 的程序员

可尽管如此,今天也很少有人能提起兴趣去学习 COBOL 了:不仅编码繁琐,读起来像英文,编码格式不灵活,编译时间还远远长于同类产品。久而久之,专注从事 COBOL 编程的老一代程序员逐渐退休,而能处理和维护这些 COBOL 代码的年轻程序员则越来越少。

于是在 2020 年,这种潜在的隐患终于爆发了。

当时,美国受疫情影响迎来了失业潮,导致许多人申请失业救济。而美国新泽西州使用了 40 多年的失业保险系统是用 COBOL 编写的,面对突如其来的几十万份申请,这个 40 多岁的系统显然有些“压力山大”,急需人员抢救维护。

因此美国新泽西州州长高调喊话:紧急招聘懂得 COBOL 语言的程序员,时薪 55-85 美元!但正如上文所说,很多精通 COBOL 的程序员年纪已经 60+ 岁,而新一代程序员中很少有人专研 COBOL。更不幸的是,新泽西州并非个例——据统计,当时美国至少有 12 个州都在用 COBOL 编写的失业系统,它们面临的情况与新泽西州是一样的。

通过这件事,很多人都意识到了问题:我们需要对支撑商业和金融领域的代码进行维护和现代化,但却没有足够的技术人员来完成这些更新。

基于此,IBM 认为用 AI 或许可以解决问题:推出 AI 编程助手“watsonx”,可将 COBOL 转换为 Java 语言,以缓解当前精通 COBOL 程序员严重短缺的问题。

用 AI 将 COBOL 转换为 Java?

IBM 的解决方法很简单:不完全依赖有限的人类程序员来解决问题,而是建立了一个由 AI 驱动的代码生成助手 watsonx,将所有老旧的 COBOL 代码转换为更现代的语言,从而帮助节省程序员重新编码的无数个小时——如果用一句话解释的话,类似于你将一篇英文文章丢给 ChatGPT,它就会帮你翻译成中文。

虽然原理如此,但 watsonx 实际用起来并没有 ChatGPT 那么方便。

IBM 负责 IT 自动化的产品管理副总裁 Keri Olson 解释道,watsonx 是一个端到端的解决方案,需要经过多个步骤才能完成复杂的代码翻译任务:“在 IBM 和客户全面了解应用环境、数据流和现有的依赖关系之后,我们会帮助他们重构应用,也就是将其分解成更小的部分,客户可以在那时有选择地将代码从 COBOL 转换为 Java。”

另外,IBM Z 软件副总裁 Skyla Loomis 也强调:“你必须记住,watsonx 只是一款 AI 辅助工具,仍需开发人员参与工作,并非可以全部取代。”

AI 能否成功转换代码,还有待观察

如果 watsonx 真的能实现其产品目标,帮助程序员将 COBOL 转换为 Java 语言,那它可能会对未来产生巨大影响——然而,并不是每个人都相信它是 IBM 所说的银弹。

Gartner 杰出副总裁兼分析师 Arun Chandrasekara 持怀疑态度,认为 IBM 目前还没有案例研究来验证其说法:“生成式 AI 是一项早期技术,需要时间来完善。我相信他们有应对这种情况的制衡措施,但我更愿意采取'静观其变'的方法。” 

甚至连 IBM 自己也承认,这项技术是一项未经验证的新技术,但仍对其前景持乐观态度:“的确,在为客户提供这种服务方面,我们还处于早期阶段,也还没有发布任何相关的案例研究。但是我们拥有在 Z 计算和大型机客户方面的经验,以及在 AI 方面的经验,并正在将这两方面结合起来以提供最先进的 AI 体验。” 

因此,虽然利用 AI 转换代码是一个很有前景的想法,但它能否真正成功部署并在现实世界中产生影响,仍有待观察。 

不过,Gartner 在 2023 年的一份报告中称,“到 2028 年,人类和 AI 助手的协同工作可将完成编码任务的时间减少 30%”,此外 80% 的程序员将以某种方式使用 AI——随着 AI 技术席卷全球,越来越多公司和开发者投入 AI 开发,用 AI 转换代码的那一天似乎“指日可待”。

参考链接:

https://www.pcmag.com/articles/ibms-plan-to-update-cobol-with-watson

https://towardsdatascience.com/forget-about-python-learn-cobol-and-become-a-crisis-hero-7f15e75ff377

推荐阅读:

“放弃 C/C++,它太不安全了”,美国 CISA 等多家机构联合警告!

周星驰 Web3 团队将上线独立 App;Gemini 刚发就惹质疑:效果视频疑似剪辑;Meta 推独立AI图像生成器|极客头条

Linux 之父 Linus Torvalds:写代码很容易,人际关系太难了!

在线申请SSL证书行业最低 =>立即申请

[广告]赞助链接:

关注数据与安全,洞悉企业级服务市场:https://www.ijiandao.com/
让资讯触达的更精准有趣:https://www.0xu.cn/

公众号 关注KnowSafe微信公众号
随时掌握互联网精彩
赞助链接