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

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

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

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

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

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

4

急缺精通 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 转换代码的那一天似乎“指日可待”。

 转自CSDN(ID:CSDNnews)

原创文章,作者:北大青鸟,如若转载,请注明出处:http://news.yy-accp.com/archives/17260