
程式員的成長之路
互聯網/程式員/技術/資料共享
關注
閱讀本文大概需要 2.8 分鐘,
來自:量子位
一個Bug就地蒸發5億美元;
軟體設計層面出Bug致6人死亡;
DeBug不成功直接世界毀滅,
你職業生涯中寫過最大的Bug是什么?
在這個問題上,勇敢的碼農們,總是能不斷地創造奇跡,
這不禁讓路過的一位普通市民感嘆:
感覺有你們,我們還活在這個世界就像死神來了

Bug很大,你忍一下
一個Bug到底能有多大?
幾個歷史資料轉儲邏輯Bug或發貨邏輯Bug,就能讓幾十萬輕松蒸發:

你們這虧錢的Bug都灑灑水啦,寫Bug差點進去的見過沒?
馬上就有碼農站出來表示不服,并表示自己參與開發的一款發薪軟體曾出現Bug,會導致發放的薪資變成雙倍,總共能多發2000多萬,
當時查出Bug的時候發薪單已經生成,就差批量任務向銀行發起請求了!

奇怪的勝負心就這么燃起來了,
一時間,什么水閘關不住、高鐵追尾、甚至差點導致非洲國家內戰的Bug都來了,

如果再放眼全球,你就會發現——Bug沒有最大,只有更大,
2016年時,Excel就出過一個致使上萬份遺傳基因學論文出錯的Bug,
很多長得像日期表達的長基因名的縮寫(比如SEPT2、MARCH1),會在這一Bug的作用下被Excel自動轉化成日期格式:

學術領域之外的Bug那就更牛逼了,
比如在1996年,歐洲運載火箭Ariane 5在發射37秒后當場爆炸,
一瞬間,70億美元的開發費用全部木大,5億美元的設備原地蒸發,
這一切都由一個整數溢位(Integer Overflow)的Bug引起,

而如果翻開維基百科上的這份專門統計歷史上造成嚴重后果的Bug清單,沿著12個類別一個一個找下去,就會發現——
幾乎每一條Bug的背后都存在著千萬上億的金錢損失,

有時,甚至會帶來意外死亡,
1985年到1987年間,由加拿大AECL公司開發的Therac-25放射線療法機器在軟體互鎖機制上出現了Bug,從而使輻射能量變成了正常劑量的100倍:
最終,至少有6名來自美國和加拿大地區的患者由于遭受過量輻射而意外死亡,

還有差點引發全球核戰爭的Bug:1983年蘇聯核警報誤報事件,

△蘇聯軍官Stanislav Yevgrafovich Petrov
在那一年的9月26日,蘇聯的雷達監測到了5枚自美軍基地發射而來的導彈,
而上圖的這位蘇聯軍官權衡再三,最終將這一導彈攻擊警告判斷為誤報,并沒有按照規定向上級匯報并申請反擊,
事實證明,這次DeBug成功避免了地球Online在1983年就發生重啟,
“不是Bug是特性”
看完了上面那些驚天大活兒,瞬間覺得郵件/短信連環CALL這種Bug都溫柔了許多,
像這種由于抽獎程式Bug導致的社死,好像也不是個事兒了:

而影響力又大,又沒有造成嚴重損失,甚至讓用戶拍手叫好的Bug也不是沒有,
比如一到游戲圈,Bug就會自動改名為特性,

△原神魚竿Bug
某些知名游戲大廠甚至還會聯名發布Bug馬克杯,玩梗玩得飛起,

還有玩家真情實感地表示:Bug正是游戲復雜規則和互動的體現

△《矮人要塞》貓咪離奇死亡事件
甚至在游戲行業之外,還有用戶在Bug被修復后憤怒投訴:

△圖源知乎答主三和四保
最后,再回到“你的程式員生涯中寫過的最大Bug”這一問題上來,
有回答選擇直接結束比賽:
你們的程式員生涯中寫過的最大Bug是什么?——當初選擇了做程式員,

軟體Bug清單:
https://en.wikipedia.org/wiki/List_of_software_Bugs
參考鏈接:
https://www.zhihu.com/question/482967292
<END>
推薦閱讀:
一女程式員被判 9 個月:因薪酬等問題離職,rm -f * 刪庫,癱瘓 6 個小時
MySQL 用 limit 為什么會影響性能?
互聯網初中高級大廠面試題(9個G)
內容包含Java基礎、JavaWeb、MySQL性能優化、JVM、鎖、百萬并發、訊息佇列、高性能快取、反射、Spring全家桶原理、微服務、Zookeeper、資料結構、限流熔斷降級......等技術堆疊!
?戳閱讀原文領取! 朕已閱 
轉載請註明出處,本文鏈接:https://www.uj5u.com/qita/301228.html
標籤:其他
上一篇:程式員專屬壁紙十七張
