生活已經夠困難了,為什麼還要找自己麻煩
轉職,像是《獵人》中奇犽家那道厚重的試煉之門,不知道自己需要訓練多久、付出多少代價才能推開,時不時會偷瞄旁邊的小門,心想:「還是繼續做舊的工作,至少不用擔心生活。」,在這樣的拉扯之下,如何跨出第一步變成最困難的事,於是我消極地告訴自己:「如果能轉職成功不失一件很好的事,繼續待在本來的產業也沒關係。」沒有期待,也就不怕受傷害。
所以在認識五倍學院之前,我先後透過線上教學網站 LinkedIn Learning 與 Codecademy 自學 Python 與 Ruby,若要說有什麼強烈動機倒也沒有,至多就是看了一些股票書籍,希望透過學會程式語言,自己打造一個分析的軟體,接著等錢從天上掉下來。(我說,錢呢?)
作為自學愛好者,仍舊得為 LinkedIn Learning 與 CodeCademy 說句公道話,這兩個線上平台課程內容扎實也易懂,也是因為如此,才會給我一種「程式語言也沒多難」的錯覺,不過很快地在 Python 的線上課程遇到第一個困難:「什麼是 OOP(物件導向程式設計)?」(現在不知道 OOP 也沒關係,程式語言的世界裡總是一堆每個字都看得懂,放在一起就變成上古捲軸的術語),更準確地說,我遇到的困難是——「沒有人可以回答我的問題」。
在還沒有 GPT 的前幾年,自學者遇到不會的問題,求助方式不外乎向朋友、臉書社團、線上論壇、Stack Overflow 發問,一些有標準答案的問題還好,反正看起來結果是我想要的就可以了吧(先說這個不是好的學習態度),但真正的問題是像 OOP 這種概念性的專有名詞,看了再多文章也只是似懂非懂,因為沒有人能真正解答到心中的疑惑。
我就問下面這句話你看得懂?
物件導向程式設計(英語:Object-oriented programming,縮寫:OOP)是種具有物件概念的程式設計典範,同時也是一種程式開發的抽象方針。它可能包含資料、特性、程式碼與方法。物件則指的是類別(class)的實例。它將物件作為程式的基本單元,將程式和資料封裝其中,以提高軟體的重用性、靈活性和擴充性,物件裡的程式可以訪問及經常修改物件相關連的資料。在物件導向程式程式設計裡,電腦程式會被設計成彼此相關的物件。
但這並沒有阻礙我繼續自學,反正很多事情不知不覺就會了,可當我不求甚解地完成了線上課程後,第二個問題來了——「學完這些可以做什麼?」
還記得我當初學程式語言的動機是為了自己寫一個股票分析的軟體,這過程中我(一知半解地)學會了 for / while loop、if / else、function,叫我寫一個迴圈印出 1 到 10 所有奇數還行(超簡單!),但要怎麼做出一個股票分析的工具(我不貪心,能知道個股歷年殖利率就好),完全毫無頭緒,更不用說接來看的爬蟲、數據分析,根本像是越級打怪,很快地我就投降認輸。(我就爛!)
過了一段清心寡慾的生活後,又發生一件燃起我學習程式語言的熱情,那就是「財報狗」。
相信有接觸股票的投資者們(投機者?)多少有聽過這個股票數據的資訊網站,有一天突然發現財報狗的官網開了 Ruby on Rails 相關的工程師,又可以賺錢、又可以接觸財經資訊,根本我的夢幻工作,想都不想就在 CodeCademy 刷了卡,重新踏上了一樣的旅程,遇上同樣的困難,然後⋯⋯(全劇終)
這次我學乖了,既然自己學不會,那找個老師總行了吧,Facebook 的廣告彷彿看透了我的心,時不時就跳出「Ruby、課程、補習班」,再把那些巨聯字頭的廣告跳過,五倍學院的 ASTRO Camp 很快出現在眼前(SEO 做得不錯?),還記得那個時候 ASTRO Camp 正在第 15 屆的招生,想說或許能趕上報名,便迅速約了線上面談諮詢的時段。
(心裡還在想五倍美江,這補習班真幽默。)
我還記得那次面談的課務人員是五倍學院的 Keddie,除了內容詳盡、有問必答,也會站在報名者的角度提供真誠的建議,因為在諮詢的當下,最讓我猶豫的一點是「需要三個月密集地上課」,本以為只需要撥出平日晚上、假日的我,一想到有三個月都將面臨沒有收入的狀況,想不卻步都不行,那時候的我,還沒辦法立刻從職場中抽身三個月,幾今考量後,我透過私訊跟他們確認了 16 屆的報名時間,並在 16 屆超早鳥(?)開賣的第一時間就刷卡報名(十二期零利率),現在回想起來,其中讓我決定要報名的很大一個原因是——「Keddie 這個人看起來對於自家的教學很有信心呀!」
睡覺是個好東西,可惜想睡也睡不到
ASTRO Camp 開始後的每一天都在睡眠不足中度過,下課的八分鐘能偷睡一點是一點,對於那個時候選擇繼續少量的決定,除了後悔沒有其他,接案不僅無法好好做出自己滿意的作品,也沒有足夠的時間去吸收、複習上課的內容,在這樣的惡性循環下,很容易就會在任一端開始自暴自棄(但我沒有!)。現在回頭看,我真心推薦五倍與所有 ASTRO Camp 學員簽訂生死狀,務必排除所有事物專心學習,程式語言真的沒有你想的那麼簡單,何況你根本不是本科系。
也因為不是本科系,複習這件事變得尤為重要,先不管上課自己聽懂了多少,很多時候晚上便忘記了。這邊的「忘記」並不是像背英文單字,回去翻一下便能想起來,而是像走迷宮,當龍哥與其他老師帶著你走,感覺一切都是如此地輕鬆愜意,可是換成自己孤身獨行時:「咦?為什麼這邊會跳錯?」、「這個 this 是哪個 this?」(很快就知道 this 的可怕了),所以上課做筆記與課後複習是不能省略的一環,我自己花了很多的時間在思考做筆記的方式、整理筆記的內容,卻沒有一天是抱持著「都複習完」的心情走出五倍,每當龍哥來關燈時,才驚覺:「原來時間過這麼快!」(可是還是沒複習完。)
我就爛,所以我一直問問題
講完了時間,接下來聊聊上課與學習的態度,這邊請記住一句話:「龍哥永遠是對的!」其實這個道理就跟學習任何事物相同,當老師跟你說這邊很重要,代表這邊真的很重要,沒有人會浪費時間交代不重要的事。同樣地,龍哥常見的口頭禪還有:「沒問題我就當你們都會了喔」、「這題面試題很好考」、「抄程式碼沒有用,這邊先看懂再說」、「有問題在公頻發問」、「我告訴你這很有用」,現在回想,這些話早就標示清楚學習的方向與方法,我們卻仍倚賴自己舊有的習慣,來挑戰全新的事物,直到投遞快速面試的那天,才會發現一切不是早就都說了嗎?於此也建議大家重新聽一次第一堂課(或是課前準備)的影片,緊緊抓著已經講過的原則,即便當下看不見成效,回頭看也會發現自己真的進步了許多。
(當然龍哥還有一些 PH 值很低的:「看來大家也沒有特別想找工作嘛」、「回去你也看不懂」⋯⋯)
在眾多錯誤之中,倒是有一件事我做對了,那就是「有問題直接問」。
從小我們被灌輸「問問題會耽誤上課進度」,所以遇到不懂的問題時,不外乎是「問旁邊的同學」、「回家重新看影片」、「下課問老師或助教」這幾種方法,如果能解決倒也萬幸,可是萬一「同學不懂呢?」、「上課都不能理解的觀念,回家就會突然開竅?」、「龍哥講 20 分鐘你都不懂了,下課才 8 分鐘,確定能聽懂?」而且我個人也不喜歡詢問助教,倒不是不相信助教的實力,更多時候是自己要重現那個問題,再加上助教要瞭解問題的本質,一來一往時間便消耗了,像是老生常談一樣———「三個月一下子就去了。」
除非各位都是資優生,不然我相信在這個學習旅程中,龍哥必然會說出這句話:「有問題要問,我都沒有擔心進度了,反正本來進度就已經落後了。」
「上課有問題就要問!」說穿了,ASTRO Camp 所需的學費並不是一筆小數目,遑論這三個月(甚至更多)也都沒有收入,而來到五倍的初衷便是「學會程式語言(轉職成功)」,如果自己沒有聽懂,那班級的進度超前、落後又能代表什麼?上課問問題,龍哥絕對不會說什麼,哪怕那個問題再簡單,龍哥也都會耐心回答,再引用一句龍哥的話:「你根本沒有能力判斷這個問題簡不簡單,如果很簡單,為什麼你不會?」所以請不要在意旁邊的眼光,有問題就問吧。(我就爛!)
Fake it till you make it
回頭想想 ASTRO Camp 帶給我的變化不僅是職涯上,更多是重新發現自己對於改變的韌性與學習的熱忱,因為從下定決心報名參加五倍學院的 ASTRO Camp 到完成專案、課程結業,忘卻時間與外界的紛擾,如此純然地努力學習,似乎是從高中指考後,便未能再次感受的心境,這一切彷彿都在告訴自己:「試煉之門確實很重沒錯,但經過磨練,我也是可以推得開。」
最後也是最重要的事,無論 ASTRO Camp 讓你感到多麼地疲憊,「請你都不要放棄!」
在這個學習過程中,一定會有很挫折、自我質疑的時刻,甚至可能會害怕拖累其他同學,但這些其實都是正常的,本來要在三個月內完全專精程式語言就是不可能的事,不然工程師早就滿街都是。另一方面是課程中同學之間的差距,會在製作專案的那刻起,開始迅速拉近甚至是改變,所以在這個時刻來臨之前,唯一要做的事就是撐下去,不管進度怎樣落後,也要想辦法撐下去,直到整個課程結束,你才知道自己走了多遠,完成多少事情。
每當想要放棄之前,不妨想想五倍的系列書籍————「為你自己學」,我們都是為了自己想要成為的樣子而來到五倍學院,也希望你成為你想要的樣子。
這是我的 Email:chienchuanwww@gmail.com
如果你有任何轉職上的問題,歡迎與我聯繫,我會盡我所能解答你的轉職迷惘!