(照片來自於駭客任務的劇照)
我不是什麼很牛逼的程式設計師,不像電影裡頭演的電腦駭客,一坐在電腦前手指就開始不停地在鍵盤上飛舞。我也不像網路上的一些大師,隨時都在玩最火熱的技術在開發,知悉所有框架介面用法和規格定義。
我大部分的時間都是在電腦前追蹤自己或是別人寫出來的蟲子,更多的時間是用Copy Paste別人的程式碼然後做些小小的修改,能碰到新東西的機會並不多。想要擠出些多餘時間來精進自己專業知識,有效率地快速完成老闆交付的工作就是我努力想要達成的目標。
這篇文章是自己這些年實作下來的野人獻曝文,文章會寫得很簡短直白,我自己正在用的工具程式也會附在文內,參考書目寫在最後面。按照我的工程師思維,本系列文分成以下四個部分:
- Precondition :營造一個好的工作環境。
- Input:決定要做哪些工作。
- Process:利用一些方式有效率地工作。
- Output :工作告一段落之後。
Precondition
什麼時間做什麼事
花個一個星期觀察自己,甚麼時段自己的大腦處於一個絕好調的狀態,甚麼時候是自己腦殘時間,整理出自己一天當中的大腦狀態曲線圖。我們之後就可以根據這張曲線圖,將困難的工作安排在大腦的絕好調時段,其他時間則是處理一些比較不需要大腦的工作。創造出一個你會想待的地方
善用抽屜、文件夾和書櫃來收納工作上所需要的東西。東西放在固定的地方,讓自己用身體反應去找需要的東西,而不需要花時間腦力去找。整齊的桌面也釋放出一切都在掌握當中的印象,無形中也會減少自己心理上的壓力。如同實體桌面,電腦的桌面也同樣地需要整理。整齊的桌面、有規則的檔案命名之外,如果同時開起許多程式,善用虛擬桌面(Dexpot)的功能,將不同類型的程式放在不同的桌面,用切換桌面的方式來取代在工具列上尋找程式。個人習慣使用四個桌面,一是上網收信,二是寫程式,三是各種Console介面,四是文書作業。所有工作被分成四個桌面,在接到工作的瞬間,便能快速切換到對應的桌面開始執行。
替自己創造靜默時間,工作在被打斷之後,我們需要更多的時間來進入狀況。早點進公司,利用這段沒有人打擾的時間來完成昨天沒有完成的工作。嚐試在離線模式下工作,別分心在與工作無關網頁上,然後在固定的時間點收信,而不是讓電子郵件不斷地中斷你。
一台速度快的電腦很直接地節省了程式設計師開發的時間。使用大螢幕可以顯示更多的程式碼,雙螢幕可以減少在程式碼與實作規格切換的時間。一個好的人體工學鍵盤能保護手腕關節。滑鼠支援上一頁下一頁功能的按鈕,方便我們在龐大的專案程式碼下跳躍。最後是一張好的椅子,這絕對值得投資不要跟自己的腰過不去,我只想說我看病都不只一張好椅子的錢了。待續…