about 4 years ago

寫在 TSOC 結束後...

研究所之前,就知道 open source 這個圈子,但是一直以為開源是指開發者讓大家取得程式的原始碼,客製化成自己的程式,如此而已,說來慚愧,2013 年畢業時,jserv 曾經公開徵求 f9 microkernel 的參與人,我當時期待可以有機會參與,然而等了一個暑假,都沒有等到進一步的通知,後來在 2013 年的 COSCUP (我第一次參與技術年會)上聽 jserv 的介紹 f9 專案,才驚覺原來 Open Source 的參與模式是主動的,知道自己學了很久的程式設計,其實可以實際參與專案貢獻自己的能力的,直覺已經比別人晚起步

進入研究所後,因為實驗室的幾位學長與前輩都是 Open source 領域參與者,有在 Mozilla 工作的學長、Google 社群活躍的前輩、資策會服役的學長、寫程式創業的前輩,跟我大學所認識的同學差很多,高手雲集,指導教授也很鼓勵我參與社群(例如 g0v)與學習 Open source 相關技術,所以我開始學習使用 GitHub、API,並且嘗試發表一些技術的學習心得或筆記到 Blog 上,廣泛吸收與接觸各種軟體

我第一個自己貢獻的 Open Source,是碩一時因為老師請我學習使用 Twitter API,我找到一份由 MIT 研究生開發的一個專案,但是因為 API 演進的關係,已經有需要修正的部分,所以在嘗試修正使用正確的 GitHub 指令,並與專案 owner 討論之下,成功貢獻了自己的程式碼 (Merged!)

我對於系統軟體很有學習熱誠,大學認真修習系統程式和作業系統,在知道 fork() 的原理以後,突然領悟一個 shell 是怎麼做出來的,開始想設計 OS、研究 Linux Kernel,後來在升研究所的暑假接觸到了 Firefox OS (B2G)這個作業系統專案,對其技術覺得很新鮮,透過在 Mozilla 的學長很熱心的帶領我參與 Firefox OS 解 Bug 行列下,利用課餘與實驗室事務之外陸續學習怎麼使用 Bugzilla、GitHub、Travis CI 等平台與工具來與世界各地的工程師互動,並成功貢獻了一些程式碼,今年暑假,學長建議我可以參與 TSOC 由 Moziila 提出的專案,因此與 Moziila 負責此專案的兩位導師每週利用線上討論進度,並使用 Bugzilla 與其他開發者討論解決方案,研究本專案使用的單元測試工具 karma 與相關測試工具 mocha、sinon 各自的程式碼和運作原理,逐步做出本專案希望的實驗性目標,並且對單元測試有更進一步的學習,也對參與軟體專案有了更豐富的經驗。

在研究所的這一年,我也參加了 COSCUP、SITCON Hackgen、PyCon、JuluDev、HITCON...等聚會、活動與討論,見識到了在技術圈子有很高造詣的先進,也會參加了系統軟體相關的課程和嘗試使用各種軟體,很感謝許多前輩的指導與肯定,我未來會繼續學習計算機科學與磨練技術。

← Hadoop Code Study - Components of a Single Job MR Class Python WebSocket [Code Read and Demo] →
 
comments powered by Disqus