教是最好的學

jopen 10年前發布 | 5K 次閱讀 程序員

  英文原文:Teaching is the Best Way to Learn

  Vlad Mihalcea 是一位軟件架構師,熱衷于軟件集成、高可伸縮以及并發編程等主題,他感興趣的領域主要有 Java、數據庫、事務、NoSQL、OOP、重構與模式以及敏捷和 Scrum 等。近日 Vlad 撰寫了一篇博文,談到了對于程序員來說該如何學習,什么才是最好的學習方式等主題。

  軟件開發是一項知識密集型的勞動,時至今日,程序員需要掌握的知識量呈現出爆發式的增長。大多數時候,我們在招聘開發者時都是看他們已有的技能是否與項目的需求相匹配。項目最終會完成,然后開發者又會被分派到新的項目上,有時使用的技術與招聘時所要求的技術是完全不同的。那么有什么辦法可以培訓開發者呢,讓他們能夠盡快掌握新的技能,實現自身價值。

  通常,培訓與指導是被人遺忘的事情,每個程序員都按照自己的方式學習和工作,其實這么做隱藏了非常大的風險。我覺得我們應該在培訓與指導上多花一些時間和精力,將其看作是一筆投資而不僅僅是開銷。

  培訓團隊有多種方式:

  1. 雇傭外部顧問

  如果有雇傭外部培訓師的預算,那么你就可以考慮這種方式。但遺憾的是,并不是每家公司都愿意將費用花在外部培訓師上,特別是在無法準確計算出投資回報率的情況下更是如此。

  我曾經參加過這種培訓,雖然在培訓過程中我覺得我理解了講師所講的全部內容,不過過一陣我才發現有很多問題需要解答。但是培訓已經結束了,因此只有在消化吸收了培訓所講的內容后,培訓的價值才能彰顯出來。

  2. 讓有經驗的員工成為講師

  如果有員工在某個領域具備很強的背景,那么你可以讓他為團隊的其他成員準備并做個培訓。這種方式要比聘用外部培訓師成本更低,同時還有其他一些好處。培訓對于學員和講師來說都有好處,可謂是一舉兩得。我記得在高中的心理學課上,老師告訴我說教是記住信息的最好方式(你能記住教授的 90% 的內容)。因此,培訓師也會通過這個過程得到很好的自我培訓(通過準備相關的材料)。

  我發現培訓之后會有一個很有趣的結果。人們會過來問你問題,這將你置于一個教練的位置之上。同時,這也會有一個雪球效應,因為學員會對你所講授的內容產生興趣,你也會對你所掌握的知識有更深刻的理解,同時還會不斷改進自己的培訓技巧。

  3. 分派式培訓

  這個想法由來已久,在上網查看資料后,我發現這種方式已經被應用到了外語教學中,那為什么不通過教來學呢?

  我的想法是鼓勵所有員工彼此教授對方知識,講的東西可以是他們最擅長的,也可以是新的概念。如果沒問題,你甚至可以給每個講師一定的獎勵,或是讓他們利用一些工作時間來準備課程。這很有趣,特別是在每天的工作有些單調乏味時效果更佳。

  如果團隊要掌握某項新技術,而這項技術不那么容易掌握時(比如說 Scala)采用這種方式也是可以的。所有的團隊成員都應該學習基本知識,不過每個人要專注于學習特定的一個主題(比如說 Mixins)。通過這種方式,我們將學習成本分散到了每個團隊成員身上,因此是一種并行的方式,可以加快學習速度,同時還能確保更佳的學習效果。

  各位 InfoQ 讀者,你認為最好的學習方式是什么呢?看書、實踐、看視頻、講給別人聽,還是其他方式?一種方式優于其他方式的原因有哪些呢?個人習慣、時間問題,抑或團隊需要?歡迎將你的想法與大家分享。

來自: InfoQ
 本文由用戶 jopen 自行上傳分享,僅供網友學習交流。所有權歸原作者,若您的權利被侵害,請聯系管理員。
 轉載本站原創文章,請注明出處,并保留原始鏈接、圖片水印。
 本站是一個以用戶分享為主的開源技術平臺,歡迎各類分享!