我們在幾年前就開始一項名為「深耕開源系統軟體」的科技部計畫,設法利用平行處理、GPU、FPGA來加速一些有用但效能不盡理想的開源碼。這些工作,對於需要高效能或是高效率計算的應用很重要,而且技術門檻高,特別適合用以訓練人才。

不過這個對系統產業這麼重要的工作,國內先前似乎乏人問津。很多長官對開源碼的理解,還停留在舊時代,覺得開源碼的最大好處就是不用付費,推廣開源碼可以省錢;不少學生對開源碼有興趣,但只有少數能做出真正好的東西。

一開始長官不斷追問,為什麼要付出寶貴時間去優化開源碼給大家用? 這樣有甚麼產業效益? 你的KPI是什麼? 學生參加開源碼社群、COSCUP,雖然很有教育意義,但能否更上層樓?

事實上,開源碼運動在這麼多年來,已經有長足的進步:

  • 許多重量級的開源碼,已成為業界標準;現在要定義業界標準,往往以釋出開源碼的形式進行。換言之,開源碼已經成為主流。

  • 免費的開源碼的確可提供基本功能,但要達到大規模、最佳的效能,則必須請專業人士來做,客製化和優化這部分工作的價值不斐,但有些單位還是存著「買硬體送軟體和諮詢服務」的舊觀念。

  • 現在開源碼多得很,需要自己動手寫個新開源專案的情況並不多。當然,針對個人、特定領域、某些地區文化,還是有些工作,但本於開源和學習的精神,我希望學生能走上國際,把格局放大,多看看大計畫、解決大問題。

 

以OpenStack為例,國內不乏使用者社群,但只有少數的貢獻者。的確,利用OpenStack來建置資訊系統和應用服務,滿足國內的需求,是頗重要的,但是如果產業要到國際上競爭,則必須有更多對OpenStack的技術內涵有深入瞭解的貢獻者。例如中國的「華為」積極投入OpenStack,就是這個道理。

OpenStack最近成立的這個Cyborg Project ,目的與我們上述的「深耕開源系統軟體」計畫一致,也談利用平行處理、GPU、FPGA來加速一些有用但效能不盡理想的開源碼,算是佐證我們的洞見。最近資策會、工研院要培養開源軟體人才,也將目標設定在貢獻重要的開源碼計畫上,應該算是朝正確的方向努力。

有網友擔心在台灣搞開源軟體不見得能找到好工作。

我會說,對於做給自己開心但沒有做到重要開源計劃並且做出貢獻的學生來說,可能在找工作上不見得左右逢源;反之,工作機會超多的。那些不懂開源趨勢、閉門造車的公司,不去也罷。

不過,就像在研究所做研究一樣,花幾年時間鑽研某個領域,畢業後的工作不見得繼續做同一個題目。所以說,展現在某個重量級開源軟體的貢獻能力,例如Hadoop/Hbase,未必只能找做Hadoop/Hbase的公司和專案,不妨觸類旁通到相關的Spark、NoSQL之類的開源軟體和應用,這樣機會更多。

OpenStack大會上Cyborg Project的介紹影片

 

作者簡介


Advertisement

更多 iThome相關內容