時間是程序員最大的資產,如何有效管理自己的時間必須成為程序員的必修課之一。在我過去幾年的工作生活中,深刻感受到開發人員在時間管理上的被動性。程序員是一個高智商的隊伍,每個人在每天都會遇到各種挑戰,接觸到許多新的技術,產生各種行為沖動。但是這些行為沖動往往由於時間和精力的原因無法成為實際,進而產生的挫敗感是會限制程序員的創造力的。這里想推薦一種時間管理概念GTD。
GTD概念
GTD全稱Getting Things Done,來自於David Allen的一本暢銷書《Getting Things Done》。網上流傳的中文版本為《盡管去做:無壓工作的藝術》,有興趣的讀者可以去這里下載
http://ishare.iask.sina.com.cn/f/8657554.html
GTD的具體做法可以分成
收集,整理,組織,回顧,行動
五個步驟
收集:將所有想法都收集到一個收集欄中
整理:定期或者不定期地對inbox進行整理
整理步驟:
能立即短時間完成的:立即花2分鍾完成
不能完成的或者不用完成的:直接放到垃圾箱中
要計划完成的:進行下一步組織工作
組織:
對參考資料的組織:收集完成這個事情需要的文檔資料
對下一步行動的組織:
將計划分為:
下一步行動清單:具體的下一步工作,如果需要很多詳細的更多工作,就細化成具體的工作
等待清單:等待別人做的事情
未來/某天清單:記錄可以延遲處理的事情
回顧:
每周對所有清單進行回顧和更新
執行:
對每份清單任務進行行動,行動時候切記不要思考是否應該執行。
按照所處環境,重要性等來完成清單上的事項
理論上的東西網上能搜索到很多,當然最詳細的就在《Getting Things Done》一書中了。這里就推薦一款應用GTD概念進行時間管理的工具:
Doit.im
這是一款很成熟的軟件,有iphone,android,web版本等。我相信如果你沒有用過它你會很快喜歡上的
界面如下:
第一步將想法放入收集箱
收集箱是最經常使用的,無論你有什么想法,立即將你的想法放入到收集箱中。你會在買菜的時候,逛街的時候,工作的時候偶爾蹦躂出的想法,這些想法都是應該記錄下來的。
第二步要做的是清理收集箱
這個操作會非常頻繁
收集箱中的條目可能有幾個去處:
1 這個事情根本不用去做,去垃圾箱
2 這個事情是很大的事情,(比如“建立一個網站”)去項目欄
3 這個事情是有步驟的,(比如“了解Go語言的底層實現”,可以分解為“收集Go語言的底層相關文章”“閱讀文章”“參照代碼,理解”“寫一篇博客”),將這個事情從收集箱中刪除,將下一步行動放到“下一步行動”欄,其他的幾步放到“擇日待辦”欄中
第三步是每日工作前,巡視下一步行動,等待,擇日待辦欄
將今天要做的事情放到“今日待辦”欄中,將計划明天要做的放入“明日待辦”欄中
后續
我已經使用這款工具兩個星期了,對於它簡便的事件管理功能非常喜愛。個人感覺,這種管理方式能最有效的就是杜絕了腦袋中不斷記掛的“我還有哪些工作沒做”的恐懼。並且GTD比其他管理方法好的地方可能在於它的整理過程。以前對於某件事情即使是很有計划和方案,但是很容易造成事情計划不周全,導致很多事情實際上是半途而廢的,進而計划的任務和喜歡終止。GTD確實能有效杜絕這個現象。
程序員在思考自己的代碼的同時也應該積極思考自己的思維方式和生活習慣。自勉~
GTD資料
百度百科:http://baike.baidu.com/view/406078.htm
時間管理行動家博客: http://www.gtdlife.com/
Doit.im官網:http://doit.im/cn/
使用方法http://note.sdo.com/u/jesse_luo/n/sCPcz~jFa1VMLX0jM00066
GTD中文電子書 http://ishare.iask.sina.com.cn/f/8657554.html
GTD案例分析 http://www.gtdlife.com/2009/1310/kaixinwang-to-time-management-is-a-disaster-1/