Redian新闻
>
全国航班停飞!让老牌航空公司损失 50 亿的,是一座堆积 30 年的“屎山”代码

全国航班停飞!让老牌航空公司损失 50 亿的,是一座堆积 30 年的“屎山”代码

公众号新闻
据新华社报道,美国联邦航空局11日声称,由于空中任务通知系统出现故障,暂停所有国内航班起飞。

据央视新闻客户端,当地时间1月11日8时50分,美国联邦航空管理局称,要求所有航空公司暂停执飞美国国内出发航班的命令已经取消。
截止目前,造成航空系统故障的原因仍在进一步调查中。

停飞、延误、巨量旅客滞留……最近一段时间以来,美国的航空系统一直都没有消停过。
而身处动荡中的美国航空业,美国西南航空则是最近“受伤”最严重的一家航空公司。
1月7日,美国西南航空发布了一份报告,报告内容显示,预计去年4季度总亏损接近10亿美元。
之所以西南航空在一个季度出现了如此巨额亏损,在于西南航空老旧过时的机组排班平台的IT故障,让西南航空陷入到了史上罕有的大瘫痪之中。
光在整个圣诞节期间,西南航空处于持续崩溃状态,每天近80%的航班取消,就这还不包括晚点。


美国各地机场成堆的行李堆积如山,乘客排队长度极为夸张,在天寒地冻的航站楼外,人们一等就是大半天。一眼望去,全是准备乘坐西南航空航班的乘客们。
因为糟糕的调度能力,美国西南航空最近遭到了全美的口诛笔伐,美国交通部已经介入,而焦头烂额的西南航空则只好承诺赔偿“合理”费用。
在最近西南航空发布的报告中,西南航空也承认“西南航空调度失误,导致公司取消了连续十日上万个航班。由于航班被取消,且没有其他预定选择,成千上万的乘客和机组人员被困在美国各地的机场”。


有西南航空的工作人员在网上透露,西南航空一直使用一套极端古老的后台系统,而这套老古董,必须得为此次航空大崩溃负全部的责任。
那这套“老古董”有多古老呢?据工作人员透露,西南航空的后台系统,从上世纪90年代就基本没有变过,现在服务器里跑的还有很多30年前的那些代码。
这些已过“而立之年”的程序代码,三十年来一直兢兢业业的跑在西南航空的后台。西南航空一直坚守的“预排期+手动记账”系统,在这次大崩溃中彻底陷入了停摆。

不是这些代码足够可靠,才让这个后台系统存在了30年,而是30年的的祖传代码像山一样压向“接盘程序员”的时候,任谁都会望洋兴叹。
这些年来眼看着这座具有30年历史的屎山正在摇摇欲坠,排班故障层出不穷,但是西南航空就是没有下定要重写后台、优化系统的决心。
终于这座拥有悠久历史的屎山代码在上个月轰然倒下,留下美国几万无家可归的乘客同时,也给西南航空砸出了一个折合50亿人民币亏损的大坑。


其实,几乎所有的科技公司都有各种历史悠久的“祖传代码”,越是规模越大、历史越长的公司,“屎山”代码的问题也就越严重。
比如,“屎山”这个典故,就是出自一位亚马逊工程师之口。对于“硅谷大厂”亚马逊的代码,这位工程师如此描述道:
“一座很大的屎山,一座你见过的最大的屎山,每次你想修正一个Bug,都得爬到屎山的正中央去。”


几乎所有互联网大厂的程序员都会面临这样的窘境:
删除代码重构,工作量太大,一时半会儿根本完不成;
不删代码,看不懂前辈程序员们的源码到底是什么意思;
清理Bug,发现原来好好跑着的功能突然不可用了;
不清理Bug,那这些Bug会成为不定时的炸弹,之后100%会引发严重的问题;
维护代码,只能用新Bug掩盖旧有Bug;
不维护代码,随着技术升级,旧代码也会一点一点变成Bug。
最终只能补丁摞补丁,保证不出严重技术事故的同时,让屎山越来越大。
至于这座山啥时候坍塌,这就是说不好的事情了,反正到时候“人跟代码有一个能跑就行了”。
屎山不拒细壤,方能就其高。屎山就这样一天天长大,终于令最后接手的程序员感叹:高山仰止,景行行止。


每一次代码调试都是前往屎山的道路,因为条条大路通屎山。
即使有人冒着巨大的风险,辛辛苦苦地重构了所有代码,用不了太久,重构后的代码又会变为:屎山2.0
除了前面说到的亚马逊,同为全球一线大厂的微软、谷歌、oracle这样的大公司,他们的产品背后同样是一座座屎山。
据说oracle每改一个功能,全公司的服务器要全速测试几个月。
至于微软,从win8到win10再到win11,哪一个版本都是bug重重,而为了减少层出不穷的bug,新鲜靓丽的新版本界面背后,总有一个远古界面的控制面板。


至于游戏公司,历史上最著名的屎山来自于《GTA5》联机版本。


在各个论坛中,无数玩家追着游戏开发商R星公司疯狂吐槽:为什么都已经7年了,GTA5联机版加载还是这么慢?!
兴冲冲地打开游戏,结果发现游戏动辄要加载十几分钟,让任何一个玩家都难以淡定。其实这个史诗级的加载速度背后有一个史诗级的屎山:
游戏中有一个循环了19.8亿次的if判断语句。
国内也有很多程序员在论坛分享他们遇到过的各种“祖传”代码,有人说自己维护的代码写于20世纪,
“最早的部分可能写于 1980 年代贝尔实验室。第一批维护升级做需求的人早就退休了,第二批也退休了,每一行代码动起来都胆战心惊。”
而在visa公司工作过的程序员就表示,visa公司现在还在跑着部分1965年的代码,相对于这些半个多世纪前的代码,那些10年20年前的代码,简直弱爆了。
如今,对于“屎山”代码的处理方法,走入到了一个死胡同:
一方面吃过重构代码苦头的程序员们深切地认识到了:“代码能运行就不要尝试去改,哪怕是遇到屎山一样的代码”;另一方面,巍峨的屎山代码终究还是会有坍塌的一天。


如今,美国西南航空的这次重大调度事故用近50亿元损失的代价提醒着各大公司:
面对自己层出不穷的后台系统故障,像鸵鸟一样,把头埋进沙子里,并不会解决任何问题,出来混,“屎山”代码的技术债,终究还是要还的。


- EOF -



推荐阅读  点击标题可跳转

0、极客专属:几十款程序员秒懂的卫衣

1、大厂都病了!

2、曾经对程序员最好的公司,倒下了

3、时隔 20 年,这个编程语言再次“称王”!


关注「程序员的那些事」加星标,不错过圈内事

点赞和在看就是最大的支持❤️

微信扫码关注该文公众号作者

戳这里提交新闻线索和高质量文章给我们。
相关阅读
JFK机场1号航站楼因断电或将关闭数日,影响国航、东航、华航等十多个航空公司航班临时工干的?全美航班停飞的原因找到了。[突发]大温重要交通枢纽封锁!学校停课,航班停飞,大温网友吐槽一片!雪还没完!国航多条国际/地区航线加密!2月23日起,重庆航空复航重庆—新加坡航线!全球各大航空公司恢复至中国的航班!航班回国机票继续更新!多彩班芙行(1)-小镇的风情停飞所有航班!这一航空公司突然宣布美国出现大量航班停飞?阎润涛逝世2周年谈阎颜之争全美航班停飞,居然是因为→突发! 加航多伦多上海航班停飞! 赴华政策又变化: 今起执行爆炸性政治对决!拜登陷入"涉密门",啥情况?全美航班停飞,原因在此!16部门发文,5200亿资产躁动教育随笔(114)《赵威后问齐使》教学后记费城之子艾弗森计划在费城开一家餐厅! 超级百万彩票头奖累计至13.5亿美元!全美航班停飞【快讯】麻省教育全国排名第五|捷蓝航空被评为美国最糟糕的航空公司追踪!“全美所有航班停飞”原因查明!一名承包商“背锅”!全美航班停飞原因曝光/ 米哈游辟谣年终奖108薪/ 苹果正开发触摸屏Mac…今日更多新鲜事在此这三家中国航空公司宣布撤回增加中美直飞​航班!机票价格迅速飙升突发!全美航班停飞原因曝光,中美航线增开!大乱!华人回国受影响!JFK机场1号航站楼或将关闭数日!国航、东航、华航、大韩航空等十多个航空公司航班统统取消...美国|联邦航空管理局出现系统故障,全美航班停飞,现已开始恢复突发!所有航班停飞!深夜巨雷引爆,百年大行突然崩盘!美国炸毁"北溪"更多细节曝光,啥情况?美国突发:全国所有航班停飞!什么是航行通告?以下是导致航班停飞的计划细节这三家中国航空公司宣布撤回增加中美直飞​航班!机票价格迅速飙升...全美航班停飞,原因找到了!波士顿大面积停电预警, 65mph强风在路上,航班停飞!"炸弹气旋"又来了...广州突发:5死13伤!刚刚,美国所有航班停飞,发生了什么?全美航班停飞,原因公布全美航班停飞原因曝光→再次引蛇出洞?罕见突发!美国所有航班停飞!诡异断网导致电脑故障!拜登下令彻查!共产党的文艺工作是为工农服务短短 1 个小时,让公司损失近 3 万
logo
联系我们隐私协议©2024 redian.news
Redian新闻
Redian.news刊载任何文章,不代表同意其说法或描述,仅为提供更多信息,也不构成任何建议。文章信息的合法性及真实性由其作者负责,与Redian.news及其运营公司无关。欢迎投稿,如发现稿件侵权,或作者不愿在本网发表文章,请版权拥有者通知本网处理。