1976年生 ●學經歷:臺灣大學電機工程博士,於清華大學資訊工程系取得碩士與學士。原名陳寬達,曾擔任 Windows 及系統程式設計師、業界程式設計課程講師、技術書籍及雜誌專欄作者、共享軟體作者及 BBS 開發者/站長等工作,並著有《Delphi 深度歷險》、《C++Builder 深度歷險》等書 ●個人的中文網站連結網址:www.iis.sinica.edu.tw/~swc/index_c.html | |
假如想撰寫Windows程式碼,Delphi、C++ Builder是一直是過去許多人心中的首選,而在推廣這個開發環境裡最知名的人物中,有一位很引人注目,那就是陳昇瑋(先前他的名字叫做陳寬達)。他既 是兩本相關電腦書籍的作者,十多年前,也和同樣熱中於程式開發的錢達智,一起創辦了DelphiChat/BCBChat電子郵件討論群(即 Programmer 深度論壇網站的前身)。
學生時代即嶄露頭角
事實上,早在清華大學資訊科學系就讀期間,陳昇瑋已經開始投入很多心力在IT上,像是擔任楓橋驛站BBS的站長,負責站務維護與程式發展,同時也 成立Delphi和C++ Builder的程式設計技術討論社群。至於當時非程式開發的進階使用者而言,也可能聽過他這號人物,例如他曾經擔任HopeNet光碟月刊的技術編輯, 負責精選許多好用的共享軟體與免費軟體,此外,他自己也寫出好幾套遠近馳名的共享軟體,像是XDesktop、XthemeManager、XMP3 Manager、XViewer、Xchat(當時他在網路上的暱稱叫做Xshadow)。
歷經許多令人津津樂道的事蹟,然而在2000年以後,就越來越少從IT界聽到他的近況。原來,他當時決定選擇回到學術研究的領域,繼續完成研究生 的學業、拿下博士學位,並以閱讀論文與發表研究成果為樂,而這樣的狀態和他現在的身分息息相關──中央研究院的資訊科學研究所助研究員(等同於大學裡的助 理教授),同時主持了多媒體網路與系統實驗室。
尋找無可替代的自我價值
陳昇瑋之所以離開IT領域、走到學術的懷抱,他提到有下列幾個原因。
首先,就像許多IT人所認為的,單靠IT來謀生太辛苦,需要花很大的力氣,而且似乎永遠無法停止腳步休息。
對於工作這檔事,陳昇瑋原本打算用SOHO的方式講課和接案。於是他到中科院、園區和資策會,主講關於開發的課程,但他後來看到即使本身經營得相 當成功的前輩,仍然得戰戰兢兢地工作著,才能將生活過好,因為不工作,就不會有錢。他認為,這樣就像《富爸爸,窮爸爸》書中所說,消費模式是花辛苦賺來的 每一分錢,只能靠節約費用和儲蓄,而無法獲得財務和生活上的自由。
等他投身學術之後,雖然收入變少、薪資變固定,但他很清楚所要的目標和生活,為了更專注在這些事情上,因此也不再接案,該休息的時候就休息,不讓自己受到外務影響。
離開既有生活的第二個理由是,技術上雖然一直在進步、相關的名詞不斷推陳出新,但工作過程中令他覺得興奮的大突破,似乎越來越少,許多應用的原理 法則和底層架構,幾乎都是萬變不離其宗。他所面臨的是更多非技術上的挑戰,像是受限於人力、時間與資源的配置,花費很多心力、體力在開會協調,而非完全專 注在IT開發或疑難排解上。
最後也最關鍵的考量是,陳昇瑋理解到在很多工作當中,「你」很重要,但沒有「你」,也還是能做到。
每個人可能在公司工作得很愉快、很有成就感,但根據他的觀察及周遭同學的經驗,他發現若有一天被裁員,原本該進行的工作,還是會繼續,公司仍然可以賺錢或研發出新的產品。
綜合這些考量,他決定尋找別的出路。也因為當時在念碩士班,在學術研究當中,他找到最能滿足自身理想的答案。
在研究的領域,陳昇瑋認為其實有趣的議題非常多,絕對不用擔心做完,而且可以完全由自己主導──有些偏重理論性的議題,只要一個人作即可,即使是實作型的題目,自己帶領兩三個學生就可以研究。
從這樣的歷程來看,陳昇瑋最想要做的是具有獨創和原創特性的事情,一旦達到他所預期的成效,會讓他更清楚地知道「沒有我,就沒有這個研究」,因為挑戰無窮,所以覺得每天都過得非常充實,而且明白自己的價值。
成為學者,他不光研究理論,也捲起袖子繼續寫程式
在電腦科學的領域,有人專攻理論,而陳昇瑋最近主要的研究對象,是關於Skype、MSN Messenger等即時通訊軟體的語音品質和視訊品質,他在去年曾發表關於量測Skype使用者滿意度的方法,而要做到這件事,必須要靠寫程式來監看、 量測網路應用程式的行為及效能。
在這樣的過程中,陳昇瑋說,程式一定要寫得夠快、夠有彈性,快是因為有些因素無法預測,必須要不斷想方法去嘗試、改進,因此程式開發功力和速度會非常重要,實驗進行的期間,他和參與學生們都必須克服這項挑戰。
由於陳昇瑋本身具有程式設計的實戰經驗累積,這難不倒他,但他要和所帶領的學生一起完成這項工作,所以如何提升整體戰力是當務之急,雖然他自認快 十年沒有好好寫程式,不過要幫學生Debug、看出程式執行上有沒有效率,能否善用物件導向和事件驅動的概念來開發,他還是能一眼就看出好壞。
此外,他們並不需要特別去關注系統建置的平臺和解決方案。以視訊串流的實驗來說,若有系統提供最好用的函式庫,他們會想辦法搭配出來,因此有可能 網路控制軟體會用FreeBSD來架設,而串流處理就用Windows或Linux。對他來說,一個實力堅強的Programmer,不會受限於任何工 具、平臺,因為他們已經掌握了關鍵的概念、以及各平臺常用的技術,而且具有基本的演算法的掌握能力,若需要寫一個最短路徑(Shortest Path)或快速排序(Quick sort)等演算法,你隨時可以寫得出來,而不只是會用遞迴的方式來解開發需求。
將兩件事做到85分很厲害,但將一件事做到95分更重要
從完全投身IT界到完全投身學術界,作家劉墉說過的一段話影響陳昇瑋做了這個決定。這段話的意思是如果你今天在一個山頭上,看見另一個山頭想上 去,第一件事得先下山,因為你不可能同時站在兩個山頭上,這是劉墉對於自己從中視記者毅然離開、成為作家的告白,對陳昇瑋也很感同身受,他只想完全歸零, 連以前BBS的ID(Xshadow)都不再使用。
對於決定人生的方向,他建議要想清楚之後就絕對不要改變,因為一個人絕對沒辦法同時站在兩個山頭,沒辦法同時做兩件事做到好。他眼中的「好」,是指登峰造極。如果能將兩件事做到85分,那表示很厲害,但將一件事做到95分更重要。
全心全意、專注心思很重要,他說:「如果要做到好、非常好,你一定要一次Focus在一件事。」,陳昇瑋從高中以後,很少花時間去看電視及報紙, 但他發現其實不會錯過重要的訊息,因為在路上都會聽到別人耳語,或遇到人聊起相關議題,所以他決定不為那些事分心。相較之下,如果能聚精會神,把很重要的 事作好,並且真正把自己的潛力發揮出來,他覺得是更美好的。
他說:「如果你有空跟別人說你很忙,如果你還記得打開BBS或開新聞網站的,那表示還不夠忙、不夠投入。」雖然沒必要365天都心無旁騖地工作或 學習,但陳昇瑋認為,一個人若有潛力就該盡量發揮;除了要醞釀、收集情報和思考之外,也要努力將所知道的,加以創作、實現出來,這樣,創意才會源源不絕。 文⊙李宗翰
http://www.iis.sinica.edu.tw/~swc/index_c.html
沒有留言:
張貼留言