對絕大多數人來說,都是些老生常談的東西使他們噩夢連連:幽靈、蜘蛛,被戴著冰球面具的殺人狂追殺……但對另一些人來說,他們最害怕的東西就沒那么常見了。
就拿軟件開發者舉例吧。如果你問他什么才是最可怕的噩夢,那么答案很可能跟女巫、黑貓沒什么關系,真正的噩夢是關鍵的分號不起作用或者微軟的某個產品。在分析了各種各樣程序員關注的論壇之后,我們在此列舉出 13 種程序員們最苦惱的噩夢。
1.我能通過互聯網解決問題
Stack Exchange 一類的網站已成為軟件開發者的工具箱中至關重要的工具。當然也還有很多其他程序員們尋求幫助的論壇。程序員最頭疼的事,就是貌似無窮的知識來源中其實并沒有解決你問題的答案。
“在 Stackoverflow 網站看到有人發了同樣的問題,然而逛了半天也沒找到答案?!薄?Jorge Irun
某論壇上點贊最多的答案毫無用處!”—— Ramchand Rajasekaran
2.鍵盤上最重要的按鍵壞了
不難想象,鍵盤對于開發人員有著不言而喻的重要性。但同樣地,在開發人員眼中并非所有按鍵都那么重要。尤其是在一些編程語言中,某些按鍵比其他按鍵的使用頻率更高,例如 JavaScript、Perl 和 Objective-C 中的分號鍵。為了節約時間和避免錯誤,開發人員愛用鍵盤的快捷方式,比起鼠標,鍵盤的使用則更頻繁。若是軟件開發者夢到鍵盤上他最愛用的按鍵壞了甚至消失了,就深更半夜里冒著冷汗驚醒,你也不必覺得驚訝。
“我做過最糟糕的噩夢就是分號鍵壞了?!薄?Ali Akbar
敲了 n 行代碼后才發現 Control 鍵沒反應……”—— Nikesh Shetty
3.網絡連不上,或者掉線了
一種比較“小眾”的噩夢是,某一工具的論壇下線或是出于維護狀態從而不能解決問題,但更常見的是訪問互聯網時掉線,無法接入站點。因為畢竟除了訪問論壇這一目的意外,網絡更像一個巨大的象鼻,里邊裝滿了有用的東西,比如代碼段、開源軟件。如果互聯網突然掉線了,就會造成編程團隊間無法聯系,你喜歡的在線音樂播放服務無法使用,更不用說接入遠程服務或是云端有多困難……如果你想嚇唬嚇唬程序員,大喊一聲“沒有網絡”就夠了。記得,隨時準備好除顫器以便急救。
如果某天互聯網和谷歌都消失了,那將倒退回與世隔絕、暗無天日的古代。遇到 bug 我們只能束手無策。”—— Thoriq Firdaus
4.無法再現的危險錯誤
為了修復一個漏洞,在這之前開發人員必須在開發或測試環境中重現導致錯誤的情境。如果你夠幸運的話,在開發環境部署前就能診斷、修復錯誤。許多開發人員害怕隨機出現又無法在受控環境中重現的漏洞。這類該死的漏洞會讓你在重要客戶的面前變得憂心忡忡,坐立不安。這絕對是程序員的噩夢。
只在眾人或重要客戶面前演示時才出現的漏洞,簡直讓我……” —— Jeremy Friesner
“在公司時藍屏現象從不會出現第二次,然而一到客戶家里就老出現?!?—— Joe Wezorek
5.缺失好的文檔,甚至沒有文檔
坐下來理解一段沒有良好文檔或注釋的已有代碼是很困難的。若是連文檔或注釋都沒有,那就更糟了。這情況不僅適用于由承繼程序員的第三方編寫的代碼,還適用于同一個程序員在很久以前寫的缺少良好文檔的代碼。不管是誰切分的不帶說明文檔的代碼永遠是個噩夢。
“毫不夸張地說,維護沒有開發文檔的舊軟件對我而言就是個噩夢?!薄?Sam Sartor
6.糟糕的老板和主管
和其他人一樣,開發人員也會有愛管閑事又沒啥能力的上司。軟件開發者尤其討厭隨意干涉他們代碼的非技術管理層。有些領導喜歡承諾我們無法做到的事,低估項目中切分代碼所需的時間。一想到這樣的領導和技術決策人,程序員即使在深夜的夢里也會痛哭。
“對我而言最糟糕的非經理莫屬,比牙疼還糟糕。他們自視甚高,還期待我們能提早地滿足客戶的任何需求。這些所謂的經理還堅信,編程只是小事一樁,代碼就像浮在空氣中似的,可以信手拈來?!?—— Rachit Agrawal
7.他人清晰又漂亮的代碼
對大多數程序員來說,他們喜歡也必須在別人的代碼上繼續工作;但別忘了,不同的定時器代碼永遠不會一模一樣,不是嗎?甚至是一段有良好文檔的第三方代碼也會變成一件麻煩事。它要求你做調試,重構,或結構化,使代碼適應可能幾個月前就已切分好的代碼。這些工作會讓程序員們心跳異常。若沒有,真是謝天謝地。
8.項目里的要求變更
無論何時,軟件開發者都青睞那些闡述清晰、不能變更的應用需求。在實踐中,很多需求都是匆忙制定的,有時候甚至已經成為了正式形式;要求變更的原因,一部分是有糟糕的項目經理,另一部分則是來自上級或客戶本身的抱怨和干涉。總之,不論什么原因,對需求變更的恐懼——尤其是在最后一分鐘要求變更——永遠是開發者的心頭恨。
9.消失不見的代碼
無論開發者花了多長時間來調度軟件,如果代碼被意外清除了,一切努力都將付諸東流。代碼意外消失的原因有許多,最主要的是鬼使神差地忘記保存文件,或者未知的惡意漏洞導致無法保存。無論出于什么原因,不管是不是考慮不周,程序員永遠都害怕花了大量時間精力才得出的算法和函數毀于一旦。
10.IE 瀏覽器
程序員常常會對某些技術忍無可忍。舉個例子,Web 開發人員對用 IE 做開發感到萬分恐懼。盡管它仍是最受歡迎的瀏覽器之一,IE 對于Web 開發者就是噩夢。糟糕的是,比起現代、環保的新版本,舊版本的 IE 不友好,用戶多,還需要更多支持。如果說電影“13號星期五”中殺人狂 Jason Vorhees 嚇倒了一眾Web 開發者的話,他的面具恐怕就是 IE 圖騰。
11.身體不適
編程不是個體力活兒,但正如其他需要沒日沒夜地在計算機上切分數據的職業那樣,胳膊、手掌、指頭不靈便都很難完成這項工作。任何對視力、理性思考能力有消極影響的因素,都會成為大麻煩。因此,軟件開發者的典型噩夢是:無法使用,甚至喪失了身體的某一或某些重要部位——個人傷害律師(Personal injury lawyer) Baca Raton 如是說。
12.我的漏洞傷害了他人
任何軟件開發者都會成為漏洞的制造者。但并非所有的漏洞都具有同等的災害性。其中一些漏洞討人厭但無害,另一些則會給公司或客戶帶來損失,負責開發的人員會被開除。不過最壞的情況是,漏洞造成了生理上的傷害,甚至危及他人的生命安全。
13.段錯誤
程序員中普遍害怕的噩夢還有遭遇段錯誤。這一錯誤由內存違法訪問而引發。也就是說,程序企圖訪問受限的內存,或者執行某個受限的行為。一般而言,在這種情況下訪問內存單元將通知操作系統,進而反過來通知有問題的,大多數以掛馬程序為結束的進程。開發人員最頭痛的就是要找到引發這一問題的原因。因此,程序員的噩夢里還有段錯誤。
-
工程師
+關注
關注
59文章
1571瀏覽量
68555
發布評論請先 登錄
相關推薦
評論