不想浪費時間的程式設計師之道(中) – Input & Process


(照片來自於型男飛行日記的劇照)

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

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

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

  • Precondition :營造一個好的工作環境。
  • Input:決定要做哪些工作。
  • Process:利用一些方式有效率地工作。
  • Output :工作告一段落之後。

歡迎大家留言討論,也許是您自己另外又寫一篇完整文章來分享自己的作法(歡迎留下您的文章連結),那就更棒了!

Input

人生沒有全拿這種事

"人生沒有全拿的"是我自己常對自己說的一句話,人的時間有限,但是慾望無窮,我們只能挑出幾個想要的目標來完成。工作也是一樣的道理,根據"重要"和"緊急"這兩個參數,就可以將工作分成四個優先權等級。

  • 重要 + 緊急
  • 重要 + 不緊急
  • 不重要 + 緊急
  • 不重要 + 不緊急

我習慣上是事情一來就分類後,按照約定時間或結案時間填入Google Calendar中,然後把最近幾天需要完成的工作填寫到To-Do List上。To-Do List也許只是一張放在桌面上的紙或是一張貼在螢幕旁的便利貼。要作的事情寫下來,寫的東西放在固定的位置,隔天很容易就能切換回原來的狀態,有了這份安心感,回到家大腦也不會被尚未完成的工作所佔據。

寫到這邊,其實我覺得這部分用Filter反而比較貼切! XD

Process

學習

三分鐘念完一本書

閱讀時不是逐字逐句讀懂才往下讀下去,不要求第一次就完全讀懂,第一次用快速掃描的方式將整本書翻完,閱讀的同時用直覺將重要的部分折頁。第二次閱讀針對折頁部份劃線或是筆記,爾後有空就翻這些重點部分,這些重點在不斷地反覆閱讀下,很容易內化成自己的基本常識。

說起來很玄,但舉個例子,有人問Kobe執行最後一擊會不會特別緊張。他回答說"這些投籃我每天都練習很多次了,對我來說這就跟打噴嚏這種身體反應一樣。你打噴嚏會緊張嗎?"

紙上談兵

記錄我會選擇不需要花太多時間的方法,因為人容易抗拒丟棄花時間作出來的東西。所以我選擇的工具都是,很容易完成,很容易修改,當然也不會排斥丟掉重新寫一份。

我大多使用純文字格式作些簡單的記錄,理由是不會有轉換或沒有辦法開啟的問題。

需要創意發想或是整理想法的時候我會使用心智圖(XMind),好處是圖形容易激發人的聯想力,另外不論是軟體還是用筆畫都很方便重新調整架構。

需要作投影片的時候,我會選擇高橋流投影片,同樣有簡單意修改的特性,當然視狀況最後我會修改成比較比爾蓋茲流的投影風格,但相對來說來是簡潔許多。

程式碼是程式設計師最好的朋友,但在時間許可的情況下,我還是比較喜歡用UML工具(ArgoUML)來設計自己的架構或是了解其他人寫的程式碼。UML產出的圖形可以作為設計時的參考,也可以保留作為設計文件的概念圖。

待續…

參考書目:

6 則回應:

jain 提到...

最近也在用心智圖,
圖片比文字好連想~~~

Krizsan 提到...

Good writing and thinking, little Black!
I am proud to have been your colleague!

[ 小黑宅 ] 提到...

J
右腦跟左腦一起運作才是王道

Ivan,
It's my pleasure to have worked with you.
>..-

[ 小黑宅 ] 提到...

來自 電腦玩物

* Events(事件、約會):確定某個(段)時間要發生的事情,我必須在這個(段)時間去做這件事。

* To Do(工作、待辦事項):接下來需要做的事情,不一定什麼時間點要做,但是我不能忘記,而且可能必須在某個時間點之後開始做,或者是在某個時間點之前完成。

這就是Rainlendar裡面Events和To DO的基本區別,而也由於兩個目的歧異,所以它們分別具有不同的功能設計。

DiskLin 提到...

高僑流也太好笑

[ 小黑宅 ] 提到...

我公司內報告用過一次
主管傻掉
反應很冷

從此改回用比爾大叔流