1. XenForo 1.5.14 中文版——支持中文搜索!现已发布!查看详情
  2. Xenforo 爱好者讨论群:215909318 XenForo专区

科技 盘点程序员写过的惊天Bug:亏损30亿、致6人死亡 甚至差点毁灭世界

本帖由 漂亮的石头2021-09-13 发布。版面名称:新闻聚焦

  1. 漂亮的石头

    漂亮的石头 版主 管理成员

    注册:
    2012-02-10
    帖子:
    488,439
    赞:
    48
    一个Bug就地蒸发5亿美元;软件设计层面出Bug致6人死亡;Debug不成功直接世界毁灭。你职业生涯中写过最大的Bug是什么?在这个问题上,勇敢的码农们,总是能不断地创造奇迹。这不禁让路过的一位普通市民感叹:感觉有你们,我们还活在这个世界就像死神来了……

    [​IMG]

    Bug很大,你忍一下

    一个Bug到底能有多大?

    几个历史数据转储逻辑Bug或发货逻辑Bug,就能让几十万轻松蒸发:

    [​IMG]

    你们这亏钱的Bug都洒洒水啦,写Bug差点进去的见过没?

    马上就有码农站出来表示不服,并表示自己参与开发的一款发薪软件曾出现Bug,会导致发放的薪资变成双倍,总共能多发2000多万

    当时查出Bug的时候发薪单已经生成,就差批量任务向银行发起请求了!

    [​IMG]

    奇怪的胜负心就这么燃起来了。

    一时间,什么水闸关不住、高铁追尾、甚至差点导致非洲国家内战的Bug都来了。

    [​IMG]

    如果再放眼全球,你就会发现——Bug没有最大,只有更大。

    2016年时,Excel就出过一个致使上万份遗传基因学论文出错的Bug。

    很多长得像日期表达的长基因名的缩写(比如SEPT2、MARCH1),会在这一Bug的作用下被Excel自动转化成日期格式:

    [​IMG]

    学术领域之外的Bug那就更牛逼了。

    比如在1996年,欧洲运载火箭Ariane 5在发射37秒后当场爆炸。

    一瞬间,70亿美元的开发费用全部木大,5亿美元的设备原地蒸发。

    这一切都由一个整数溢出(Integer Overflow)的Bug引起。

    [​IMG]

    而如果翻开维基百科上的这份专门统计历史上造成严重后果的Bug清单,沿着12个类别一个一个找下去,就会发现——

    几乎每一条Bug的背后都存在着千万上亿的金钱损失。

    [​IMG]

    有时,甚至会带来意外死亡。

    1985年到1987年间,由加拿大AECL公司开发的Therac-25放射线疗法机器在软件互锁机制上出现了Bug,从而使辐射能量变成了正常剂量的100倍

    最终,至少有6名来自美国和加拿大地区的患者由于遭受过量辐射而意外死亡。

    [​IMG]

    还有差点引发全球核战争的Bug:1983年苏联核警报误报事件

    [​IMG]

    苏联军官Stanislav Yevgrafovich Petrov

    在那一年的9月26日,苏联的雷达监测到了5枚自美军基地发射而来的导弹。

    而上图的这位苏联军官权衡再三,最终将这一导弹攻击警告判断为误报,并没有按照规定向上级汇报并申请反击。

    事实证明,这次DeBug成功避免了地球Online在1983年就发生重启。

    “不是Bug是特性”

    看完了上面那些惊天大活儿,瞬间觉得邮件/短信连环CALL这种Bug都温柔了许多。

    像这种由于抽奖程序Bug导致的社死,好像也不是个事儿了:

    [​IMG]

    而影响力又大,又没有造成严重损失,甚至让用户拍手叫好的Bug也不是没有。

    比如一到游戏圈,Bug就会自动改名为特性

    [​IMG]

    原神鱼竿Bug

    某些知名游戏大厂甚至还会联名发布Bug马克杯,玩梗玩得飞起。

    [​IMG]

    还有玩家真情实感地表示:Bug正是游戏复杂规则和交互的体现,我游YYDS!

    [​IMG]

    《矮人要塞》猫咪离奇死亡事件

    甚至在游戏行业之外,还有用户在Bug被修复后愤怒投诉:

    [​IMG]

    图源知乎答主三和四保

    最后,再回到“你的程序员生涯中写过的最大Bug”这一问题上来。

    有回答选择直接结束比赛:

    你们的程序员生涯中写过的最大Bug是什么?

    ——当初选择了做程序员

    [​IMG]
     
正在加载...