over 1 year ago

距離我第一次接觸Ruby程式語言已經至少有五年了,
那時僅是因為對RPG Maker有興趣,想用它來製作一款屬於自己的遊戲。
而該軟體的Scripting System剛好就是以Ruby為基礎所寫成。
我想這就是所謂的interest-driven developemnt,因為興趣而開發。
從那時候我就用課餘的時間自學Ruby,漸漸的發現它的美好。
除了從遊戲製作那邊得來的成就感以外,也深深被Ruby的優雅所吸引。

兩年前,我開始第一次真正接觸Rails。
其實我從剛學習Ruby的時候,就有聽聞過「Rails是Ruby的殺手級應用」這麼一句話。
但那時的我對網頁的概念一無所知,也就沒有深入去了解。
直到兩年前,我因為在學校的課程中學習到了網頁的基礎,
才想到說當初有聽說過Rails這個也是跟網頁有關的框架,
於是變真正開始接觸Rails。

在我看來,自學Rails相較於自學其他語言或框架感覺起來相對比較辛苦,
至少我翻閱了許多教材如ihower的網站或Rails 101等,
都需要看過兩三次才能大致了解其意涵。
雖然學習的過程很辛苦,但當自己有能力架一個雖簡陋但堪用的網站時,
那種雀躍的心情是不可言語的。

從那之後,我偶爾便會用Rails開發一些小網站 (雖然大部分都沒有在運作了)
而去年也因為學校活動的需求,第一次使用Rails寫API server。

我略有耳聞,Rails在國外是有市場的。
但我並非基於求職或者是任何其他跟金錢有關的理由去接觸,
我單純就是因為自己對Ruby與Rails的興趣與熱忱而去學習與開發。
可惜Ruby/Rails在台灣並不是一個非常流行的語言和框架,
在我周遭,幾乎沒有人接觸Ruby或Rails,且也沒有聽說過台灣當前有甚麼公司企業在推崇Ruby或Rails。
雖然這令人沮喪,但這仍無法澆熄我對Ruby/Rails的熱忱。

直到今年初,我才聽說有五倍紅寶石這麼一家專門推廣Ruby/Rails的企業,且他們也正好在招收實習生。
聽到這個令人雀躍的消息,我二話不說馬上就投了自己的履歷申請。
為了滿足每周至少要到兩天的要求,
我甚至在申請結果出來前就放棄學校大部分的課程時間,空出整整兩天來給公司。
(那時候可謂是背水一戰,如果不幸申請沒上,我這一個學期就真的不知道該怎麼辦了!)

後來我很幸運的申請上了,很感謝五倍的大家願意給我這個機會來實習。
我自己知道,如果要精進自己的Ruby/Rails技巧,只靠自己是很困難的。
因此我來到這裡,希望可以接觸到更多Ruby/Rails圈的前輩,以及真正在業界中開發的專案。

在五倍,除了學習到了更多與實務網頁相關的技巧以外,
我也學到了Rails 5最新的功能之一:ActionCable。
這是Rails結合WebSocket所衍生的一套系統。
利用它可以輕易的在Rails上開發與WebSocket相關的應用。
除了網頁,我也第一次接觸如何使用Ruby去控制Raspberry Pi,並驅動其讀卡機與蜂鳴器。
雖然我過去略有接觸Unix-like系統,但當我能用Ruby去控制它時,是令我相當雀躍的。

在實習的後半段時間,我開始接觸國外的Rails開發案,那是一個來自日本公司的案子。
因為這個開發案,我更加熟練了多人開發的協作技巧,以及如何使用測試框架(RSpec)。雖然日文是很大的障礙,但這裡的大家都很熱心幫我翻譯,讓我能順利完成任務。

時間過得很快,四個月的實習一轉眼就到了尾聲,
在最後幾天的日子裡,我除了收尾手上的日本專案外,也回想著這段日子的點點滴滴。
和五倍的實習生們一起學習、和五倍的大家一起用餐、和五倍的貓玩耍、和五倍的工程師們一起通靈...
由於我自己的生涯規劃,暑假後我不得不離開這裡。
雖然很捨不得,但這段日子我很開心,我擁抱了我喜愛的Ruby/Rails。
謝謝五倍紅寶石的大家,讓我有五百倍的喜悅與熱忱!

← RUBY ON RAILS 從零開始@5xRuby 京都之旅:RubyKaigi 2016 →