關於技術教學這件事…
終於忙完工作量超大的 11 月,這個月有公開課、有企業內訓、有初階小型的工作坊、有大學的課,也有讀書會的分享,算是教學類型非常雜的一個月。
從 7 月離開前公司、自己一個人嘗試開課以來,也快要半年了,雖然不是第一次自己謀生,但也已經步入中年,做得還是這麼 to C 的營生,要說辛苦也真的非常辛苦,但成就感也是滿滿。
最近有種一個小階段完成的感覺,來 murmur 一下心情。
每次在課程設計的時候,我都會擔心一件事「大家想要知道原理嗎?會想要多知道一點底層的東西嗎?還是是想要會用就好?」我個人始終覺得「基本使用」就是去用就好了XD,雖然確實有人帶入門可以加速,但真的要能使用一個工具,最終還是要自己去多用,教得再好的老師能做的就是「加速」而已,加速的前提是自己要開始用,別人才有辦法幫你加速。
而有一些東西,以我自己來說,只是基本會用的話,我會不太敢說我會這個東西,因為我不知道「為什麼」就覺得沒有真的掌握。但這樣其實也無妨,大部分的人對大部分的工具,也都是停留在會用就好,會用、能用,重點是能幫自己、團隊、公司、客戶解決問題,那就足夠了。願意的話,下一步讓自己可以用得好、用得順,那就勝過大部分的人了。我自己也會先做到這點,只是只有做到這點的話,我不敢真的說自己會而已,對於解決工作上遇到的問題,其實也綽綽有餘了。
但想要知道為什麼,通常遠遠比知道基本使用難上許多,不一定有資料,官方也不一定有揭露,我也沒有強到去逆向工程它們,只能時不時在網路上搜集資料研究。好不容易找到一些資料,自己還不一定看得懂,我自己就算找到資料,第一次看可能一知半解、覺得很抽象,會想要做做看實驗去驗證文章裡講的、想要親眼看到,但設計實驗這件事,也需要一點點基本能力。說是「實驗」,其實也沒有很厲害,有時候只是下幾個指令,看看輸出的結果,但…要下哪些指令呢?做了一點實驗,也許方向對、也許方向不對,但再回頭看資料時,通常會比第一次看的時候,可以看懂更多一點,就這樣閱讀資料跟動手實驗,反覆地互相交錯迭代,要磨上一陣子,量變累積成質變,才會覺得「喔,我好像抓到這個脈絡了」。
再來是,這個「為什麼」的探索,好像也是沒有終點,永遠有為什麼的為什麼、底層的底層。有時候分享說,我的 Docker 課程會講到底層時,我自己都覺得不好意思,其實沒多底層,就只是比基本會用多懂一點點而已。我也沒多強,我只是單純地想知道自己在用的工具,為什麼可以做到這些事,網路上人家說的 best practices,為什麼那樣做是 best practices 而已。
設計課程時,我都是抱著「如果連我都能懂,其他人也一定可以」的心情來做,我會一直想著,我覺得這東西超有趣的,能不能讓其他人也一樣覺得有趣呢?我要怎麼分享我對這技術的理解,我自己整理出來的「我自己可以接受」的這個理解過程跟脈絡?摸索的過程可能很花費時間,但摸索出來的結論也許就幾句話,好像看起來沒什麼,我能不能讓大家理解跟認同「知道為什麼」的價值?
也剛好,我不是一個很強的人,可能算是中等,可以作為初入門的人跟強者之間溝通、翻譯的橋樑。太強的人真的很難做到所謂的深入淺出,他們往往不懂大家哪裡不懂 XD 我沒有那麼強,我學每個東西都有一個很掙扎跟很長的認同過程,這個過程跟大部分人其實差不多,也就是大家會有的疑問、會遇到的問題,其實我也都遇到過。
我好像也算擅長整理,就把這個過程整理起來分享給大家,讓大家知道怎麼入門跟開始,也稍微減輕一點點這個過程的痛苦、少走一點點彎路。因此,我的課程內容往往是從問題出發,現狀是怎麼樣、有什麼問題,然後這個新的技術怎麼解決這些問題的,盡可能不讓技術名詞憑空出現,試著把這個前因後果、來龍去脈分享出來,聽眾也許就能覺得這東西真有趣,進而開始自己去研究,或是,把這個過程跟研究方法帶去自己其他有興趣的地方。
覺得有趣跟真的理解,課後自己才會繼續下去,這是我最想要做到的,甚至我會覺得,你不一定要喜歡我分享的這些東西,畢竟這真的很看個人興趣。但我蠻希望聽眾可以把這個研究的過程,或者說熱情,帶回到自己有興趣的題目上面去,能做到這樣,我的教學才是真正地成功了。
至於基本指令操作那些,我還是會分享自己的整理出來的系統,但是,課堂上確實無法保留太多時間練習,我會覺得,這些,回家自己多練習就好 >< 花了錢的上課時間,應該多聽一些自己回去後,也比較難練起來的東西,不是不可以,是比較難或沒有方向。但也確實因此,有時課程回饋會被抱怨課堂上練習的時間太少… ><
開課真的難,我收到的回饋中,最多就是想再聽更多、希望時數加長之類的。可是瑞凡(好老人的梗),時數加長,意味著費用會變高,費用變高,招生就會變得困難。認識我的人還沒有很多,知道我上課的風格、接受這個風格、喜歡這個方式的人,也沒有很多。我現在沒有正職收入,就必須很考慮怎麼維生這件事,就得考慮市場接受度等等。可是我又有點任性,例如我認為底層跟基本學科很重要,我就會往這個方向去研究、去開課,有時候就不是現在最熱的題目,例如 AI 這類,目前比較需求比較高、比較受歡迎的課程,那也不是我擅長的,我也自認為沒有這個能力開這樣的課程。
究竟有多少人認同基礎學科很重要,這個問題我也不知道答案,網路課算是我的一個實驗,從開課以來,一班約 18 個人,每個月可以開出一期,已經讓我非常非常驚艷了。Docker 課程大部分的學員回饋,也會反映喜歡聽這些稍微底層一點的東西,這往往也會讓我更有信心一點。對於這些回饋,其實真的很開心,原來大家不是不想知道,只是可能沒有那麼容易、不知道怎麼開始而已,很開心可以當這個引路人。
說到這裡,真的要感謝這半年來,有來上我的課的朋友們,好幾位朋友還不只上過一門,回頭率很高,這也算是我做得還不錯的地方?還有人自己上過後,回去推薦給所有親朋好友(同學、同事)。真的謝謝大家,你們讓我知道我的方式是有被認可的、是被接受的,這個肯定真的是一直支撐著我的動力,我一直都不是一個很有自信的人,非常需要大家的肯定,也謝謝很多上過課的人,願意跟我分享我哪裡做得好、哪裡可以更好,讓我一直可以有更好的方向。
話說回來,我現在對於一個技術教學的老師的評斷,特別是針對初階入門的,我的評斷標準就是「這位老師是否願意重頭思考這門技術」,願意花心思去回想當自己學習時遇到的問題。好吧,也許有的人天縱英才,一開始就接受良好,不像我學得辛苦,那至少是否願意去理解剛學習這門知識、這項技術人的門檻,他們會在哪裡撞到牆、會在哪裡卡關,就算是前置知識不足,那能不能多少幫忙補上一點?
我盡力做到這些事,但我也知道我還沒有做得很好,即便我教過最多次的 Docker 跟網路,一個班下來,我也知道不是所有人都能聽懂跟接受,說來可能是藉口,但學員背景不同、時數不夠,一直是個難題,一樣的內容,有人覺得太簡單了、有人覺得太難,但我努力在克服,盡可能讓所有人都覺得有收穫,這超難,也一直很挫折,即便我知道我的課,已經算非常不錯了,我還是想努力解決看看。
解決的方式之一是安排助教協助,這點效果良好,但其實一開始是有點誤打誤撞。助教都是我曾帶過的學生,剛開始邀請他們來當助教的時候,我想的是,我覺得他們需要上這門課🤣,不是他們不會,他們會、工作也已經在用,但可能沒有這麼有體系或全面,又確實課程中可能八、九成的內容他們都會了,就差那麼一點點或系統,那就來當助教吧,我都跟他們開玩笑說「我是讓他們來蹭課的」(備註: 助教都是有薪水的)。
結果好處超多,現場可以有更多人即時協助學員,每次課程回饋,都會有人表達對助教的感謝,覺得助教們幫很多忙。而助教自己,我相信也是有收穫的,「什麼時候才是真的學會一個東西?當你可以對初學者解釋它的時候」,助教們會了當好助教,有時候我們會有課前課、課前會議,有時候助教們會自己私下花時間去學習,就怕當場被問倒。
我真的超愛我的助教群們,他們真的超級優秀、超級努力,我經常會在課堂上說,助教們都比我還強,這真的不是開玩笑的,他們都是現職的 SRE、現職的工程師,可以很好地彌補了現在沒有業界實務的我。而除了在現場協助學員外,他們還會幫我觀察整堂課的過程、上課氛圍、學員互動等,在課前課後都會給予我非常多的、具有建設性的建議,對於我來說,他們不只是曾經是我的學生,現在更是我的同事跟夥伴。
要技術能力夠、表達能力又好、又有耐心的工程師,真的為數不多,我為他們感到驕傲,也很榮幸,他們願意花自己休息的時間,跟我一起做這麼多好的課程。
我做得很好,也還不夠好,7 月以來開的課,每一班都滿班開課,還會有人在候補,這應該算是非常好的成績了?我自己開的課滿意度都很不錯,畢竟我全職、專業在做這件事,也做兩三年了,這個成績是應該的。
合作老師的課程也算合格,但必須說也還有很多更好的空間,調整的時間永遠不夠,我必須在尊重合作老師原有的授課方式與風格下,加上我對學員,特別是初學者的了解。這件事其實讓我覺得很艱辛,我覺得我介入的算多,我甚至會出手直接改投影片、上課時也會打斷發問或補充,這些是很不禮貌的事,這點必須感謝合作的老師,願意跟我溝通、跟我討論,讓我介入這麼多。
不管是我自己的課,還是跟其它老師合作的課,從課程設計開始,課程標題、內容、報名宣傳,每次的宣傳文案都是我自己寫的,再來是報名表單、課前通知、上課內容、實際上課到課後回饋,總之,每一門課的每一件事我都親力親為。作為工程師應該要自動化的,但我刻意不這麼做,我要親自去了解每一位來上課的學員,只要他們報名表單跟回饋表單有多寫一些分享,我一定會去看,也一定會去回應,有的回應是直接一對一的回覆,有的回應就是反映在課程設計上。這超累、也超花時間,但在這個什麼都講求自動化、AI 的世代,我更想要把每個學員都當成獨立的個體,看到每個人的多樣性,跟每一個學員交朋友。雖然我的記憶力很差、又有臉盲症,不一定人名跟臉對得起來,但我是真心地對每一個學員都有情感在的,這些情感是從這些過程裡一點一滴累積出來的。
所以只能很抱歉地說,比起禮貌,我更在意的可能是我對學員們的承諾,會來報名的學員,大部分也是因為知道我、或是上過我的課的朋友推薦來的,我有這個責任讓學員們學到東西,要學會怎麼用、還要能知道為什麼、有掌握到一點脈絡。
最後,其實自己近期有一點迷惘,畢竟收入極度不穩定,有的月份的收入連房租都不夠付。教課看起來時薪高,但也不是天天都有課,且要把課做得好,備課時間極長,但大家只會看到上課的那短短幾個小時。再來是,脫離業界愈久,又專注在「教學」這件事上,可能技術能力會愈來愈退步或是跟業界脫鉤?有點不確定全職技術教學這件事是否能長久走下去…
雖然我知道我做得不錯,但難免還是會收到一些不滿意的回饋,雖然已經比幾年前、一開始教課時好很多了,但我還是無法很好地處理這件事,理智上知道怎麼做,跟情感上,或是對自己的要求上,多少還是會無法接受。我知道我沒有辦法讓所有的人滿意,但有時候看到一些自己刻意設計的部分,被視為很糟糕的安排,雖然只是很少數的 outliner,但還是會覺得有點委屈,在比較疲倦的時候,真的會沒有餘裕去處理這樣的情緒。如果有看到這裡的朋友,真的超級鼓勵你們,不管是上任何課,有什麼疑惑跟疑慮,在上課時就提出來,等到最後的課程回饋才說出來的話,我連改進跟補救的機會都沒有 🥲。
12 月只剩下一期網路課、政大的課,還有 Web Conf 的一個 workshop,除了還有一些之前承諾的工作要做外,其他時間是該來好好思考下一步了,明年要怎麼走呢?是繼續在全職教學這條路上努力看看,還是該去找工作了呢?
我擅長且喜歡技術教學,但我也真的不知道這是否是一條能長久走下去的路,一想到要回去找工作,就有點「放棄夢想」的感覺,或許去面試談過後,會找到新的夢想?又是不是該讓自己回到穩定一點的生活型態呢?哎,明天來去拜拜擲筊好了…