程序員的最大噩夢(mèng)是什么?
有國(guó)外程序員在 Quora 上提了一個(gè)問(wèn)題:“程序員的***噩夢(mèng)是什么?”。本文摘編了這個(gè)問(wèn)答貼的多個(gè)熱門(mén)回復(fù)。
Brain Schmitz Software Engineer Intern at Google (2012, 2013), Microsoft (2014), CS major at UT Austin in Turing Scholars honors program
曾經(jīng)遇到過(guò)的最惡心的bug:
Bug只會(huì)出現(xiàn)在生產(chǎn)環(huán)境中,而且無(wú)法在本地重現(xiàn)或者觸發(fā)
Bug出現(xiàn)的幾率雖然很低,但并不足以忽略掉它
Bug出現(xiàn)的原因和競(jìng)態(tài)條件(race condition)有關(guān),這只會(huì)在系統(tǒng)低負(fù)載時(shí)才出現(xiàn)
Bug出現(xiàn)的真正原因還未知
出現(xiàn)bug的代碼并不是你編寫(xiě)的,但是你要負(fù)責(zé)修復(fù)它;寫(xiě)那段代碼的人已經(jīng)不在公司了
導(dǎo)致出現(xiàn)bug的是某個(gè)庫(kù),而這個(gè)庫(kù)在99.9%的情況下都是可靠的。這是你解決該問(wèn)題所剩的***一塊陣地了。
多年以來(lái)有許多人試圖調(diào)試它,從沒(méi)人成功過(guò)。
Bug會(huì)產(chǎn)生一個(gè)邏輯錯(cuò)誤,而且只會(huì)在系統(tǒng)運(yùn)行了很長(zhǎng)一段時(shí)間后才會(huì)出現(xiàn)
調(diào)試需要你了解某個(gè)特定的領(lǐng)域知識(shí),而你對(duì)那個(gè)領(lǐng)域卻一無(wú)所知
解決bug的***期限非常緊,時(shí)間不多了
不能忽略這個(gè)bug,因?yàn)槟愕娘埻肽芊癖W【涂此?/p>
想象一下在地球上通過(guò)光脈沖信號(hào)調(diào)試火星探測(cè)器上的一個(gè)競(jìng)態(tài)條件是多么令人惡心的一件事,更絕的是只有在火星的大氣條件下當(dāng)行星開(kāi)始對(duì)齊時(shí)才會(huì)發(fā) 生。這一切都是因?yàn)槟硞€(gè)從NASA離職多年的人所編寫(xiě)的庫(kù)中生成的嵌入式代碼出現(xiàn)了一些微妙而深?yuàn)W的問(wèn)題所導(dǎo)致。你必須盡快解決這個(gè)問(wèn)題,因?yàn)橄乱淮涡行?對(duì)齊就快開(kāi)始了,而幾百萬(wàn)美元的項(xiàng)目資金面臨打水漂的風(fēng)險(xiǎn)。
不,我所說(shuō)的這一切從未發(fā)生過(guò)。但是看了上面那些你難道不想從橋上跳下去嗎?:)
Jarmo Dee
上面那些都不算啥。碼農(nóng)最糟糕的噩夢(mèng)是有一個(gè)不合格的、非技術(shù)出身的項(xiàng)目經(jīng)理,把時(shí)間點(diǎn)定的非常緊,而且總是想掌管一切。
Colin Song
需求變更,恩,是再一次變更。
Jim Bobrien
老板決定修改產(chǎn)品定位的方向,而且認(rèn)為所有的修改都會(huì)很簡(jiǎn)單,并且在沒(méi)有和技術(shù)團(tuán)隊(duì)溝通過(guò)的情況下就向客戶做出了種種承諾。哦,對(duì)了,還有需要支持IE瀏覽器。
Lalit Jain
同樣的代碼周五還跑的好好的,周一就不行了 :D
Shivam Sarawagi
Internet Explorer (如果你是Web開(kāi)發(fā)者)
Jorge Lrun
到StackOverflow上提問(wèn),看到1年前有人發(fā)過(guò)和你準(zhǔn)備問(wèn)的一模一樣的問(wèn)題,但是沒(méi)有任何回復(fù)..
Ben Joseph
Stack Overflow訪問(wèn)不了!
Naman Dasot
分號(hào)鍵壞了 :(
Abhishek Walter
Stackoverflow 問(wèn)題數(shù)達(dá)到上限