重新投入學習程式前的心路歷程:ALPHA Camp全端網路開發學期前課程心得(第一部分,背景:前傳?)

--

後記:先來個謎因(meme)自首:「辣篇心得或許會遲到,但絕不會缺席」。原本我打算簡單寫交差就好,把開始學習前的心得與學期一二放在同一篇,但後來覺得這樣篇幅太長,乾脆每一部分單獨成篇,未來比較好分類,也好湊文章數(X)。

認真開始學程式快一年了,儘管早一再被提醒要寫東西紀錄在學習部落格,內心仍卡著一堵堵障礙,直到隨著課程進展到某個階段、心理冒出來某個想法而豁然開朗,從而這篇心得得以補交。一方面固然是得完成期末考來正式結算進度,另一面也是個人學習思路總算有所轉變,在這網站預定用”5W1H”(其實是剛好想到)來自我分析,從當初為何(why)會想轉職如何(how)從學期一發現興趣,以及在學期二是什麼(what)經歷確立方向,先這三個部分來談我的前期學習歷程;沒意外的話,後面先預訂則以學期三前後端位置轉換(where)、學期四多人協作開發(who)與畢業後傳求職時程(when),三個階段寫齊新的部分,形成六部曲的概念(?)。

定向:三過其門而”blue”後的「砍掉重練」

早在唸大學,甚至高中時有過「一念之差」的話,我就不用繞了五年、十年才回頭認真學程式?

我曾有過三次入門寫程式的機遇,第一次是在高中資訊課被迫學C++,但因當時和多數同學一樣,覺得根本是在沉重的課業外加大麻煩,在未能建立興趣的情況下同經補考後才過關。學期結束後,除了對常忘記很麻煩的編譯(compile)、感覺很複雜的迴圈(loop)、沒有說明但必要的代碼有印象,其他根本搞不清楚的其他東西考完都還給老師了。

第二次,則是在大學念地理系的地理資訊系統(GIS)相關選修課接觸到(舊版的)Visual Basic(VB),儘管當時覺得語法好像比天殺的C++簡單,且可以製作圖形化介面(GUI),但那時的上課重點只有跟著老師做出特定功能的步驟,沒多介紹各類語法與工具的廣泛應用,只覺得花老半天堆砌老師的程式碼,不如使用現成應用程式又快又好,後隨期末作業交出後,除了還記得怎麼拉介面也都是忘光光。儘管後來很多老師和學長姊提到,如果未來想到地理資訊領域求職最好要會寫程式,但因當時自己對人文社會的學術研究更有興趣便未加理會。結果,二次求學期間與程式設計的邂逅,都以「從入門到放棄(梗圖)」而終。

第三波學習浪潮:重新設定方向、選擇形式、開始執行!

然則,也許「出來混遲早要還的」,待到研究所畢業、退役後找第一份工作失利,原本投入過的領域不是沒有機會、學得不夠深入、不確定有興趣延伸,正陷入被家人與親戚說服要不要為了「保障不會失業」去考國考的憂鬱情緒時,偶然看到就業服務站有提供「網頁程式設計」的課程簡章,這回才讓我興起乾脆學習新技能「砍掉重練」的念頭,窩在家理開始瘋狂查詢關於學程式轉職的訊息,並先後找到四個足以決定我日後學習方向的連結。

首先是這張指引程式學習方向的地圖(英文原圖連結),它引導我先從較泛用的Python開始,找免費的Udacity 課程試水溫,經過一二周的瀏覽,儘管才看過簡單的指令、變數與運算,卻驚覺自己過去其實沒有「用正確的方式打開」學習程式的第一步:了解為何要學程式,從簡單的語言開始了解架構,以開始建立持續投入的動機。

最後便是決定要選擇什麼樣的學習目標與形式,幫助我做決定的最重要是二篇非典型文組生轉職文前者學科背景與我較類似,且具體建議走網路開發較有求職機會後者則是對我選擇課程類型時有更明確指引。由於當時仍不敢貿然全職投入,打算先以過去學經歷,找個教育學術單位的助理工作,走「進可攻,退可守」的「半工半讀」步調,更加確定要轉職的話可以漸進地繼續新進度,萬一又想放棄的話至少還有現有工作,多方考量後的結果剛好就是二篇都有提到,同時具備線上時空自由與培訓班進度規劃的──ALPHA Camp全端網路開發課程(剛好是第「五」個連結,又是像挖一篇業配的坑?)

--

--

Bob Yu-Zhen Huang is developing on web

2020年代第一天起,以第一篇廢文開始網路開發的學習紀錄,短期目標是不定期分享關於寫程式,或與資訊、軟體、電腦勉強沾得上邊(?)的學習心得與感想(先定廣一點方便擴張範圍……);長期的話,則是將這個站停掉(!)──待未來自行架設部落格新站後搬過去(開發專案與習作彙整:https://github.com/BOBYZH)。