[心得] 談談自學與 mentor

看板Soft_Job作者 (有些事,有時候。。。)時間5年前 (2018/07/24 23:00), 5年前編輯推噓29(2905)
留言34則, 31人參與, 5年前最新討論串1/1
最近版上回饋風氣挺好的,有不少版友提供一對一學習的機會。 看多了也會想要一起回饋些什麼。所以也來分享一下關於學習心得, 還有一些 2018 JCConf CFP 置入分隔線。 ============================================================================== https://jcconf.tw/2018/ 官方網站分隔線 ============================================================================== 故事的背景 身為資深(老)潛水(久久才發文)版友(也只是普通宅宅鄉民), 看著同樣的主題如排班似的,重複被提出來詢問。 不外乎是轉職與非科系的糾結。 大部分的時間,我都只是跟著鄉民一起進來看熱鬧的, 因為這些主題都看了不知道幾輪了。 不同的是,最近幾年有了新的風氣『得之於版,回饋於版』。 開創了一些實體的教學活動,無論是個人提供的,或是社群支援的活動。 能降低一些非本科系,又完全無程式經驗者的入門門檻。 我覺得那個一對一教學最為佛心,雖然也曾想過要不要做同樣的事情, BUT,我實在好懶得出門到公共場所, 跟還不太熟悉的朋友一起學習寫程式啊(心中各種焦慮)。 看起來這不是一條適合我的路線,得有不同的做法能發揮我的興趣。 說到興趣部分,因為我也是個文組的阿宅, 大學時接觸了一些教育與學習相關的知識, 若能用上它們來輔助版友學習,那才是我比較有動機的方向: 教學材料只是輔助,自學訓練才是本體。 適用的範圍 接下來要開始談自學相關的內容, 不過還是來定一下比較有效的圍範是以針對技術上的學習為主。 像是熟悉一個程式語言之類的, 它也許無法擴及到一些資工本科的必修科目。 即使有機會運用自學技巧學習那些核心科目,但每個人的底子不同, 能學跟可以有效率地學習是不太一樣的事情。 特別針對是打算尋求轉職機會的朋友來說, 能透過掌握一個程式語言及其工作的週邊知識就相當吃力了。 同時得顧本科系的科目有點緩不濟急,但我這麼說不是要你放棄他們, 而是在『準備』『轉』職策略上那不是一開始最需要加強的部分。 (求職前至少要能掌握基本的計概與資料結構。) 主要原因是對未曾接觸過的人來說, 那些核心科目給學習者帶來成就感的機會低, 面對一個不知何時能掌握的知識,信心上就先被打擊了一輪。 若是換成比較普遍使用的、熱門的程式語言, 能很輕鬆地寫出第 1 個 Hello World 出來。 這樣就有基本的成就感了。 最初的型態得建立 『透過成就感來增強學習動機,用學習動機來輸出成就感。』的魔法迴路 我是期望這樣的心理狀態,接下來要怎麼做,就是後續要討論的事情。 接觸過的學習者們 對於下班閒閒沒事的阿宅如我來說, 能找個可以貢獻專長又能助人的活動(最好不用出門.. 好宅),挺不容易的。 隨著版上的教學風氣展開,我就開始在想著單純用 mentoring 的角度來看, 是不是可以達到不用特別出門又能指導學習這件事呢? 想了想那些遠端的英日語的語言學習課程做到了且成功地商業化, 單純以遠距離的引導來說對於學習具體的技術是存在可能性的。 (不然,別人開那麼多線上課程做什麼呢?) 在最開始,我試著寫信接觸一些在版本詢問過學習或試著轉職的版友。 想討論一下目前學習上的問題點,或具體的盲點是什麼。 其實跟在交友軟體上搭訕陌生人挺像的,大部分的人不太會有回應, 或是回得內容很難的一來一往地聊下去(形式上,就是被句點了!?)。 乾脆都開始丟罐頭留言好了『需要一起聊聊學習的問題嗎?』 (自暴自棄中) 只要寄出去的數量夠多,還是能得到一二封回應的。 目前遇到的學習者粗分三類: * 未入行的本科學生 (有一些) * 剛入行的菜鳥,尋求能力上的成長 (少) * 其他行業打算轉職的人 (較多) 以第一類的學生來說,大致只是缺乏信心罷了。 大致上我比較有意願接觸的只有相對弱勢者,所以學生多是後段的學校, 但其實人的本質沒什麼問題,以學生來說也有大把的時間能好好 coding, 學習動機是存在的。只是不知道如何再前進而已。 這樣的狀態其實不太需要太花什麼力氣去引導。 只需要幫他組合出 combo 連續技,建立出火力展示的概念就行了。 儘管學校不是頂尖的,但該安排的課程其實都有了。 只是點出得有意識到,不要每個東西都只在入門的階段, 要做點具體能用的東西,並且打破課程化的制約: 這學期過了,這門課就到此為至。 得持續著自己有興趣主題,繼續投入心力,漸漸把作品的深度堆疊出來。 若說真的私心想要『灌輸』些什麼, 大致就是『版本控制系統』與邊實作邊解說的能力, 語言能約束行動在合理的範圍。 為了說明,得在腦中整理一下邏輯,為了好實作, 得把說明邏輯配合行為做適當的編排。 做一次換二三種視角檢視自己的語言與行為。 (這默默地在觸發後設認知的發生) 而第二類的在職者是一種微妙的存在, 但我遇到實案例不夠多就不加以分享了。 大致上經驗不太好,就默默地放生去了。 (有些時候,我成了疑難雜症的解答專員; 有些時候,我得努力推才會有產出; 有些時候,我的學習調整意見常常被無視。) 版上有提問轉職人相對多,以母數來說,我遇到比較多挺合理的。 這個群體就得再來細談一下問題是什麼了。 學習的規範 第三類的門外漢求職者,我同樣以選擇相對弱勢的人為主。但多了附加條件: * 需要能證明行動力足夠 * 願意錄影邊實作邊解說 我都向每個交流的朋友說,我是饅頭,這可能太抽象。 也許想像成我是導遊或地陪,陪你看看這城市的趣味, 你若看著覺得入迷,那就試在這城市生存看看, 若看了無趣,那快立馬停止旅程,試試不同的路線。 由於角度是 mentor,若對象沒有足夠的自我動機, 我其實也沒有義務要『推』。 所以,能夠有行動力是相當重要的,至少每週得有點產出。 考量到大家都是上班族,並不會要求每幾天一定要有個什麼成果。 但有做出些什麼東西的話,期望的週期最好是每週至少要有點進度。 至於學習材料是什麼,就以雙方都能方便取得的材料為主。 像是,我們一起用同一本書或訂閱了同一堂的線上課程。 因為我們的進度與視野必需能同步。 雖然,我通常會多偷跑一二個單元, 因為主要是負責給一點事前的提醒。輸出成果後,再給事後的 feedback。 若 feedback 是有助於輸出更好的結果, 那我們也許會討論要不要找時間,重複一次特定的學習單元。 成果的部分,主要就是『錄影邊實作邊解說』。 背後的核心在於要讓學習者自然地使用『後設認知』, 但我們其實不能直接談後設認知是什麼? 要如何掌握這項心理活動? 這實在太抽象了,不過可以透過一連串的小活動習慣它的存在。 為了把高冷的學術名詞隱藏起來,通常我會說我們用的是 『費曼學習法』只要你能向別人解說,那你就大致能掌握那項知識: 『現在想像一下,你是個家教老師。 你正在準備課程要講給一個學生聽。』 『你得做一些簡單的大綱與每個大綱內要實作的細節, 與相關的參考資料,能輔助你上課時提詞用的』 『對了,這個單元,我希望你針對 OOO 術語要額外說明一下』 邊實作邊解說除了學習心理學上的意義外, 還能協助我確認目前這個人是否有入行的潛力。 或是他入行後,是否有成長的潛力。 一來是若真的有機會面試,談技術問題能夠對談、術語能說得習慣 並使用適當的語。不至於雞同鴨講, 或心虛地用『這個』『那個』一堆的代名詞來指稱自己不知道正確術語的概念。 語料集大致無誤後,才能正常溝通,並下對 google 關鍵字。 我也能簡單地判斷出,這實作的程式是否跟他腦中的邏輯是一致的。 學習的速度 一旦學習者通過基本的考驗後,接著得反覆提醒的問題是學習的速度。 因為受考試領導教學毒害過的學習者,在面對自學時常常用錯了方法。 過去成績越好的人,可能就學得越慢。特別是那些浪費記憶才能的文組生啊。 我羨慕有強大記憶才能的人,但這拖慢了我們學習的進度。 把東西記住不該是學習活動的主軸, 所以我相當鼓勵制作各式小抄或可快速查閱的筆記。 可惜的是,大家都受了『良好的教育』,看到書本就想開始背東西, 讓我每次覺得產出速度變慢時, 都要去關心一下一起學習的小伙伴是不是情不自禁地背頌了些什麼。 那麼,話說回來若『記憶』不該是主要活動, 那麼我們該做些什麼好讓我們學習歷程平順一點呢? 首先是得對材料做分類。這裡引用先前的投影片: https://speakerdeck.com/qrtt1/learning-how-to-learn-gradle?slide=13 我們可以簡單地把知識分為 3 類: * 事實 * 概念 * 程序 * (後設認知) 過去以『記憶』為主軸的學習會習慣將『事實』『概念』先記在腦中。 所謂的事實大多是具體事物的名字、日期之類的東西。類比至程式中, 大致就是所謂的『常數』的部分,或靜態資料。 例如:一天中的秒數或類別或函式的名稱。 我們不特別花時間記憶它,但我們得認識它、使用它。 因為事實知識的存在,提供了一個基本的情境, 讓我們透過具體事物來認識這新世界。 概念則是一些原則、規則或理論上的定義。 有部分的『事實』可以用概念來描述(在它是有邏輯的前提), 像一天的秒數這常數是怎麼算出來的? 因為一天有 24 小時,一小時有 60 分鐘,一分類有 60 秒, 也就是 86400 秒。 我們能透過概念與事實去組合或推論出新的概念或事實。 像是鳥類是一種能拍打翅膀後,在空中飛行的動物。 所以,我們可能可以推論所有鳥類都會飛。 雖然,這不是真的。 但概念知識可以輔助我們去擴展知識。 能用它配合事實知識建立出更大範圍的背景知識。 並透過反例來補足思考的維度與創造認知失調的機會, 來強化學習的印象。 如同,我們在學習程式的『語意』,總是在推翻先前的對程式語言的認識。 那麼我鼓勵的學習方向是: 1. 認識一下事實知識,請克制一下千萬不要背 2. 學習一下概念,在概念能解說事實知識部分的例子得看得懂, 依書上寫的遊戲規則能說得通就行了 (看不懂快來討論) 3. 程序:先串起前面的東西,可以實際跑起來玩。 <== 這才是主要目標 4. 試著由程序知識的每個步驟指出它用到哪些概念,而概念中包含哪些事實。 要求『錄影』的部分主要就是程序性知識了: 透過一連串的步驟,我們能做出實際會動的東西。 通過審視錄影的程式,我能檢閱『概念』是否被適當地理解; 使用的術語、名詞(事實知識)是否正確。 我給出的回饋,也都針對在這 3 個知識間的注意事項中。 反向的流程(4),我們就不再特別提事實的問題了, 因為動手實作時一直反覆 key-in 或唸出來, 不知不覺就記住了。特別是有的人覺得錄影太羞恥一直沒錄好, 又不小心多錄了幾次,印象又更深刻了。 建立社會資源 有基本的自學能力與學習知識後,我主要的輔助功能差不多就結束了, 接著得建立起社會資源或運用網路資源來學習。 鼓勵已經掌握一些技巧的人,走入社群與實際的人們互動, 一開始可能只是單純地聽,但其實會發現因為平時一直在錄影說明, 並不太害怕與人談論相關的話題,甚至有機會聊得更細節些。 這會是一個自在的開始,在社群內能透過更多人的視角來看這個行業。 無論是實體的活動,或網路上的討論版, 我也試著輔助去參與回答別人的提問。 口說始終於文字是不同型式的表達,若能兩者皆通就再好不過了, 但不一定每個人都能發展的順利。這就看個人的緣份了。 當然,若有累積足夠的糧草,也有錢能課金的話, 直接透過培訓構通加速也是我鼓勵的。青春有限,把握時間。 ===================================================================== 工商服務 https://twjug.kktix.cc/events/jcconf-2018-cfp CFP 分隔線 今年的 JCConf 在 2018/10/19 日舉辦, 活動地點在台大醫院國際會議中心. 目前強力徵稿中,只要與 Java 生態系相關的稿件 以及促進開發者工作與生活品質的主題都很歡迎呦。 PS. 目前 kotlin 主題投稿領先中, 若想投同領域的朋友,先避開 coroutine 以增加錄取機會。 額外徵求, * Java 9, 10 的新 feature 介紹或應用 * Cloud Native 實際 * GraalVM 應用案例 * Agile * SRE/DevOps 實踐分享 * Functional Programming -- ※ 發信站: 批踢踢實業坊(ptt.cc), 來自: 114.24.48.207 ※ 文章網址: https://www.ptt.cc/bbs/Soft_Job/M.1532444428.A.F54.html ※ 編輯: qrtt1 (114.24.48.207), 07/24/2018 23:02:08

07/24 23:14, 5年前 , 1F
頭推
07/24 23:14, 1F

07/24 23:21, 5年前 , 2F
07/24 23:21, 2F

07/24 23:22, 5年前 , 3F
07/24 23:22, 3F

07/24 23:28, 5年前 , 4F
push
07/24 23:28, 4F

07/24 23:43, 5年前 , 5F
推,希望將來有天也能回饋於版
07/24 23:43, 5F

07/25 00:09, 5年前 , 6F
不推不行!
07/25 00:09, 6F

07/25 00:22, 5年前 , 7F
07/25 00:22, 7F

07/25 00:35, 5年前 , 8F
跪著看
07/25 00:35, 8F

07/25 02:18, 5年前 , 9F
我學長超熱心的, 10 幾年前也是他主動丟水球找我聊天 XD
07/25 02:18, 9F

07/25 03:58, 5年前 , 10F
大推!!! :D
07/25 03:58, 10F
※ 編輯: qrtt1 (114.24.48.207), 07/25/2018 04:54:18

07/25 08:08, 5年前 , 11F
07/25 08:08, 11F

07/25 08:31, 5年前 , 12F
07/25 08:31, 12F

07/25 08:37, 5年前 , 13F
07/25 08:37, 13F

07/25 08:46, 5年前 , 14F
推!
07/25 08:46, 14F

07/25 08:49, 5年前 , 15F
07/25 08:49, 15F

07/25 09:08, 5年前 , 16F
佛心 推
07/25 09:08, 16F

07/25 11:22, 5年前 , 17F
07/25 11:22, 17F

07/25 11:22, 5年前 , 18F
07/25 11:22, 18F

07/25 12:59, 5年前 , 19F
整理得太用心了,推一個 :)
07/25 12:59, 19F

07/25 15:40, 5年前 , 20F
07/25 15:40, 20F

07/25 16:39, 5年前 , 21F
07/25 16:39, 21F

07/25 18:16, 5年前 , 22F
數位系之光
07/25 18:16, 22F

07/25 19:29, 5年前 , 23F
推好文
07/25 19:29, 23F

07/25 19:59, 5年前 , 24F
07/25 19:59, 24F

07/25 23:22, 5年前 , 25F
07/25 23:22, 25F

07/26 08:28, 5年前 , 26F
推!
07/26 08:28, 26F

07/26 11:28, 5年前 , 27F
推,轉職的真的有點難
07/26 11:28, 27F

07/26 11:31, 5年前 , 28F
有這兩種心魔的最麻煩:功利到沒有好奇心了的,以及
07/26 11:31, 28F

07/26 11:31, 5年前 , 29F
追求銀子彈的
07/26 11:31, 29F
※ 編輯: qrtt1 (36.231.149.134), 07/26/2018 11:38:40

07/26 12:32, 5年前 , 30F
看到ID就推
07/26 12:32, 30F

07/27 12:55, 5年前 , 31F
07/27 12:55, 31F

07/27 21:22, 5年前 , 32F
推!
07/27 21:22, 32F

07/28 07:19, 5年前 , 33F
推! (4年前我也是渣渣而已XD。也是慢慢累積,逐漸給回饋
07/28 07:19, 33F

07/28 07:20, 5年前 , 34F
大大推~ JCCONF開始了阿,去年拿了免費票進去,哈哈XD
07/28 07:20, 34F
文章代碼(AID): #1RLpyCzK (Soft_Job)