為什麼程式設計師總是在熬夜
本文由碼農網 – 小峰原創翻譯,轉載請看清文末的轉載要求,歡迎參與我們的付費投稿計劃!
有句笑話,程式設計師就是喝咖啡產程式碼的機器。
果不其然,隨便抓一個程式設計師,問問他們什麼時候效率最高,十之八九會說是在深更半夜。為了有更高的效率,早起的人起得更早,晚睡的人睡得更晚。現在一個日趨流行的趨勢是,凌晨4點起床寫程式碼,或者是凌晨4點才上床睡覺。
夜貓子之所以效率高是因為不容易分心。但是貌似和白天相比,也就鎖了門而已,這有什麼特別的嗎?
我分析了一下,把原因歸結為三個方面:生產型的時間表、昏昏欲睡的大腦以及明亮的電腦螢幕。
生產型的時間表
Paul Graham在2009年寫了一篇關於時間表的文章——世界上所有的時間表基本上可以分為兩個型別:管理型時間表和生產型時間表。傳統的管理型時間表把一天的時間切割成一個一個小時來安排,這樣即便是走神了10分鐘也不過最多是浪費了1小時而已。
但是,如果是生產型時間表,就不一樣了。這一型別的時間表有助於我們全身心投入到一個大型的抽象系統中去,統籌帷幄。有人曾經把這一時間表比作用昂貴又脆弱的水晶製造的房子,一旦有人攪亂了你的注意力,這間華麗麗的房子就會立馬分崩離析、碎成萬萬片。
這也是為什麼我們程式設計師特別討厭別人打攪的原因。
因為程式設計需要巨大的精神投入,使得我們往往要花上幾個小時的時間,才能把散亂的思緒連貫起來,繼續工作。好像我們在大腦中構建了整個模型,碎掉只要一秒鐘,但是要再組建起來就非常麻煩,為了一秒鐘的打攪而付出長時間的代價,真心不值得。
其實,在訪問過很多創始人之後,你會發現他們也常常覺得自己根本沒法在白天進行任何工作。不得不應付的中斷、重要人物的到訪、需要回復的電子郵件紛至沓來。所以他們只能在別人都睡覺的時候,才有時間來搞定他們的大部分工作。
昏昏欲睡的大腦
不過,程式設計師可不是真正的機器,也是需要睡覺的。並且老實說,白天的時候程式設計師更為精力充沛。
那你或許要問了,為什麼我們要在大腦昏昏欲睡的時候才開工做複雜的工作,而在白天腦細胞最活躍的時候做點簡單的任務?
因為疲倦的時候程式設計效果更好。
當大腦感到疲倦的時候,它就會不得不集中注意力,因為這個時候,大腦已經沒有剩餘精力去關注其他事情。
舉個例子,當我喝了很多茶水或者飲用了功能飲料之後,對著電腦完全靜不下心來,好吧,我是活躍過度了,我一會兒刷twitter,一會兒瀏覽《黑客新聞》,等等,看上去忙忙碌碌,其實啥也沒做。
如果你認為當我轉向工作的時候,工作效率會更高——那你就大錯特錯了。精力越是充沛,注意力就越不能好好集中,老實說,我甚至不能在同一個事物上專注超過兩秒鐘。
相反,當我感覺有點累了,就能靜下心來好好寫程式碼,甚至一寫就是幾小時,中間還不帶停頓的,那個什麼Twitter還有Facebook統統拋之腦後,完全想不起來還有網路這個玩意兒。
大多數程式設計師也是深有同感。要應付80%甚至以上的工作——分析問題、寫一個漂亮的演算法、創造一個可執行程式碼的環境等等,對於我們精力充沛的腦力而言都是綽綽有餘的。即使你在做的是無法想象的最最先進的機器學習工作,還是有大量的工作就是簡單的清理資料,並以一個可愛又迷人的方式呈現結果。
當你的大腦不能照顧到方方面面的時候,它會自動選擇一樣關注下去。也就是說,疲倦會讓你的大腦傻乎乎的認為只要搞定眼前這一個工作就可以了。
明亮的電腦螢幕
這個原理就簡單多了。晚上長時間地盯著一個明亮的光源會延遲睡眠系統起作用的時間。於是乎,我們忘記了睏倦,可以直到凌晨3點搞定之後才上床睡覺,然後上午11點醒來。好玩的是,接下來到晚上的時候,你就完全不困了,哈哈,夥計,你難道忘記你是11點才起來的嗎!
如果保持這種迴圈,那麼你的作息方式就會慢慢改變。而更為有意思的是,調查結果顯示,一旦你的就寢時間進入凌晨3點和凌晨4點之間,時間點不會再向後推延,會一直保持著這種平衡。
當然原因之一也有可能是因為,到一定時間我們的鬧鐘會叫醒我們。並且話說大家都知道,如果我們肆無忌憚的睡覺,然後到下午2點才吃早飯的話,那真的就是徹徹底底的懶漢了。
小結
總而言之,程式設計師之所以是“夜貓子”是因為晚上工作沒有時間限制,可以選擇一個更為輕鬆自在的方式寫程式碼,同時我們的大腦也不會常常分神,而明亮的螢幕還能保持我們的清醒。
譯文連結:http://www.codeceo.com/article/why-programmer-work-night.html
英文原文:Why programmers work at night
翻譯作者:碼農網 – 小峰
[ 轉載必須在正文中標註並保留原文連結、譯文連結和譯者等資訊。]
相關文章
- 為什麼程式設計師總是在熬夜?程式設計師
- 為什麼程式設計師喜歡熬夜工作?程式設計師
- 為什麼程式設計師總是被輕視?程式設計師
- 我為什麼是程式設計師?程式設計師
- 根據Git推算程式設計師大佬作息:同樣是熬夜,為什麼他髮量那麼多?Git程式設計師
- 為什麼程式設計師總被認為是屌絲群體?程式設計師
- 為什麼程式設計師喜歡在深夜程式設計?程式設計師
- 程式設計師熬夜指南程式設計師
- 為什麼程式設計師總是寫糟糕的程式碼?這3個原因程式設計師
- 1024為什麼是程式設計師日程式設計師
- 為什麼程式設計師在學習程式設計的時候什麼都記不住?程式設計師
- 為什麼程式設計師喜歡在半夜寫程式碼?程式設計師
- 在Facebook當程式設計師會是什麼樣的程式設計師
- 作為程式設計師,你的夢想是什麼?程式設計師
- 同樣是程式設計師 為什麼薪資不同程式設計師
- 在西方的程式設計師眼裡,東方的程式設計師是什麼樣的?程式設計師
- 為什麼中國的程式設計師總被稱為碼農?程式設計師
- 程式設計師為什麼喜歡在晚上編碼程式設計師
- 設計師為什麼要學程式設計,開發者為什麼要學設計?程式設計
- 為什麼程式設計師的開發專案總是半途而廢?程式設計師
- 為什麼程式設計師總是不能準確估測專案時間程式設計師
- 什麼是程式設計師思維?程式設計師
- 什麼是真正的程式設計師?程式設計師
- 什麼是真正的程式設計師程式設計師
- 程式設計師的悲哀是什麼?程式設計師
- 程式設計師科學熬夜指南程式設計師
- 女程式設計師,為什麼比男程式設計師少???程式設計師
- 程式設計師,為什麼如此迷茫?程式設計師
- 為什麼有的程式設計師不會程式設計?程式設計師
- 為什麼我是世界上最好的程式設計師?程式設計師
- 為什麼軟體程式設計師的價值總是被嚴重的低估程式設計師
- 為什麼在中國僅有20%的程式設計師買房?程式設計師
- 為什麼要成為「無敵」程式設計師?程式設計師
- 為什麼我還在程式設計程式設計
- 為什麼為什麼為什麼為什麼為什麼你要做一名程式設計師?程式設計師
- 程式設計師你為什麼這麼累?程式設計師
- 什麼是 10x 程式設計師程式設計師
- [軟體人生]什麼是程式設計師程式設計師