我現職是個前端工程師(Front-End Engineer)。不像很多有名的大神,雖然不是很喜歡唸書,但是從小就開始接觸程式,寫軟體,然後變成程式界的大神。我只是純粹不喜歡唸書而已。

直到大學我才真正地接觸到了程式,但實在提不起我的興趣,寫了一堆天書般的程式碼,只是為了在一個黑黑的框框(Terminal)裡秀出幾行字,好無趣。所以大一上學期我的程式設計課就被當了,我發現對於無法引起我興趣的東西,我真的無法好好坐下來學習。國小到高中,我實在不明白學了這些科目以後可以幹嘛,如果只是為了考上好高中、好大學,實在是很無趣。隨著年紀的增長,我的學業表現愈來愈差,這也某些程度上打擊了我的自我形象。

第一次覺得程式有點有趣,是大學同學老高,寫了一個能夠根據你輸入的選項不同,進而產生不同的分支,然後程式能夠回給你不同的訊息。也因為老高設定的情境,程式吐回來的訊息很好笑,讓我覺得很有趣。我就試著修改他的程式,然後電腦照著我所想的行動,覺得…感覺很不錯。

大一上結束後的寒假,我就決定要來寫個 RPG 遊戲,對話版的那種。當時魔獸爭霸裡面有個地圖,叫做信長之野望,我也決定把我的遊戲背景設定在日本戰國時期,然後操縱日本武將來玩。我記得整個寒假風風火火,每天寫每天寫,寫了一個階段就想要再加上某些功能,有目標但不知程式怎麼達成,就一直去翻書,短短時間我學了好多,寒假結束也得到了一個令自己滿意的結果,把程式放在 PTT 小遊戲版,也收到了好評。我發現,有興趣的目標,我可以學得很快。

大四開始接觸網頁程式,這對許多以工程師為目標的人而言其實有點晚,但網頁程式真的也開啟我的另一片天。網頁可以在短時間內接觸到很多的人,deploy 也不麻煩,我可以把我的成果很快的分享給大家使用 – 只要把網址給他就可以了,我也可以很快地收到回饋,真的是太棒了。我發現我寫的程式有人使用,可以激起我的動力,讓我覺得很有趣。所以我就把頭洗下去了。感謝聞權(化名)讓我用系上的伺服器,我可以把我的網站 depoly 到上面去,做了一個數位系大事記之類的東西,讓大家可以提交數位系所有發生的大大小小的事情,然後照時間順序編成一個清單。陽春,但很有趣。

研究所時期實驗室同學龍斌(化名)邀請我一起做一個外包,做一個能夠讓志工上傳兩棲類的照片、為照片設定經緯度、分享相簿的網站,雖然過程各種艱辛,每個禮拜要跟業主開會,但也的的確確提升了網頁的程式實力。也感謝研究所當時的教授,放手讓我研究網頁技術,畢竟網頁技術在當時也許不是被大家看重的一門技術(當時最夯當屬 Android 的應用)。

出社會後的第一份工作開始專注在前端工程,也許我只是初出茅廬的小伙子,同事還沒辦法瞭解我的程度到哪,派給我的工作時程壓得滿長的XD,也因為如此讓我有不少時間可以去研究當時前端比較 trend 的一些技術、工具跟框架。發現其實有很多好用的東西可以運用在我們公司的產品上,所以就有嘗試把一些東西導入公司派給我做的產品上,自己覺得很滿足XD

人稱天下前端出雅虎(不知多久以前的稱號哈哈),因緣際會下面試上了雅虎的工作,真是能夠讓我一展長才的地方呀!而且高手雲集,最重要的是大家的學習力都好強,也對新技術的敏銳度很高。公司裡面各種大大小小的 sharing,有興趣就去聽一下,沒興趣就做自己的事,平時在座位上可以瘋狂討論,公司也完全不排斥把新技術導入在自己的產品上,非常有趣也很過癮。

同事綸哥跟生哥(蝌蚪伯)就是會一直跟我做 sharing 的人,不論是技術、遊戲、時事還是一堆有的沒的,能夠在喜歡的事情上找到志趣相合的同伴真的很棒,這樣的環境也讓我持續成長,看到他們不斷的學習也讓我想要學習更多。

現在很多程式技術對我來說還是像天書一樣,但我面對他們的心態有所不同,我會很想要知道它可以做到什麼事,背後的原理是什麼,畢竟很有趣嘛~

我的學習路徑

  1. 看到東西
  2. 知道它可以做什麼,覺得有趣(有目標)
  3. 為達成目標學習所有必須的知識跟技術(有目標會學得比較快)
  4. 達成目標,覺得滿足(Satisfied)
  5. 回到 1. 重複這個循環