从美国航空局故障谈计算机软件
文章来源: 林向田2023-01-14 06:15:15

周三凌晨,美国联邦航空管理局(FAA)航空任务通知(NOTAM)系统出现故障,扰乱了全美国的航空系统。东部时间8点50分,FAA宣布,正常的空中交通运营正在逐步恢复,同时继续调查问题的原因。截至当天美国东部时间周三下午3时,美国境内有8609架次航班被延误,1251架次航班被取消。

按照航班操作流程,飞行员会在起飞前检查航空任务通知(NOTAM)系统,该系统会提示飞行员注意跑道关闭、设备故障以及沿航线或可能影响飞行的位置的其他潜在危险。

关于事故的原因,美国联邦航空管理局对外公布的是“我们的初步工作已将事故追溯到一个损坏的数据库文件。“(Our preliminary work has traced the outage to a damaged database file.)

联邦航空管理局上述的说法根本就不是事故的真正原因。无论是中文“损坏”,还是英文“damage”都是指物理性破坏(physical harm),联邦航空管理局的计算机发生物理性损坏的可能性非常小的。NOTAM系统突然失灵的最大的原因应该是人为失误(软件故障)或是美国联邦航空局的基础技术(软件太落后)导致数据库文件出现问题。

联邦航空管理局如果对外公布是软件故障或软件太落后就要承担管理不力的责任,“损坏的数据库文件”可以让不懂计算机的人认为是天灾。

谈到软件落后的问题不能不提到应用最广的计算机语言COBOLCOBOL 已经有63的历史了,很多大公司(80%)还都在用COBOL。两年前一项对来自49个国家的1104名公司计算机专家进行的全球研究发现,超过90%的公司继续将COBOL视为战略优先事项。研究还发现,83%的公司认为,他们将在未来10年或更长的时间内使用COBOL的应用程序。

COBOL语言这么老了,市场对COBOL程序员还有需求吗?引用网友侃-侃 的评论:很多大型银行系统仍然在用COBOL,现在基本已经没有哪个大学还在教学生用这个“63 years old”计算机语言,以至于时薪能比同类其他工作高出一倍。

COBOL容易学吗?看看网友pollyli 是怎么说的: 实话告诉你,不容易。我在刚刚上大学的时候学的MIS,学了很多门计算机课。我止步在一门计算机语言课叫cobol。那个语言两门课,有60%的人pass第一门,有60% pass 第二门。也就是整个课堂36%的人可以过。我过了第一门,第二门简直是地狱。整天整夜在computer lab里run程序。code做出来,就是不能run。也找不到bug,实在折磨人。我实在没办法只有drop这门课。我本身不是一个理科脑袋,就去学我喜欢的专业了。我还有一个好朋友,她过了所有可课,以GPA 4.0毕业的。 那意味着126学分全优。那么优秀的她,进了计算机公司后,两年被lay off,再也没干这行。她工作的时候就觉得很不喜欢。这真的要看你是什么样的人。做这份工作做不好,就是进公司了也很苦恼。