轉載自網路
================================================================
每個人都熟悉這種作息規律:早上 9 點去上班,坐在電腦前面,編一天的程序,下午 5 點下班回家。如今,非常感謝蒂莫西‧費裡斯 (Timothy Ferriss) 的《每週工作 4 小時》,我開始重新思考應該如何工作,如何讓自己變成更有效率的程序員。
最近,我把我的從週一到週五的作息規律做了一次較大的調整。很長時間以來,我一直像所有其他程序員那樣工作、休息。但就在 2011 年的下半年,我開始了一項試驗,想看看究竟什麼樣的作息時間能讓我更有效率。這項實驗目前仍在進行中,我並不是像軍人那樣嚴格遵守實驗規定——例如,我也想會早 20 分鐘、或晚 20 分鐘起床——但當前制定的作息規律是這樣的:
早上 4:30 到 7 點:冥想,寫作,目標複查,和家人吃早餐
早上 4:30 起床其實並不是你想像的那麼難。每個人的個人情況都多少有些不同,但人的身體基本上需要每天 7 到 9 小時的睡眠時間。保證你睡眠充足的一個方法是不用鬧鐘自然醒。你只需要早點睡覺,你就可以在早上 4:30 醒來。
起床之後,我會馬上喝上 16 盎司的水——不是咖啡!我很長時間都不喝咖啡了,而且也不太想喝。事實上,不喝咖啡我感覺會更好。然後我會沖個澡;這樣會讓我感覺一個清爽的一天的開始。
每天早上我都會冥想 30 分鐘。冥想的最佳時間是在日出之前或日出的過程中,也就是西方世界的早 6 點之前。我不打算解釋為什麼冥想會對你有好處;網上對此已經有了大量的研究。如果你想找一個關於冥想的書,我推薦《Meditation for Dummies》。儘管書名很怪,但它是我讀過的最好的一本書。
冥想之後,我會花 30-45 分鐘的時間寫博客。我一般會寫 500 到 800 字。我發現,冥想之後立即動筆,通常會一氣呵成,寫的很順利。另外,大腦經過了一夜的休整,狀態非常好,在注意力轉移到其它事務之前,把大腦裡堆積的東西都倒出來清理一下是很有好處的。關於寫作的一個技巧:把這段時間用作對大腦的初步清理。不要去做研究、編輯等。這些事情放在以後再做。
然後是 To Do List(待辦清單) 時間。我會查看郵件,微博,LinkedIn,等等,以及安排下一步要做是任務。說到任務,我遵循 GTD 做事方法,我用 Omnifocus 軟件來管理我的生活。我在 iPad,iPhone 和 MacBook Air(我是蘋果的粉絲) 都裝了它。不錯,作為一個待辦事宜管理軟件,Omnifocus 是有點貴了,但因為我的整個生活都和它有關,這個價格也值了。我通覽一下待辦清單,想想每個事情上的預期目標——所有的事情,從今天要做的小事情,到長期的目標。清單中的每個條目都設定有一個目標,如果沒有目標,我會刪除它。
接著是早餐時間。關於應該什麼時候吃早餐、應該吃什麼的問題上,已經有大量你可以借鑑的養生指導。我嘗試過各種不同的東西。我發現那些富含纖維素,低碳,高蛋白質的東西最適合我。你試過燕麥片加花生醬嗎?好極了!我還喜歡吃一些水果、喝一點茶。還有,我儘量和家人一起吃早餐。有時事情能按照這種願望執行,但有時不行。我的目標是今年一年都要按照這個執行下去。
早 7 點到 11 點:4 個小時的編程時間
這是我用來編程的時間。一天 4 小時也許你會覺得少的可憐,可是我卻發現,在這 4 小時我做的事情能比大多數人一週干的事情都要多。研究顯示,具有固定工作時間表的人比那些隨機工作的人更有效率。對於我來說,這個固定時間是早 7 點到 11 點,每天。這段時間我要做的事情就是編程,不做其它的。有幾個基本的原則:
首先,關掉所有的通信設施——電話,郵件,聊天工具等。沒有讓你分心的事。你可以給少數幾個人保留一個聯繫到你的方法,以防有緊急事情發生。那些真有緊急事情需要找你的人自有辦法聯繫到你,我還沒有碰到過這樣的事。我甚至還教育我的妻子,她通常習慣對所有的請求都立即給予回應,我告訴她要尊重我這 4 個小時的時間。在這段時間裡你應該只幹一件事。千萬不要同時干 5、6 件事情。
第二,中間不要留下休息時間來查看郵件或上網,或干其它類似的事情。原因是:在一個小時裡,我可以開發出 x 個功能。如果我要是連續工作 4 小時,我發現我的產量不是 4 倍,而是 8 倍或 16 倍。當你全神貫注的干某項事情時,相信你也經歷過這樣的體驗。這就是我們所說的大腦的 Flow(流) 狀態。在以後的博客裡我打算多寫一些關於 Flow 的文章。
那為什麼不把這樣的制度應用到整個 8 小時的工作時間裡呢?這是因為人的有效率的狀態是有限度的。人的大腦跟肌肉一樣。你可以在跑步機上持續運動 8 小時嗎?就像我們的肌肉,大腦需要時不時的休息。這種限度依據個人的不同而各異。通過嘗試和根據犯下的錯誤,我發現我的極限時間是 4 小時。
還有一點需要提的是,我並沒有在 11 點設了鬧鐘提示。當我感覺大腦有些疲倦,工作效率開始下降時,我就停止工作。有些天我只工作 3 小時,有時我會工作 5 小時;4 小時是平均值。
我在家工作是為了避開打攪。如果你需要在辦公室裡工作,看看管理部門是否允許你把最有效率的這段時間放在家裡工作。你上班途中的折騰會把早上做瑜伽和冥想獲得的好處給抵消了。在經過了早高峰的喧鬧,還有辦公室裡的嘈雜,你的神經會變的緊張,冥思帶來的效果完全消失。在家工作必定會更有效率的多。
早 11 點到下午 1 點:健身,午飯,購物
我每天都要健身。John J. Ratey 的書《Spark: The Revolutionary New Science of Exercise and the Brain 》對每天鍛鍊的好處做了很好的論證,如果你想知道鍛鍊對大腦功能改進的科學機理,你可以讀一下這本書。每天不做相同的運動,甚至不去相同的健身房。我每週在一個瑜伽館裡做 3 次瑜伽,在一個 spinning 館裡上兩天的 spinning 課,在健身房裡做兩天的舉重,在健身房裡我有個教練。教練幫助了我很多,有人這樣督促你會使你具有更大的動力。
我喜歡在健身房運動,因為那裡有額外的服務。你可以一下用掉 5 條毛巾而不擔心老婆的抱怨。可以花 30 分鐘沖澡而不用擔心門外有人叫喊」你還沒完嗎?「…在家裡你經常會遇到這樣的事。
我還養成了一個習慣就是每天購物,通常是在 Whole Foods,一個離我家只有步行距離的超市。為什麼每天購物?在很多國家,特別是亞洲,人們每天都去購物,而不是一次買足 2 個星期的東西儲存在家裡的冰箱或冷櫃裡。這種方式,你只買了你需要的東西,避免了浪費。很多時候你會發現冰箱裡有些不知是何物的東西,懷疑放在那裡有半年之久了。我午飯在外面吃,Whole Foods 超市裡有不錯的沙拉自助。因為我喜歡日本食品,有時我會來一點日本壽司或盒飯。
下午 1 點到 6 點:學習和交流時間
我儘量會把一些討論、約會時間湊到一起,這樣不必每天都去公司。通常,這些事情包括會議,面試,做報告,指導開發,代碼審查等等。這段時間我不做任何的開發,除非有緊急的 bug 或特殊情況需要處理。
我還用很大比例的一部分時間去學習。我花了很多時間去閱讀別人的東西,從書本到博格,大多與編程相關的東西。我每天都要學到新的知識。保持這樣的學習勁頭的最好的方法是對學到的東西做一些筆記,把相關的知識做寫標記。像 EverNote 這樣的軟件很適合做這種事情。
同時我會看看市場上有沒有其它的產品,最有效率的軟件開發者是不用寫一行代碼就能把問題解決。我不想把別人已經做好的東西再做一遍。所以,在 CodePlex, GitHub 和 Component Source 這些網站上花時間是有好處的。
我從妻子的醫院實習的經歷中得到了一點啟示。新入職的大夫每天早上看病,到了下午,他們會聚到一起討論遇到的各種病症,討論他們是如何應診的。對於我,我會事後反省一下自己做過的事,我會重新思考一下早上編程遇到的問題,在什麼地方遇到了什麼 bug,或反省做報告時的表現,或如何主持的會議,等等。我努力從過失中學到教訓,避免它們再次出現。
下午 6 點到晚上 8 點:家庭時間
我妻子是個醫生,工作很忙,但我們儘量一起度過這段時間。我們會一起做飯。然後我會和孩子一起做家庭作業。(一個二年級的學生竟會有這樣多的作業,這是另外一個話題,我以後再談。)
晚 8 點到 8:30:反省和給大腦派活
我晚上不做冥思,而是換成坐下來反省一天的生活。如果你花上 15 分鐘做在一個安靜的地方反省你的一天,你會吃驚的發現這一天你學到了這樣多的東西,獲得了這樣大的提高。
接下來,我給大腦安排工作。眾所周知,當我們睡眠時大腦是在不停工作的。所以,你最好給它安排點工作。對於我,下面這些事情很有效:我把第二天早上要寫的東西做了個大綱。就像寫便條一樣。我發現把它寫到紙上比寫在電腦裡更有效。
或者,我會看一些編程 / 算法問題。同樣,會紙上描述下來或寫出框架。讓人驚奇的是,很多時候早上起來你會發現已經有瞭解決方案!像這樣的事情我是在一個整潔的、沒有格線的、信封大小的筆記本上寫畫的。在空白的白紙上寫畫會讓我更有靈感。我在晚 8:30 到 9 點間上床睡覺。越早越好。
這就是我一天的作息時間。當然,當我外出旅行時會有些變化;在途中我會花大量的時間來工作。我還沒有告訴你們在週末我都幹些什麼,我會在以後的文章裡講到這些。
我很想聽到其他人關於他們的作息時間的故事,以及他們是如何提高工作效率的。
[本文英文原文鏈接:Daily Routine of a 4 Hour Programmer ]
沒有留言:
張貼留言