微軟在今年4月中,舉辦了第二次的IE9黑客松競賽,這個比賽是程式設計的長時間開發競賽,參賽者必須在長達7個小時的時間內,設計出符合題目要求的網頁應用程式。而在眾多參賽者中脫穎而出,現年29歲的柯志杰,目前正在中華電信服研發替代役,而且曾經翻譯過不少日文的程式語言的書籍。

小學五年級就確定將來要做IT人

民國71年次的柯志杰,在國小五年級,就已經知道自己將來會踏上IT這條路。當時他第一次接觸的電腦是一臺286的XT 8088,這臺電腦並沒有內建硬碟,且全部程式都要使用5.25吋的軟碟片安裝,而操作時因為沒有圖形介面,僅能依靠鍵盤下指令。

最開始使用這臺電腦的過程中,柯志杰單純因為覺得可以透過鍵盤與電腦產生互動很有趣,而後來有電腦書籍的介紹之後,他發現到原來可以透過巨集自動將許多事情快速完成,因此他就開始學寫巨集。當時他並沒有察覺自己是在寫程式,只以為是操作電腦的方法。

經過一段時間的學習與實作,累積了一定經驗,而具有寫程式的功力,也讓他有了不同於其他人的大學入門之路。這有另一個機緣──所處環境的風氣。當他就讀成功高中時,有個比他大兩屆的學長,因為參加軟體設計比賽得名,而保送臺灣大學,因此那段時間同校的電腦研習社成員,參加軟體設計比賽或是資訊科能力競賽的風氣很盛,而柯志杰也不例外。

有一年,軟體設計比賽與資訊科能力競賽,在臺北市這一區比賽時,正好採用BASIC為比賽語言,而柯志杰從小就開始接觸而且很熟悉BASIC,因此對他而言,這如同家常便飯,他很順利地拿到一等獎,不過在全國比賽的時候,主辦單位在兩週前才臨時通知,要改用C語言和Pascal來實作,因此他只好趕緊惡補,最終只拿到3等獎,無緣藉由比賽保送大學。不過他最後還是透過推薦甄試進入東海大學資訊工程系。

柯志杰開玩笑的說,當時模擬考的成績很不理想,若不是透過推薦甄試的方式,會念到哪個學校也不知道。另外,也因為這些參賽的經驗,讓他日後面對比賽時,比較不會有畏懼的感覺。

專門翻譯日文的資訊相關書籍

進入大學之後,柯志杰身邊許多人都開始嘗試接案子打工,例如幫別人架網站或是寫網頁之類的,但他認為自己的個性不適合服務業,加上每個人在學生時代都喜歡到處玩,不想被工作綁死,這不只是學生,所有的工作者都希望錢多、事少、離家近,若能找到一個可以在家裡自己安排時間的工作,是很多人的夢想,柯志杰也基於類似的考量挑選了書籍翻譯的工作。

相較於打工、家教,譯書的所得對一個學生而言是還滿豐碩的。而且柯志杰還有一項才能是同年齡者所少有的──日文。高中就學日文的他,看到當時各家電腦書籍的出版社都以英文書為主,只有博碩文化在翻譯日文的電腦書,而且當時正在徵日文翻譯人員,便去應徵並且順利錄取,5年內他一共翻譯了25本電腦相關的書籍。

柯志杰滿有膽識的,譯書要有一定的語言程度,時間掌控上也要有紀律。因為翻譯書籍有時間的限制,大約40天左右就要譯完一本書,而內容比較多的書可能會用到更多的時間。因此當時柯志杰只要一下課,就回宿舍繼續翻譯,甚至將原文書帶在身邊,一有空擋就拿出來閱讀,並且思考如何翻譯比較妥當。

柯志杰表示,翻譯和一般看書不同,因為必須詳讀書中的每一句話,這讓他的電腦技術底子打得更深,而且過程中,有些內容由於有臺日之間的差異而要修改,所以必須和原作者聯繫,因而相識。後來等到他就讀研究所、申請到日本當交換學生的期間,就和一位日本他所譯的書作者見到面,約他出來喝杯咖啡聊聊天,是個很特別的經驗。

在翻譯了這麼多本日文書之後,柯志杰深深覺得不能再這樣下去,一方面因為要花很多時間與精力,而且最主要的理由,在於他習慣在夜深人靜、沒有干擾的時候工作,但是這時間就會不斷吃東西,因此那段期間他體重增加了許多。

赴日當一年的交換學生

柯志杰申請去日本當交換學生,對他也是很特殊的經歷。當時通過申請的,多數以日文系的學生為主,而當時就讀資工所的柯志杰在申請成功之後,因為系辦並沒有相關申請的經驗,等到校方連絡並通知到他的時候,離截止只剩三天,幸好他在接到通知之後,順利將所有必須文件備妥,才在研二的時候順利去日本大分大學留學一年。

以研究生的身分出國,在國外的那一年裡,他卻是在大學部上課。撇開語言的能力仍有一些不如當地學生的因素,去那裡所修科目的資訊課程內容,對從大學二年級開始就翻譯日本原文書的柯志杰來說,都是非常熟悉的。因此他當時就特別選修資訊以外的學科,例如經濟學等日本大學一年級的通識課程。

在那段時間,因為飲食習慣與臺灣相差很多,在強烈思念家鄉美食的情況下,柯志杰決定自己下廚,買了食材之後,找住同一宿舍的交換學生學煮菜,因此原本只會煮簡單料理,如炒飯的柯志杰,後來學會了如何殺魚、做菜,甚至連蘿蔔糕都自己做了出來,果然絕境會逼出一個人的生活潛能。

參加第二次黑客松並獲得冠軍

服役中的柯志杰也沒把自己的興趣和實力擱下,在今年4月,微軟舉辦了第二屆的黑客松比賽,透過網路得知消息的柯志杰,便決定參加。

比賽前,他研究過上次的題目,賽後他有些心得。這兩次黑客松比賽,都有2個題目讓參賽者選擇,而本次比賽的題目是賽車與圖形驗證碼,就是參賽者要在7個小時內做出一個賽車的網頁小遊戲,或是圖形驗證碼的功能。他說,解題上和第一屆黑客松最不一樣的地方是,第一屆的前三名都是兩個題目之中選1個,而這次包括柯志杰在內的前三名卻不約而同地,將兩個題目混在一起做,而且每個人的詮釋方式都不同。

以柯志杰的作品為例,執行上有一個特殊的遊戲規則──使用者在玩賽車的時候,必須同時注意旁邊出現的驗證碼,並且在終點將看到的驗證碼輸入,而柯志杰就靠著這個作品,成功拿到冠軍,並且將獎品抱回家。

雖然贏了,但是柯志杰笑著說,在比賽之前他本來是抱著去比賽會場吃吃喝喝,看能不能順便抱一臺遊戲機回來而參加競賽,不過在得獎並獲得遊戲機後,才發現自己根本沒有時間玩遊戲。因為現在下班回到家,連打電動的興致都沒有,而且為了早起上班,都很早就睡,甚至他原本的PS3也已經將近半年沒有拿來玩遊戲。

為了解決日文內容複製、接上問題,推出Unicode補完計畫

他另一個比較特別的事蹟,你可能用過或聽過的,就是Unicode補完計畫,目的是讓Windows的Big 5中文內碼可以儲存日文字碼。

Unicode補完計畫的使用者很多,但是罵聲也不少,因為這個程式並沒有很完整,且需要一些設定,對許多不懂使用的人來說,一不小心就會讓作業系統變得不穩定,因此引來批評。Unicode補完計畫現在還在持續改進與維護。這個程式的開發僅花了柯志杰3天,而且當時正好有納莉颱風,因此他印象很深。

回頭看柯志杰從小五開始就投入程式設計、高中因為興趣自學日文,並且因此寫出Unicode補完計畫,可看出柯志杰對許多事情都抱有高度興趣,且一旦投入就義無返顧,而他最近因為買了Android作業系統的手機,也想嘗試自己寫手機的App。

 

IT人物

柯志杰

● 出生年:1982年

● 學經歷:東海大學資訊工程研究所畢業,曾任遊戲基地軟體工程師,現為中華電信數據分公司資訊處專員

● 譯作有《Ajax與Google Map API入門實作》、《Ruby Programming──向Ruby之父學程式設計》

 


Advertisement