在本月我的《大眾科學》專欄中,我抨擊了軟體公司認為我們公眾願意充當其無薪 Beta 測試員的態度。在這個他們可以透過網際網路更新軟體的時代,他們為什麼要費力清理程式碼,以便及時釋出 1.0 版本?話雖如此,編寫完美的軟體可能是不可能的。我經常被告知沒有軟體是完全沒有錯誤的。那麼,也許我們應該對那些推出龐大、雄心勃勃、數百萬行程式碼的軟體怪物,結果卻出現嚴重故障的公司抱有一些同情心。
才不。
以下是近期歷史上一些最著名、最具破壞性或最有趣的漏洞
關於支援科學新聞報道
如果您喜歡這篇文章,請考慮透過以下方式支援我們屢獲殊榮的新聞報道 訂閱。透過購買訂閱,您將有助於確保有關塑造我們當今世界的發現和思想的具有影響力的故事的未來。
美國電話電報公司暫停長途服務(1990 年):1990 年 1 月的九個小時裡,沒有一位美國電話電報公司的客戶能夠撥打長途電話。問題在於控制公司長途轉接交換機的軟體——剛剛更新的軟體。美國電話電報公司當天最終損失了 6000 萬美元的費用——這是一個非常昂貴的漏洞。
奔騰晶片的數學錯誤(1993 年):由於一個程式設計錯誤,英特爾著名的奔騰晶片在數學方面表現得非常糟糕。它實際犯的錯誤非常細微(超出小數點後第八位),並且僅限於某些型別的除法問題。但是,計算機晶片出現數學錯誤的反諷——哦,這種反諷!——使這個問題爆發成為所有公關災難之母。在淡化問題的嚴重性,甚至引發更多公眾強烈反對之後,該公司最終同意向任何要求提供修復晶片的人提供晶片。
火星氣候軌道器在太空中解體(1998 年):美國宇航局耗資 6.55 億美元的機器人太空探測器以錯誤的角度衝入火星高層大氣層,並在過程中燒燬。問題是什麼?在執行地面計算機的軟體中,推進器的輸出以錯誤的單位計算(磅-秒而不是牛頓-秒,正如美國宇航局-洛克希德合同中規定的那樣)。幸運的是,後續火星任務的軟體程式已將測量單位修正正確。
Windows 將非軟體盜版者拒之門外(2007 年):在 2007 年 8 月 24 日的 19 個小時裡,任何嘗試安裝 Windows 的人都被微軟自己的反盜版軟體(稱為 Windows Genuine Advantage)告知他們正在安裝非法副本。如果您購買了 Windows Vista,您會發現某些功能被關閉作為懲罰。這次的漏洞既是人為的,也是傳統的:有人意外地在微軟的伺服器上安裝了有漏洞的早期版本的 Genuine Advantage 軟體。
Apple 地圖為我們指引了無處可去的方向(2012 年):在與谷歌的競爭中,蘋果決定擺脫一直安裝在新 iPhone 上的備受喜愛的 Google 地圖應用程式——並用蘋果自己編寫的新地圖應用程式取而代之。
但在 Apple 地圖中,整個湖泊、火車站、橋樑和旅遊景點都丟失或標記錯誤。《華盛頓紀念碑》搬到了街對面。河濱醫院出現在佛羅里達州傑克遜維爾,儘管它在 11 年前就變成了一家 Publix 超市。在該應用程式的 3D 檢視中,橋樑和大壩似乎都融化在水中,而紐西蘭奧克蘭的主要火車站則位於海洋中央。
地圖應用程式背後的資料來自數十個不同的資料庫:用於道路、衛星照片、興趣點等等。但是,將它們組合在一起不僅需要智慧軟體,還需要數千工時的手工工作——谷歌已經花費了數年時間完成這項工作,但蘋果卻沒有。蘋果一直在逐步解決這些問題——但該公司可能會發現很難重新建立所有對地圖失去的信任。