美国政府编码语言ldquo年久失修

全文共字,预计学习时长6分钟图源:unsplash不久前,新泽西州州长PhilMurphy在每日冠状病毒简报会上做出公开请愿:寻找了解COBOL的志愿程序员。是怎样的难题让州长用这种方法现找程序员?COBOL是该州失业福利体系的基础,此编程语言已有60年的历史。在冠状病毒大流行之后,新泽西州涌现了大量的失业申请,显然新泽西的数据处理系统并没有准备好。这一系统已经有40年的工龄了。对于COBOL程序员来说,这样的事情已经不是第一次了。过去50年的官僚危机时期,美国人一直在面对那些尘封的、过时的系统,而正是这些系统支撑着他们的政府和经济。当时尚不清楚新千年是否会在整个世界的计算机系统中造成级联错误,为了解决Y2K问题,大批精通COBOL等基本被遗忘编码语言的程序员被雇佣来专门来修复政府和企业的代码。图源:H.ArmstrongRoberts/ClassicStock/GettyImages20多年后,许多州、联邦和银行系统仍在使用这些完全相同的编程语言。新泽西州并不是唯一依赖COBOL的州。康涅狄格州州长上周表示,该州处理失业问题的计算机系统也以其为基础,这导致了长达数周的处理延迟。康涅狄格州和其他四个州正联合招募退休的COBOL程序员,以更新他们的软件。物以稀为贵,COBOL程序员的稀缺增加了像COBOLCowboys这种初创公司的利润。这些公司由年长的、经验丰富的程序员组成,他们十分了解如何操作这些系统。COBOL始于年,主要用于IBM大型机的业务,如记帐等。IBM还在销售COBOL兼容的大型机。图源:unsplash政府使用这么老旧的系统真的OK吗?事实上,美国政府问责局已多次就关键系统使用旧有编程语言提出警告。年,GAO发布了一份报告,总结了10个急需大修的联邦计算系统。例如,教育部处理联邦学生资助申请的系统自年就开始启用了。维护这个系统需要18个承包商,而且由于它是用COBOL编写的,需要特定的硬件,很难与更新的软件语言集成。GAO认为COBOL是一种旧有语言,这意味着当局很难找到了解如何编写代码的员工,专业承包商可能会收取额外费用。这也意味着,当一个系统出现故障时,可能没人能修复它。这就是新泽西目前的处境:一个衰退的系统,缺乏合格的工程师。尽管COBOL已经年代久远,而且许多程序员已经转向C和Java,COBOL仍然是一种广泛使用的编程语言。这也是为什么它在20世纪下半叶在银行和政府中广泛使用的部分原因。图源:unsplash据路透社报道,当今世界将近一半的银行系统都运行COBOL,超过80%的银行卡交易使用COBOL代码。卡内基梅隆大学教授J.RayScott说:“我展示了年编写的COBOL程序,这些程序现在仍然可以编译和运行。”他是少数几个还在教授COBOL的老师之一,“银行使用Python是不可取的,而Python3的问世打破了一切,然后我们必须重新编译所有的代码。”Scott将COBOL程序员的缺乏归因于一系列问题,从80年代和90年代缺乏开源版本的软件,到新数据库可以简单连接互联网的吸引力。他说:“有20年的时间,人们确信COBOL已经消失了,所以没人教也没人学。COBOL在磁盘驱动器之前就问世了,更不用说互联网了。”但它还是认为是有一丝希望的,因为COBOL并不是一种特别复杂难学的语言。当他在匹兹堡的钢铁厂开始他的职业生涯时,公司会在工厂的地板上对工人进行能力测试。如果他们通过了,就能送到IBM参加为期两周的COBOL课程,然后进入IT部门工作。COBOLCowboys的负责人BillHinshaw说,这个有着60年历史的编程语言仍然具有一定的生命力,尤其是在那些与关键功能紧密相连的行业。与银行业和其他行业相比,政府只是在使用旧版本的软件和硬件。Hinshaw说:“我们遇到越来越多希望使COBOL现代化的人。COBOL不会消失。”图源:unsplash然而,政府依赖于一个对大多在职工程师来说过于陌生的系统,可以视为一种结构性的失败。Murphy对COBOL工程师的请愿也表明,地方、州和联邦政府已经在很大程度上未能更新他们的技术以满足公民的需求。新泽西到底是怎么走到急需COBOL程序员的这一步的?是系统出了问题,还是程序员该进修了?无论如何,他们势必要做出改变。推荐阅读专题留言点赞发个朋友圈我们一起分享AI学习与发展的干货编译组:杨月、齐欣相关链接:


转载请注明:http://www.chubans.com/mgxw/1052.html


当前时间: