##讓我們掌聲歡迎 "紅寶石健檢" 登場
從今年1月認識有種程式語言叫Ruby,2月左右決定要投入Ruby on Rails的開發,終極目標是可以成為靈活運用RUBY的暗黑破壞神(這啥小,意指某種在黑暗的礦坑中默默工作的偉大工程師_簡稱:礦工),所以選了一個題目開工:紅寶石健檢 => "台灣健康檢查醫院搜尋網站",從一個完全沒有任何程式語言背景、經驗的新手開始學習Ruby這個程式語言,接二連三跑出Ruby on Rails、SQL、Linux、REGEXP、 JavaScript、Git,一堆技術債要還啊,雖然在紅寶石健檢網站中每一樣都只是用點皮毛,而且拜許多佛心來的Gem所賜,簡化了許多要自己開發的功能,例如:會員、分頁、驗証碼、麵包屑等等都有強大的Gem,基本上只要讀懂ReadMe就可以無痛使用這些功能,非常的大心。(重點就在於要看懂那個ReadMe,要吃程式飯就乖乖學英文唄...)
記得龍哥說過:Ruby on Rails之所以開發快,就是有這些強大的Ruby Gem支撐,而新手與資深的差異,就是運用這些Gem的能力,假設開發網站像堆樂高,資深開發者可以快速抽取所需的積木(Gem),必要時還能修改成客製化的玩意,打造出一個功能完整的網站。(龍哥有錯請鞭XD)。等等如果說這些功能都有人開發了,那請問你這3個月是在卡關什麼?
前前後後(前端後端)經過了近3個月,關於那些Ruby語法、Rails new一個什麼APP的教程、查文件、Google、煩問諸位大大、上課,新手我本人從面對終端機腦中一片空白,完全不知道說什麼他才懂,然後十個指令九個半會噴錯,參數設錯拼錯字,新手的錯誤通常都很小很可笑,可是要解常常也是要花上老半天呀,這段時間努力認真地挖礦,紅寶石沒挖到半點,倒是挖出了一堆臭石頭,充滿淚水與鮮血的雙手呀,到現在看起來是個可讀可寫會動的網站,終於可以讓紅寶石健檢 上線見人了,撒花!! (先暫時發佈到Heroku上,還要再測試用Passenger+Nginx佈署到DigitalOcean。)
在紅寶石健檢的專案開發中,邊看邊做邊學,才跟以下這些東西有變熟的感覺(超慢熟):
- Rails new app: MVC, Routes and Controller
- 前端: Erb, Variable, View Helper, Assets Pipeline, Css, JavaScript
- 資料庫: ORM, Active Record, Migration,Validate, Association
- 後端: REST, CRUD, Scaffold, 權限, 驗証, 表單
- Gem: Devise(會員), reCAPTCHA(機器人驗証), Gretel(breadcrumbs麵包屑), Kaminari(分頁), Simple_form(表單)
- 其他: Ruby, Heroku, Git, Bootstrap, Sql, Disqus, Vim, Markdown, Regexp
從無到有地開發紅寶石健檢這個專案,投入了身心靈和時間,一步步學習Ruby, Ruby on Rails還有一大票哩哩摳摳,現在要我再一次打出全部的指令,可能還是要再Google一下或者看看之前是怎麼搞的,我不是最有天份開發者,也不是最認真的開發者,不過我還蠻享受這整個過程,雖然JC大說:Ruby是讓工程師快樂的語言,不是讓新手快樂的語言,不建議拿Ruby當第一個語言。可是我覺得在Ruby圈裡面,許多友善熱情的大大,願意幫助新手走上這條(不歸)路,這大概是讓我這個新手還能走下去不覺得這麼痛苦的很大原因,非常感謝這個圈子裡面的各位大大熱心的傳道、授業、解惑。沒意外(中樂透)的話,我會繼續深入Ruby這個坑裡,越挖越覺得本身的不足,還有好多東西要學,依照一萬小時法則,我的暗黑破壞神之路大概還有99%要完成吧,路上遇到記得來乾一杯加油一下,哪天也能換我上台分享!!
特別感謝:
- 首推Ruby坑的朋友:Aryung
- 廣開眼界(技術債)的大大:JockerCatz
- 解惑綀功的好去處(五倍紅寶石出礦坑):龍哥、慕凡哥、Annie Chen、Juanito Fatas、林聖哲…
只不過是一個小蛋糕的網站上線,為什麼搞得像得了奧斯卡獎一樣宣佈得獎感言?!因為第一次總是特別有感覺嘛~記錄一下以後回顧,才能提醒自己莫忘初衷♥
而且你看看:為什麼成為一名工程師這麼難 —— 從程式新手到準工程師的必經之路,要成為一名工程師,真的不簡單:)