先科普一下自己的背景,小弟本身是私立大學學店畢業,然後簽了志願役服役,五年後中士退伍,退伍後去了資策會的軟體工程師速成班(當時候選的是UI/UX網頁工程師),成功結訓後有順利找到工作,已經有四年工作經驗了,目前是全端工程師,所以應該很有資格分享一些自學的經驗。
我的情況比較特殊,畢竟是剛退伍,也處於沒有退路的情況,在軍中的專長是電焊、氣焊、鉗工這類的工科技能。
會來上軟體也是在當檔案管理士的期間,接觸一點相關技能概念,但也只算得上會用電腦的 Level,傻傻的以為軟體工程師應該也是差不多的概念,再加上資策會的推銷,腦波弱的我還是相信了『我一定能成功』(雖然後面也成功了啦XD)。
如果要我現在推薦,我可能不會推薦去上實體課程,現在太多好用的工具可以使用了,除了網路課程以外,還有 ChatGPT 這種好用的工具可以幫助你學習,真的可以省下很多錢和時間。
因為接下來分享的,很可能是不同時代的思想差異,首先是課程的部分,對一個完全不懂程式語言的人來說,進入寫程式的課程階段,確實是很有門檻的,要從原本有操作介面的東西,改成使用終端機和程式指令等等的操作,會刷掉很多不想跳脫舒適圈的美編人員(畢竟我們還是UI/UX),前面的課程有大概一個月的時間是教你怎麼使用 PS、adobe XD、illustrator 這類網頁設計工具,還有部分是專案管理的內容(UX 範疇),但這部分我本身管理學院畢業的,老實說學校教的比較深入比較好。
那時候應該已經是,VScode 盛行的年代了,但不知道為什麼?還是花了時間教我們 Dreamwaver 怎麼用,老實說蠻浪費時間的,這裡提供大家一個觀念,你如果是新手,不要浪費時間在適應不同IDE介面的使用上,因為你 code 都不會,無法比較優劣,選自己順手或大家常用的就好。
Html 的教學沒有講太多的 Tag,大多都是待 CSS 課程之後才慢慢熟悉,CSS 對一般新手來說,排斥力不大,畢竟還是看得到畫面,調整起來也蠻容易的,但要完全熟悉還是得靠網路資源補充,那時候我最常看的就是 Design course 和 Kevin Powell 的頻道,因為教的老師很明確的說他 grid 不熟,所以我也只能自己找資源,在現在各種裝置大小不一的情況下,我覺得 grid 的排版理念要比原本的 flex 更有發展性,這也是我願意花時間自學的部分。
Javascript 的教學剛好遇到疫情比較嚴重的時期,改成遠端教學,遠端問題就很大了,要我們這群不熟的新手建置環境,本來就比較困難了,加上教學的老師是剛畢業的菜鳥,這教學品質很難好到哪裡,所以我又靠網路自學了一點簡單的基礎,除了 Design course 以外還有 Programming with Mosh、The Coding Train、Traversy Media、Web Dev Simplified,我靠著以上幾個頻道,慢慢補足我 javascript 的基本觀念,會這麼注重的原因是前端框架,我在搜尋教學的時候就已經知道框架的用處,也知道 javascript 在前端領域的重要性。
這時候很多人早就登出了,雖然放棄的原因可以理解,但最後的專題是大家要一起上去發表的誒,憑什麼要我因為你的擺爛而丟臉。
也許是兵當太久,奴性堅強的我就撿起來做了,畢竟最後的專題是電商網站,後端按照課程的規劃是要使用PHP + mySql 來撰寫,幸好 PHP 的老師還蠻罩的,不管是 php 還是 javascript 都蠻有經驗的,當然我還有在網路自學找資源補課,那時候多虧 Dani Krossing 的頻道,才沒有整個開天窗,當然功能沒有其他組那麼豐富,但是我確實是走過一遍全端的流程了。
最後階段的媒合,就算有機會我還是放棄了,主要是薪水太低了,就按照原本安排的技能組,差了框架那薪水直接被海放,再加上我又不是本科生,要找工作沒那麼簡單,於是我決定花點時間做一些厲害一點的 side project,然後我又做了兩個用 javascript 的小遊戲,一個是貪食蛇、另一個是離線小恐龍,放上履歷後,面試邀約確實多了很多,當然也順利找到工作。
看完我的描述,你還會想去速成班嗎?
尤其是在現在還有 chatGPT 的協助之下,網路教學資源爆炸多的現在,資訊的取得相對容易,你還是會回到最根本的動機問題,你想成為怎樣的開發者?
很多人為了錢而跳脫跑道,但卻忽略的自己是否真的有那股熱誠,這個不是任何人給你的意見能夠左右的,人生是自己的,你想從事的開發,或是最想做的工作是哪個部分?真的是前端介面的設計?還是偏向資料處理?如果是偏向資料的處理那你得往後端資料庫的方向補齊。
除了有個基本的概念以外,更需要思考的是你自己對整個流程當中最感興趣的是哪一塊?或是比較不討厭的地方是哪一塊?
如果心中已經有了答案,那麼再依照那個方向去尋找 RoadMap 你會比較有方向自我進修,是的,當你踏上這個領域的道路,學習就和減肥一樣是永無止境的問題,你會一直需要接收新的知識、舊的知識、新技術的文件、舊技術的文件...,你準備好要踏入這個領域了嗎?
『XX天速成班』這是不對的行銷話術,沒有速成的技術,只有不熟的技術,就是要告訴轉職或想轉職的大家,不要笑想只花三個月念完人家本科花四年才學完的東西,就算大學的課排很鬆,你也不可能只花三個月就能吸收完全,而且做過開發的都知道,書上的東西事一回事,跑起來的程式又是另外一回事!
走得遠和持久要比走得快更為重要,沒必要在短時間透支掉自己學習的動力,抓自己覺得舒服的學習時數,持之以恆,保持與生活的平衡,不要因為別人的成功來對自己的生活施加不必要的壓力,別人的成功可以參考應用,每個人都是不同的個體,他能承受的苦難,你未必也能承受,又或者幹嘛承受XD。
這裡我直接借用我今年鐵人賽的結語文章,有需要的朋友可以點擊連結