不想浪費時間的程式設計師之道(上) - Precondition


(照片來自於駭客任務的劇照)

我不是什麼很牛逼的程式設計師,不像電影裡頭演的電腦駭客,一坐在電腦前手指就開始不停地在鍵盤上飛舞。我也不像網路上的一些大師,隨時都在玩最火熱的技術在開發,知悉所有框架介面用法和規格定義。

我大部分的時間都是在電腦前追蹤自己或是別人寫出來的蟲子,更多的時間是用Copy Paste別人的程式碼然後做些小小的修改,能碰到新東西的機會並不多。想要擠出些多餘時間來精進自己專業知識,有效率地快速完成老闆交付的工作就是我努力想要達成的目標。

這篇文章是自己這些年實作下來的野人獻曝文,文章會寫得很簡短直白,我自己正在用的工具程式也會附在文內,參考書目寫在最後面。按照我的工程師思維,本系列文分成以下四個部分:

  • Precondition :營造一個好的工作環境。
  • Input:決定要做哪些工作。
  • Process:利用一些方式有效率地工作。
  • Output :工作告一段落之後。
歡迎大家留言討論,也許是您自己另外又寫一篇完整文章來分享自己的作法(歡迎留下您的文章連結),那就更棒了!

Precondition

什麼時間做什麼事

花個一個星期觀察自己,甚麼時段自己的大腦處於一個絕好調的狀態,甚麼時候是自己腦殘時間,整理出自己一天當中的大腦狀態曲線圖。我們之後就可以根據這張曲線圖,將困難的工作安排在大腦的絕好調時段,其他時間則是處理一些比較不需要大腦的工作。

創造出一個你會想待的地方

善用抽屜、文件夾和書櫃來收納工作上所需要的東西。東西放在固定的地方,讓自己用身體反應去找需要的東西,而不需要花時間腦力去找。整齊的桌面也釋放出一切都在掌握當中的印象,無形中也會減少自己心理上的壓力。



如同實體桌面,電腦的桌面也同樣地需要整理。整齊的桌面、有規則的檔案命名之外,如果同時開起許多程式,善用虛擬桌面(Dexpot)的功能,將不同類型的程式放在不同的桌面,用切換桌面的方式來取代在工具列上尋找程式。個人習慣使用四個桌面,一是上網收信,二是寫程式,三是各種Console介面,四是文書作業。所有工作被分成四個桌面,在接到工作的瞬間,便能快速切換到對應的桌面開始執行。

替自己創造靜默時間,工作在被打斷之後,我們需要更多的時間來進入狀況。早點進公司,利用這段沒有人打擾的時間來完成昨天沒有完成的工作。嚐試在離線模式下工作,別分心在與工作無關網頁上,然後在固定的時間點收信,而不是讓電子郵件不斷地中斷你。

一台速度快的電腦很直接地節省了程式設計師開發的時間。使用大螢幕可以顯示更多的程式碼,雙螢幕可以減少在程式碼與實作規格切換的時間。一個好的人體工學鍵盤能保護手腕關節。滑鼠支援上一頁下一頁功能的按鈕,方便我們在龐大的專案程式碼下跳躍。最後是一張好的椅子,這絕對值得投資不要跟自己的腰過不去,我只想說我看病都不只一張好椅子的錢了。待續…

參考書目:

7 則回應:

jain 提到...

嗯~~
如果很寫完整版可能要考慮另開文章了~~

就我個人來說,由於接手的事情太多,
包山包海啦,不只是純工程師了~~~

我的習慣:
1-檢視每星期要完成的工作
2-在早上處理緊急且重要的預排工作
3-任何電話只接不處理(除非影響客戶)
4-處理客戶不合理的要求
5-下班前再檢視每日工作內容

思考、研究回家再想,
環境部份倒是沒差,只有心情要調整好。

以上是每天行程

[ 小黑宅 ] 提到...

下班後帶小孩? XD
我對你下班後的安排比較有興趣

Lilit / 驢子 提到...

好強! 我寫不出這種文章
以至於我工作效率一直都不高..苦

請唐哥 多多分享

我會照作的!

[ 小黑宅 ] 提到...

-.. -
唐哥聽起來很像劉欽興漫畫中會出現的名字

我怎麼覺得寫很爛
不過我這篇想寫很久了
你看書單就知道了

tzangms / 小海 提到...

真的, 跟我一樣買張三萬八的椅子應該可以減輕腰的問題!

[ 小黑宅 ] 提到...

寫程式的一定要有張好椅子阿
老闆不買給你 你自己也要買一張
但後遺症是其他椅子我都會坐不住

http://www.hermanmiller.com/global

[ 小黑宅 ] 提到...

http://www.nurgo-software.com/products/aquasnap

AquaSnap