為什么程序員后半夜的工作效率異常高?
有種流傳甚廣的說(shuō)法:如果你想將咖啡豆磨成代碼,那就去買臺(tái)“程序員”好了。確實(shí),如果你在一家編程高手云集的互聯(lián)網(wǎng)公司工作,問(wèn)問(wèn)你身邊那些程序員們,他們一般什么時(shí)候效率最高,點(diǎn)子最好?得到的答案,大部分是后半夜。
單純比較效率的話,自然是上午最高,下午次之,再次是晚上10點(diǎn)到2點(diǎn),最后是夜里3點(diǎn)到凌晨6點(diǎn),但對(duì)于做IT的人來(lái)說(shuō),這個(gè)時(shí)間好像恰恰相反。如果只是為了避開(kāi)無(wú)謂的干擾,何不關(guān)上門(mén),帶上耳機(jī),為何一定要在深夜工作呢?原因大概有如下幾種:
突發(fā)情況。比如老板突然給了一個(gè)重要的任務(wù),要一周之內(nèi)交貨,或者下午給任務(wù)。這屬于沒(méi)辦法,只能兵來(lái)將擋,水來(lái)土掩。
白天干擾事項(xiàng)太多,沒(méi)狀態(tài),只有晚上有大塊的不被干擾的時(shí)間能夠好好思考,處理試驗(yàn)。
其實(shí)很多程序員都愿意早起工作,而不是夜間工作,只是白天的時(shí)間往往碎片化了,例如:白天的時(shí)候一會(huì)一個(gè)QQ,一會(huì)一個(gè)微信,一會(huì)一封郵件,一會(huì)測(cè)試跑過(guò)來(lái)報(bào)bug,一會(huì)產(chǎn)品過(guò)來(lái)要開(kāi)會(huì),白天的時(shí)間是碎片的,做出來(lái)的程序簡(jiǎn)直充滿了bug。好幾次上線前發(fā)現(xiàn)較少執(zhí)行的某個(gè)邏輯分支缺乏程序處理,原因就是開(kāi)放過(guò)程中被叫去開(kāi)會(huì)等瑣碎事情。
而寫(xiě)程序恰恰是一件開(kāi)了頭就無(wú)法輕易放下的事情,一旦思緒、靈感來(lái)了以后,突然被中斷,內(nèi)心不知道多少XX&&&飄過(guò)……
下面從創(chuàng)作者的日程表、困倦的大腦以及閃亮的屏幕三個(gè)方面分析。
創(chuàng)作者的日程表
通常來(lái)說(shuō),這個(gè)世界有兩種日程表,一種屬于管理者,一種屬于創(chuàng)作者。傳統(tǒng)的管理者日程表將一天按小時(shí)劃分,而通常十分鐘的打擾,對(duì)于程序員來(lái)說(shuō),可能需要一個(gè)小時(shí)去重新整理思路。
而創(chuàng)作者的日程表,著名投資教父 Paul Graham 在 2009 年也曾就創(chuàng)造者的日程表專門(mén)撰文。這個(gè)日程表是適用于比如作家或是程序員的。這類人的工作通常需要在內(nèi)心建立起一個(gè)龐大而抽象的系統(tǒng),不僅如此,在創(chuàng)作過(guò)程中,他們還需要不斷的與自己的心理作斗爭(zhēng)。
有個(gè)非常好的類比說(shuō),創(chuàng)作或編程的過(guò)程就好像拿昂貴而易碎的水晶搭建一所房子,一旦有人來(lái)打攪你,你所有的努力都可能會(huì)毀于一旦,傾注的所有心血可能就瞬間摔成碎片。
這就是為什么程序員在別人打攪他們時(shí),異常憤怒的原因。
正因如此,他們通常會(huì)在確定有一連好幾個(gè)小時(shí)無(wú)人打擾的情況下才會(huì)開(kāi)始工作。
事實(shí)上,你同一些程序員聊天時(shí)會(huì)發(fā)現(xiàn),他們自己都會(huì)有種白天不能完成工作的感覺(jué)。持續(xù)不斷的打擾、很多重要的事情需要打理、郵件要回等等,都會(huì)打亂你的節(jié)奏,不能讓你安心工作。這也正是他們選擇日出而息,日落而作的原因。
困倦的大腦
但就算習(xí)慣半夜工作的程序員,他們也是白天精神,夜里犯困。
那么為什么他們會(huì)在困倦的時(shí)候做非常復(fù)雜,需要腦力勞動(dòng)的事情,而在大腦最活躍、最興奮的時(shí)候,反而做一些非常簡(jiǎn)單的工作呢?
因?yàn)槠>霑?huì)讓他們成為更好的 " 攻城獅 "。
這跟鮑爾默效應(yīng)類似,疲倦會(huì)讓程序員更加專注,因?yàn)樵诖竽X疲倦的情況下,就必須得非常專注的做一件事情。你僅存的腦容量已經(jīng)不足以應(yīng)付多余的事情了,只能專注于手頭的事。
喝太多茶或是在一個(gè)糟糕的時(shí)間點(diǎn)喝了功能飲料之后,工作效率是最低的。興奮會(huì)讓你一會(huì)兒看一下 Twitter,一會(huì)兒瞅一眼 Hacker News,在社交網(wǎng)站上跳來(lái)跳去。
你可能感覺(jué)精力充沛的狀態(tài)非常適合工作,但真實(shí)的情況卻是你常常會(huì)做一些讓自己注意力分散的事,大腦就是無(wú)法安靜下來(lái),把所有的注意力集中在一件事上。
反而當(dāng)你有點(diǎn)困意的時(shí)候,你只想窩在椅子或者沙發(fā)上專心編程。而半夜,安靜的不止是周邊的環(huán)境,互聯(lián)網(wǎng)也是如此,你會(huì)不知疲倦的寫(xiě)上好幾個(gè)小時(shí)的代碼,根本不會(huì)想到 Twitter 和 Facebook。
大部分程序員都是這樣,白天你寫(xiě)出一個(gè)算法,然后加上十倍的量來(lái)搭建一個(gè)可供算法運(yùn)行的環(huán)境。大部分時(shí)間里,你都只是做著一些“清理”工作,或是想辦法讓最終的結(jié)果以一種舒服好看的方式呈現(xiàn)。
閃亮的屏幕
這一點(diǎn)就更簡(jiǎn)單了。
如果你持續(xù)的盯著一個(gè)很亮的光源,睡眠周期便會(huì)往后延,如此即使是在早上三點(diǎn),你也不知疲倦。而當(dāng)夜晚再次降臨之時(shí),你也感覺(jué)不到疲憊,因?yàn)槟闵衔?11 點(diǎn)才起床。這就好像你生活在另外一個(gè)時(shí)區(qū)一樣,更有趣的是,一旦你習(xí)慣了這種作息時(shí)間,你很難再回去了。
當(dāng)然,即使你 4 點(diǎn)才睡,你的鬧鐘還是會(huì)調(diào)到上午 8 點(diǎn),這個(gè)世界最長(zhǎng)有的偏見(jiàn)就是如果你下午兩點(diǎn)才吃早餐的話,你一定是個(gè)失敗者。
總結(jié)
總結(jié)一下,晚上給你一種更輕松、更安靜的環(huán)境,你的大腦不會(huì)受到外界的干擾,并且顯示屏的亮光也會(huì)讓你保持清醒。