你在編程的時候,浪費了多少時間?
英文:Carol Jon
譯文:伯樂在線 - HansDo
鏈接:http://blog.jobbole.com/99167/
既然在讀這篇文章,那你大概跟我一樣是一名程序員。不論你是在做自由職業,還是受雇於一家公司——時間,都無疑是程序員最值錢的財產之一。
即便如此,開發者們卻常常發現,他們總是被項目本身牢牢吸住,而並沒有留意是否很好地管理了自己的時間。
這篇博客提供了一些可行的建議,可以用來提高生產力並跟蹤那些在編程中被浪費掉的時間。這裡有五個問題,我們將從這些問題展開。
1. 你有給任務劃分優先順序嗎?
新的一天開始的時候,作為有能力自由選擇任務順序的一個工種,開發者們經常會從最簡單的任務開始著手。
簡單的任務當然能讓一天有一個輕鬆的開端,但同時那些迫在眉睫、讓人望而生畏的任務卻被推向了這一天的末尾。
而這會產生更多的壓力,並最終導致你沒能把最重要的事情完成。
這就是為什麼開發者應當先花一些時間,把每天的任務分出輕重緩急,並從列表中最緊急的事情開始做起,這樣才能將時間的價值最大化。你可以選擇簡單地用紙和筆來做規劃,也可以試一下 Trello 或 Producteev 這樣的任務管理工具。
劃分任務優先順序並不意味著,如果某件任務無法取得進展,你就只能一直耽擱下去 —— 如果你在這一件事上被困住了,那僅管跳到下一項任務,等隨後有了進展再回頭處理好了。
2. 你有管理各種干擾嗎?
多數人不會意識到,他們一天中有多少時間是被各種干擾擄走的。如果程序員們不能努力地消除它們,干擾將會嚴重地影響生產力。
如果你在家辦公,請確保有一個獨立的工作空間。在辦公室,則要保持桌面的整潔,因為 亂放東西會降低你的效率 。同時請盡量避免使用那些對工作並不必要的網路應用,如電子郵件,聊天工具,臉書,YouTube 等等。
如果你(像我們中的許多人一樣)是個微博控,是有一些工具可以用來幫助你改掉這種習慣的。Windows 平台下的GetColdTurkey.com、 Mac 上的 SelfControl.com 都可以屏蔽來源於預設網頁的干擾,所以好消息是,你不必為了避免這些干擾而關掉 WiFi 了。
3. 你有抽出時間休息嗎?
許多開發者因為一次工作的時間太久而扼殺了自己的生產力。就在前不久,我需要在一個項目中 刪除惡意勒索軟體,我一刻不停地埋頭苦幹了 8 個小時,但最終又沮喪又累成狗的我並沒能成功。而就在我試著進行休息調整、理清了思緒後,只花了半個小時我就搞定了這個問題。
『休息』這個詞聽起來跟『高效』是背道而馳的, 但事實並非如此。多個研究 表明每小時休息一次事實上可以提高效率,而且是創造力的來源。
那些最有效率的開發者都會認真對待他們的休息時間 —— 遠離電腦,並做一些完全不同的事情。所以,刷十分鐘的微博可算不上是一種很好的休息(這才是真正的浪費時間好嗎)。
4. 你有給任務設定時限嗎?
項目所設定的最後期限往往是開發人員各種憂慮和壓力的源頭,但實際上卻不能產生多少動力。但如果是短期且實際的期限設定則截然不同。
與其用『這個項目一定要在這星期搞定!』 這樣的話來激勵自己,不如想一些在當天工作里更加具體可行的期限。例如一個任務大概要兩個小時完成,就把期限設定成『2:30 前完成某件事。』
這種時限臨近的緊迫感是極其有效的推動力,尤其是當你給自己達成目標設定一些小獎勵(例如休息15分鐘)的時候。
5. 你有專註在目標上嗎?
無論從事何種類型的工作,開發者們總是有多方面的事情要處理。如果同時關注完成任務所需要的所有事情,那你一定會被淹沒在細節之中,以至於進度停滯不前。
在歸納整理你的當日待辦事項時,考慮到細節是有必要的,但你不該一整天都想著這個。為了避免過度的壓力和隨之產生的拖延症,更有益的做法是把關注點放在那些更大的目標和最終產品上,因為這些才是實實在在、可以一步步去應付的事情。
我的時間都去哪了?
許多技巧和訣竅都可以幫助開發人員避免在編程時浪費時間。但應對效率低下的最好方法是統計時間的去向,從而認識到這些被浪費的時間會在多大程度上影響你每天的工作。
在像 TimeDoctor 這樣的時間跟蹤工具的幫助下, 跟蹤時間變得相當簡單。 TimeDoctor 能幫你自動記錄在不同項目上所花的時間,這樣就不用你自己動手了。
它還可以精確地顯示你在社交媒體、查收郵件或瀏覽網頁上花費的時間。每個小時刷臉書的那幾分鐘累加起來的數字可比想像中要大得多。
而一旦知道了『時間都去哪兒了?』這個問題的答案,你也就可以用上面所述的技巧把它們都找回來了。
推薦閱讀:
※從1+1到混沌 | Mathematica系列教程·第一集
※大家都在用 Node.js 幹什麼呢?
※編程入門的第一課——建立編程思維
※關於在坐標系中旋轉平移物體的理論基礎解析
※7.18