如何成為 Programmer (三):學習資源
2018-11-06
線上和線下資源眾多,如果想成為 Programmer,應該如何選擇呢?
選擇一)網上課程 (MOOC)
網上課程自數年前起開始急速發展,不受地域和時間限制,著名的網站包 Coursera、Udemy、Udacity 和 EdX,有著各式各樣的特色,而且價錢十分便宜。部份網站與一些良好的導師合作,定立出有質素的課程,例如 Coursera 的 Deep Learning Course,便是行內首屈一指的課程,不少現任的開發者也有報讀。
不過,大部份網上課程的質素參差不齊,一些教學網站任由個別開發者上傳課程,例如 Udemy 中你會發現有數百個教授 JavaScript 的課程,雖說是選擇琳瑯滿目,但花多眼亂之下,初學入門者很容易選了質素較低的課程。
再者,初學者未必能清楚知道現時業界中最渴求的技能,可能完成課程亦不能成功找到工作。即使一些教學網站標榜某語言或工具為業界中最流行使用,那些數據很多時候都只反映其他國家和以全球整體作指標,在個別環境未必適合。
最後,其實很多學員無法完成網上課程,因為在日間上班的精力已消耗無幾,掌握一種技能需要長時間集中,在自律和精神狀態較差的情況下,往往會半途而廢。
適合:純粹了解/ 興趣學習/ 深造開發/ 自律良好者
好處:便宜/ 選擇多/ 不受時間和地域限制
缺點:課程質素參差/ 極需要自律/ 無真人協助/ 無就業支援/ 無本地化
選擇二)Coding Bootcamp
Coding Bootcamp 乃源自美國興起的一股新興學習模式,有別於傳統上課規律,以模擬上班時間的「星一至星五,朝九晚六」方式上課,學員以每日實戰吸收業界最新的資訊,更會輔以就業支援,協助學員畢業後找到工作。
這種模式盛行的原因,離不開科技人才市場十分渴市,加上科技日新月異變化的速度,令到傳統學習模式無法讓學員掌握及時的訊息。儘管網上資源百花齊放,很多人在自我學習時,遇到 bug 或難以理解的部份時,倍感吃力,在網上課程難以找到真人面對面從旁協助,因而需要線下的支援,而 Coding bootcamp 正正可以填補這個不足。
良好的 Coding bootcamp 導師需要在 IT 行業中打滾多年,從而教授最貼切工作需要的知識,而且需要豐富的實戰經驗,當學員遇到問題時,能即時分析和解答,並引導學員針對問題癥結,迎刃而解。在香港,只有極少數機構能輔以廣東話,提供貼合本地就業需要的優質Coding 課程。
Tecky Academy 首創程式設計微學位 (MicroMaster in Programming),導師團隊擁有全港唯一最多 Coding Bootcamp 模式教學經驗,已教授相關課程達2年,及有10年以上的編程經驗。
適合:初學者/ 進修人士/ 有意提升行業技能人士
好處:真人面對面輔助,緊貼行業的知識,容易融入社群,充份就業支援,使用本地語言(廣東話)
缺點:需要三至四個月的日間時間/ 本港只有極少數有相關經驗的機構和導師能提供高質素的課程
選擇三)碩士課程 (Taught Master)
如果你已經擁用一個大學學位,再攻讀一個碩士課程可能是你第一個想法。
倘若你已經在行業中打滾數年,而未接受過正式的專上知識訓練,那麼碩士課程絕對令你的仕途再上一層樓。大學的課程主要著重學術研究和理論,在電腦相關的碩士課程中,可以了解各樣電腦的運作原理,甚至以學術角度了解開發過程中每一部份的細節。
不過,若你以學習程式語言,或成為 Programmer 為目標而攻讀碩士課程,那現實可能有很大落差。在大學碩士課程中,未必有很多機會讓你操練 Coding,而不少香港的大學的碩士課程,並沒有 Final Year Project 的要求,亦代表你只需上課完成考試便可以,也沒有導師會緊貼協助,最後操練 Programming 的功夫也得靠自己努力才行。
大學的課程著重歷久常新的理論,但對於行內最流行的技術,很多時候大學總會滯後數年才加入課程。若你學習最新的 Deep Learning、Blockchain、Flutter/Vue.js,那麼大學便不是你的首選。
【2018年11月7日 00:49 更新】註:本文中 碩士課程 並不指 MPhil 或 PhD 等研究生範疇,只針對本地 Taught Master 的情況。
適合:已在行業中打滾數年的開發者或管理層
好處:傳統模式,理論為主
缺點:就讀時間較長,難以習得 Programming,缺乏緊貼業界的知識
選擇四)夜間課程
夜間的進修課程十分受香港人歡迎,一星期花兩晚時間到中心上課,大約六至十星期左右完成一個課程。
市場上夜間課程有昂貴的有便宜的,最便宜大家一定會聯想起工聯會,同時大家都會發現,工聯會的課程,都是以入門為主,而且課堂進度較慢,適合較年長的人士慢慢消化。但對於吸收較快的同學,可能反而浪費了時間。
而較昂貴的,離不開主打專上教育或科技教育的數間機構。學習 Programming 與學習一般語言相近,其實是需要長時間沉浸才能好好掌握。夜晚課程為避免學員疏於練習,往往把難度調低,未必能夠一一授予學員工作的重要技能。
就讀夜間課程的人士普遍都是有全職工作的「打工仔」,和網上課程一樣,在日間普遍都已用盡精神,在夜晚未必能吸收很多,更難於其他日子花時間自我操練,故此只有少部份就讀此類課程的人士最後能成功晉升成為 Programmer。
適合:純粹為興趣/ 並非以就業為目的/ 只想了解到入門便足夠的人士
好處:不影響日間工作/ 部份課程相對較便宜
缺點:斷斷續續/ 質素參差/ 課程並非以就業為主
總結
Comments
Read More
如何成為 Programmer (一):業界景況
2018-10-23
問如何成為 Programmer 之前,首先要問,到底為何要成為 Programmer 呢?IT 狗有前途嗎?真的是 HONGKONGNOIT 嗎?
如何成為 Programmer (二):其實入行不難
2018-11-02
續上一篇講及 Programmer 前景不錯之後,可能你也心思思想投身這個行業,但倘若你本來不是 CS Degree 畢業,也不是理科生,你還以為 Programmer 或 Coding 都與你無緣了。不過,根據很多的調查發現,原來這種種背景都絕對不是問題!
如何成為 Programmer (四):適合新手的語言
2018-11-14
初學者剛接觸 Programming 時,經常都遇到一個難題「應該學哪一種程式語言?」這個問題,在十個網站,都會有十個不同的答案,而且不同年代也有不同的答案!
如何成為 Programmer (五):想編寫遊戲
2018-11-20
上一篇提及選擇學習不同程式語言的考慮因素,而最重要的是取決於你學習的終極目標。如果可以一邊學習,一邊練習編寫和你興趣或想法相關的程式,必定是最有效的學習方法。 以下幾篇,我會以數種常見的學習目標為分類,介紹不同的入門語言給大家參考!