發表文章

目前顯示的是 1月, 2008的文章

Context Switch與Mylyn

圖片
作業系統有Context Switch, Programmer也會有Context Switch問題(可以參考蔡學鏞的 無所不在的Context Switch 一文), 作業系統的Context Switch可以達到多工的效果, 但是Programmer的Context Switch確會讓工作失焦, 並且降低生產力. 我自從開始當Programmer就有這樣的困擾,PM跑來問工作進度, 同事寫程式遇到問題求助, Release的軟體在客戶端發生了問題, Sales接到新的客戶Request ...... 不知您是否跟我一樣, 當這些外部的Interrupt產生後, 要再回到原本進行的工作, 原本快寫好的程式, 確要再review一次重新整理思緒再繼續未完成的工作, 這個重新整理思緒的時間會隨著所處理的code size增加而增加, 所以Programmer的Context Switch對於專案的進行實在不是什麼好事. 不過自從接觸過了 Mylyn (原本專案名稱為Mylar), 這個工具簡單說來就是在解決Programmer Context Switch的問題, 我用現在正在進行的CBGanttProject專案為例, 如下圖示 當Task 1047為Active時,Mylyn以這個Task為Active Session, 在開發階段,Mylyn就在背景開始紀錄你所做的每件事, 包括你點過的Class, member function, 修改過的function,檔案等等, 所以當Programmer突然工作被中斷, 要去處理其它事務時, Mylyn等於像是OS的Context switch一樣,已經幫Programmer的Task Session紀錄起來, 當Programmer再度回到這個工作時並將這個工作設為Active, Mylyn就會很快喚醒Programmer的記憶,開啟之前為這個工作所修改的function or files. 聽起來很神奇, 不過Mylyn真的做到了. Mylyn目前只能support Eclipse IDE這是比較可惜的一件事,不過Eclipse在目前軟體開發也算是有一席之地,Google的Android開放手機平台,Eclipse就是Google官方指定開發工具,還有未來低價電腦當道,目前兩大低價電腦EeePC與O

重啟CBGanttProject專案

圖片
最近又開始維護 CBGanttProject , 也完成了較完整的 操作手冊 ,原本一直想將CBGanttProject porting成Web application , ZK 是我屬意的AJAX Framework,但是前一陣子又看到了 RIA ,又開始思考是否直接跳到RIA, 不過思考許久, 還是很質疑RIA是否可以完成取代Fat client application? 如果我花太多時間在Web framework的porting ,確沒有達成客戶或是市場的需求, 最後也是白忙一場, 所以又重拾起Swing程式設計, AJAX和RIA雖然看起來很迷人, 但是還有一大段路要走,不過我還是期望未來能有更好的Web Framework可以輕而易舉的將既有的code porting過去, 我現在看到的Web Framwork還是無法實作像GanttProject這樣的Fat client的操作流利性. 所以Fat client應該還能再存活一陣子應該沒問題:-)

海星與蜘蛛讀後心得

圖片
Ori Brafman and Rod A. Beckstrom 著 / 洪懿妍 譯 ISBN:9789573260622 出版社: 遠流出版社 這一本書是我在上次的教育訓練中介紹給來上Wiki教育訓練的學員, 我將這一本書列為維基經濟學的衍生閱讀, 如果說維基經濟學是在闡揚開放與分享的光明面與如何應用開放的力量, 海星與蜘蛛這一本書卻是在教導如何調整企業的組織與策略來面對競爭對手開放與分享的衝擊. 維基百科網站與大英百科全書就是一個海星與蜘蛛的經典案例之一, 如果開放與分享是占上風的, 那麼略遜一籌的那一方要如何去面對? 這是維基經濟學這本書所較少提及的, 海星與蜘蛛一書作者的企圖心是可想而知的, 從了解海星與蜘蛛的特性, 進一步使用各種案例來說明, 最終提出因應策略. 為什麼作者要使用海星與蜘蛛為書名? 海星有一個特性, 海星沒有頭, 當海星被切成一半時, 海星不會死掉,而會變成兩隻海星, 蜘蛛要將它置之於死地則簡單多了, 只要將它的頭砍掉, 蜘蛛就死掉的, 海星在此書中所代表的是一種分權組織, 而蜘蛛所代表的是一種中央集權組織. 分權式受到打擊時並不會隨之潰散,反而愈加強大, 作者使用一個知名的歷史案例,西班牙軍隊與古老部落阿帕契族之間的戰爭來說明, 當看完這個案例, 隨之讓我想起了當年的國共內戰, 如果想知道國民黨輸掉的原因,也許海星與蜘蛛提供了另一個解答. 在看這本書的前半部, 其實心裏感到有點擔憂的, 因為作者似乎一面倒,使用P2P音樂下載與OpenSource的案例大力宣揚海星式分權組織的優勢, 雖然P2P與OpenSource不能混為一談,但是其分權式組織的特色確是相同的,對於有組織有實體的公司而言, P2P與OpenSource都是一個無形的競爭對手, 當公司所面對的競爭者是沒有實體的組織, 就像對空揮拳一樣, 永遠也找不到著力點. 不過當閱讀到第六章後, 作者似乎給了一點光明面:海星組織雖然具有頑強的生命力, 但並不是豪無攻克方法, 作者列舉了打擊海星三大策略 改變意識形態 把他們集中化 讓自己分權化(打不過他們, 就加入他們) 對於改變