為什麼工程師總是喜歡在三更半夜寫程式?

你知道創作者的「時間單位」和普通人不同嗎?你知道疲倦的大腦反而可以提高工作效率嗎?《Why programmers work at night》是工程師 Swizec Teller 幾年前在部落格發表的文章,內容解釋為什麼工程師總是過著「吸血鬼的生活作息」。沒想到文章一炮而紅,部落格暴增 50 倍的流量!還因此出了一本書專門探討工程師的規律流程。
評論
評論

Swizec Teller 是一名自由工程師兼連續創業家,有超過 17 年以上的程式開發經驗,自稱「戴帽子的宅男」(A Geek with a Hat)。幾年前因為在部落格上發了一篇文章《Why programmers work at night》,解釋為什麼大部分工程師,包括他本人,總是遵循著「吸血鬼的生活作息」來寫程式。

結果這篇文章大受歡迎,Swizec Teller 的 部落格 因此暴增了 50 倍網站流量。文章發出後的第四天,他一共得到了 627 個 Google + 讚數、288 個 Twitter 追蹤者、475 個 Reddit 最新回應、7000 個 Facebook 讚數,以及超過 89000 名部落格當日訪客(以往他的部落格一個月累積起來頂多達到 30000 名訪客)。

《Why programmers work at night》最後還寫成了一本書,可以在 Swizec Teller 的網站上 購買電子書或實體書籍 。書的內容主要是其文章的延伸,加上他擔任工程師以來的個人經驗、採訪其他工程師的心得、以及針對工程師的心理學研究。

在這裡將 Swizec Teller 的文章《Why programmers work at night》分享給大家,本文並非逐字翻譯,筆者加了一些細節幫助大家理解內容,有興趣的話可以閱讀 文章原文 ,或 線上閱讀 這本書。


Why programmers work at night?

很多人笑說:「工程師是可以將咖啡因轉換成程式碼的機器。」

畢竟很多工程師會告訴你,他們工作最有效率的時段是在夜深人靜的時候。有些人比較早,有些人比較晚,最常見到的作息時間大概是這兩種:凌晨四點起床做事的,跟凌晨四點做完事去睡覺的。

這種作息時間的用意就是為了減少分心的機會。不過你可能會問,鎖上房門不是可以達到一樣的效果?何必熬夜傷身寫程式?

深夜工作的關鍵就在於三件事:創作者的時間表、睏倦的大腦、明亮的電腦螢幕。

創作者的時間表 The Maker's Schedule

Paul Graham 在 2009 年寫了一篇文章 《Maker's Schedule, Manager's Schedule》,他認為基本上世界上主要分成兩種時間表,一種是「管理者的時間表」(Manager's Schedule),適用於總經理、總監、產品經理等「管理者」;另一種則是「創作者的時間表」(Maker's Schedule),適用於軟體工程師、設計師、開發者、作家等「創意工作者」。

首先先簡單介紹「管理者的時間表」,這種時間表是以「一小時」為基本劃分單位,每小時都有不同的事情需要處理,大部份的人都是在這樣的時間表下工作。Paul Graham 認為這是一個適合「下命令」的時間表(Schedule of command),因為時間可以彈性安排、拆開再重組,所以這個小時去開會、下個小時要整理會議記錄、再下個小時去拜訪廠商,即使不小心分心了,十分鐘的分心頂多耗掉一個小時的時間,每件事情都可以立即處理。

另一種則是「創作者的時間表」,也就是我們這些工程師所遵循的時間表。Paul Graham 認為對創作者而言,每個時間單位至少要有半天這麼長,因為工程師不可能在一個小時內寫完一個程式,一個小時可能還不夠他們「準備開始」寫程式,畢竟「創作」是需要時間醞釀的。

這樣的時間表就像在一個龐大的抽象系統中投入大量的精力工作,有人比喻成用昂貴的水晶玻璃來蓋房子,一旦有人分散你的注意力,整項工程就會瞬間崩塌,碎成千萬片。這就是為什麼工程師非常討厭工作時被別人打斷或分心。

也因為工程師非常需要集中精神來工作,所以除非能連續好幾個小時不被打擾,不然我們根本不想開始工作。好不容易在腦子裡勾勒出設計流程、進入狀況,一旦被打斷,一切都得捲土重來。

事實上,如果你和創業家們討論這個問題,就會發現他們在白天裡根本沒辦法完成任何開發工作。最普遍的障礙就是受到一連串的干擾,像是臨時出現許多急事需要處理、重要的電子郵件需要回覆等等。因此創業家大部份都選在深夜裡、其他人在休息的時候,再進行這些開發工作。

睏倦的大腦 The Sleepy Brain

不過工程師們晚上也還是得睡覺,畢竟我們又不是什麼不用休息的新新人類,而且白天的精神一定還是比晚上好上許多。那為什麼我們要把這些複雜的開發工作留在大腦睏倦的時候做,然而頭腦最敏銳清晰時,卻做些相對簡單的事情呢?

因為「累」是讓工程師 Code 更好的訣竅。

聽過 Ballmer Peak 嗎?一點點的微醺可以讓工程師發揮超人般的 Coding 技巧,然而一點點疲倦也可以達到一樣的效果。當你的大腦開始累了、睏了的時候,根本沒有多餘的精力可以「分心」,你不得不集中精神完成工作。

以我個人的經驗來說,在喝了太多茶或能量飲料、精神最充沛的時候,我工作反而最沒效率。照理說,有這麼多的精力跟腦力,應該能用來寫程式、找 bug,但事實上因為大腦跟身體「太嗨」,我根本靜不下心來好好做事,一下子上 Twitter、一下子看 Hacker News,沒辦法專注在同一件事情上兩秒鐘。

相反的,當有點累時,我才會把屁股好好的黏在椅子上開始寫程式。在大腦稍微有點疲倦的情況下,我可以寫程式連續寫上好幾個小時,根本不會想到 Twitter 或 Facebook,完全忘記網路的存在。

而且我發現大多數的工程師、開發者們都有和我一樣的情況。日常生活中百分之八十的事情,都不需要大腦全力運作就能解決,因此在腦力過剩的情況下,你就會去找其他事情做。疲倦會讓你「笨得剛剛好」,沒有多餘的腦容量塞其他東西,腦力只夠把手邊的工作做完,根本沒辦法分心。

明亮的電腦螢幕 Bright Computer Screens

這點倒是很好理解,晚上長時間地盯著電腦螢幕工作,會延遲你的睡眠週期,讓你忘記疲倦,直到凌晨三、四點才去睡覺,然後睡到隔天中午才起床。然而當夜晚再次來臨時,你會感覺精神很好,這是當然的!畢竟你睡到中午才起床啊。

重複這樣的作息一陣子後,你的身體會適應這樣的規律,活在一個不同的「時區」。更有趣的是,我發現這樣的睡眠週期不會一直向後延,而是在凌晨三、四點左右達到一個平衡,然後停留在這個時區裡。

這可能是因為,如果一直向後延,睡到下午、甚至傍晚才起床的話,其他人會認為你是個無可救藥的大懶蟲,這種「社會壓力」逼得我們不得不停留在四點入睡、中午起床的時區裡,畢竟再更晚睡的話,中午肯定是起不來啦!

結語

總而言之,工程師之所以偏愛在三更半夜寫程式,就是因為在深夜裡工作時間沒有限制,可以更靈活地運用時間(最慘就是今晚不睡覺而已),而且大腦疲倦得不容易分心,最後,狂盯著電腦螢幕剛好可以保持清醒。


相關文章

《延伸閱讀》

美得不像工程師? LinkedIn 撤廣告遭抨擊性別歧視

寫給產品經理與工程師:如何與設計師一起工作

工程師大學時期必經的 35 件事

軟體工程師的時間都花在哪裡?

工程師,您也患有「冒牌者症候群」嗎?

身為網頁工程師我學會的 8 件事

關於工程師 59 條搞笑但卻真實無比的語錄

工程師,你應該寫作

歡迎加入「Inside」Line 官方帳號,關注最新創業、科技、網路、工作訊息


看見社會包容力 ─ 每一簇的數位星火

過去一年,新冠肺炎讓全球進入一座大型數位轉型實驗室,小從日常飲食、上班上課,大至城鄉發展,這波加速的數位轉型,並不會隨疫情退散而消失,正因如此,影響社會各層面的「數位包容」顯得格外重要。
評論
Photo Credit:unsplash
評論

根據國際數據資訊(International Data Corporation)預估,2020 ─ 2023 年,全球與數位轉型相關的直接投資金額,每年以 15% 增速成長,2023 年將達到 6.8 兆美元,建立起強大的數位平台與生態系。在台灣無論是在深山林裡、海濱小村、城市邊緣的各個角落中有許多善用科技,結合創意與行動力量,讓不分年齡、行業的每一份子,在數位轉型的進程上不脫隊。

長年在東海岸投入偏鄉工作的師大教授須文蔚,可說是弭平城鄉落差最有創意的實踐者。他主持的宜蘭花蓮數位機會中心(下稱 DOC)、「教育部邁向數位平權推動計畫」,替鄉村裡的學童、老人家、新住民、返鄉青年,找到了夢想和方向。

弭平城鄉落差 DOC數位機會中心創意無限

談到數位包容,須文蔚強調,科技固然是必要工具,但「偏鄉機會不在於昂貴的 ICT 投資,而在於創新應用的推廣,以及人際脈絡的連結」;花蓮的宜昌國小就是很好的例子。DOC 多年來推動「小攝影師的三個大夢」計畫,向各界募集二手相機給孩子課後使用、邀請公視導演開攝影課,並攜手瑪利亞社會福利基金會舉辦公益競賽;而宜昌國小的學童在學會了攝影技能後,把海邊淨灘撿到的垃圾全程影像紀錄並以攝影展呈現,提醒各界重視環保,得到那一年公益競賽第一名。

DOC 募集了超過 600 台二手相機,為孩子辦理課程與攝影展。圖右二為須文蔚老師。Photo Credit:須文蔚老師

須文蔚笑說,別小看孩子的決心,「他們現在到夜市會自己帶容器,還叫老闆不能用塑膠袋。」偏鄉的孩子們能夠自發推廣環保理念並化為行動,最初的起心動念竟是攝影課和公益競賽。

偏鄉有自己的智慧 只是需要輔助工具與科技

「智慧在偏鄉,地方從自己的獨特條件中,都找得到可能性;他們需要的是工具,我們就從旁協助。」須文蔚說,從創意發想、熱血實踐、再加上科技的臨門一腳,讓偏鄉的成員不再單打獨鬥,彼此有了連結,成為榮耀的共同體。DOC 替偏鄉導入的科技也與時俱進,像是使用 3D 列印建模,製作具地方特色及 Logo 的商品;近期也運用網路視訊電話,號召十多名志工,每天上線陪獨居老人聊天,「一開始大家很尷尬,但一年多下來,視訊成了日常,老人家也習慣科技結合人性的陪伴。」

儘管在偏鄉已有豐碩成果,但須文蔚坦言,數位包容仍有許多困境必須克服,例如科技的導入涉及跨部會的整合,遠距醫療、電子支付,都待進一步解套。「高齡的月琴阿嬤十多年前就來跟我們學電腦,一路在社區工作上陪伴我們成長。兩年前,她身體不適,請村長載她到市區看病,一個多小時的車程說說笑笑,沒想到抵達醫院不久就過世。」須文蔚說,偏鄉往返醫院的成本極高,遠距醫療若能普及,早期治療與預防,這樣的悲劇或許可以減少。

瑞穗 DOC 最認真的資深學員月琴阿媽能用滑鼠畫出美麗的蝴蝶。Photo Credit:須文蔚老師

面對疫情 餐飲小商家需要數位包容的保護傘

數位包容的範圍並不限於偏鄉,即使在城市中心,也可能面臨不平等與差距。過去兩個月,全台三級警戒,首當其衝的小型餐飲店家。相較大型業者,它們更缺乏資源來因應突如其來的疫情衝擊,例如原料採購成本提高,就使得小商家更顯弱勢。為弭平差距,透過共同採購、成本分攤、借重數位平台的雲端廚房,或許可成為選項之一。

中央廚房連線全台 19 個衛星廚房 Just Kitchen 提高美食製作及遞送效率

Just Kitchen 便是台灣首家雲端廚房業者,創始成員均來自台灣,憑藉代理國際餐飲品牌的經驗,將原本的中央廚房改裝,結合 AI、大數據、銷售分析,成立了雲端虛擬廚房,於去(2020)年 3 月開始推廣。Just Kitchen 行銷長 John 指出,所謂雲端廚房,就是純粹製作外送餐點,透過流程簡化及共同採購等各項優勢,打造更有競爭力的商業模式。

科技部門及大數據部門 餐飲商家進入市場 快速無痛且精準

除了經營自有代理品牌如 Fridays 的外送餐點,Just Kitchen 也與傳統業者如鬍鬚張、大三元攜手,替品牌設計適合外送的菜單,協助轉型擴大客源;未來更不排除與小型業者合作。營運長 Kent 指出,Just Kitchen 內部成立了科技部門及大數據部門,前者協助餐飲業者快速上線、有效執行營運 SOP 如庫存及管銷等;後者則分析人口特性、手機使用習慣、不同族群的喜好,以便更精準觸及客戶群。

以滷肉飯商家為例,在疫情衝擊下必須從原本的內用模式,快速無痛轉型至外送,即可借重雲端廚房。「我們替品牌業者全新設計外送菜單、採購食材、烹調製作、上架宣傳,再分潤給品牌夥伴。」Kent 指出,雲端廚房可協助既有品牌快速轉型、也能降低新品牌進入市場的門檻,還能將地方美食向外推廣到不同區域。

虛擬廚房界成長最快速的 Just Kitchen ,創始成員左至右分別是:策略長劉揚、營運長吳得暉、執行長陳星豪、行銷長游竣文、資訊長林效誠。Photo Credit:Just Kitchen

台灣美食揚名國際 寄望雲端廚房

日本的壽司、義大利的 Pizza、泰國的 Patai,都是不分國界朗朗上口的美食;台灣目前除了珍珠奶茶,尚未出現國際級的代表性美食。Just Kitchen 行銷長 John 指出,台灣的美食如此多元,卻不具備足以匹配的全球知名度,相當可惜;因此 正在計畫將牛肉麵、滷肉飯等推向國際。Just Kitchen 在台灣及香港的雲端廚房已經上線,未來還有美國、菲律賓、新加坡即將開站;有朝一日,台灣的一個小小店家,或許也能藉由像 Just Kitchen 這樣的平台,揚名全世界!

不遺漏任何人的數位包容島

不論是 DOC 運用科技推動資訊教育、地方創生、農村商機、文化紀錄,抑或是 Just Kitchen 雲端廚房為微小企業帶來的新希望,都與聯合國亞太經濟社會委員會(ESCAP)在今年三月提出的疫情報告《因應新冠疫情:不遺漏任何國家》,相互呼應聯合國數位政府永續目標 — Leave no one behind,檢視最脆弱的社會部門,並透過加強區域合作來改善。

以台灣的科技產業強項,再結合多年來政府與民間攜手在數位包容工作上的創意與經驗,相信並期待種種在台灣「Leave no one behind」的嘗試與成果,成為台灣貢獻國際社會的有力切入點,當在地的數位包容經驗走向國際,台灣也更能被世界看見。

行政院科技會報辦公室 廣告