2018年10月21日 星期日

教育不是丟本書然後在臺上照書唸:不忘初衷

想像這樣的場景:

妳在妳最熟的地方走著,突然路邊一臺車停下來,駕駛自稱從外地來並向妳問路。妳知道也去過她的目的地,該怎麼教她?

妳可能會跟她說直走幾公里,看到KFC右轉.....。。

依照溫伯格的軟體管理學套書,妳所在做的正是使用瀑布式模型。這模型是這麼說的:你要先完成a階段,自然就會進入b階段,完成b階段就會到c階段……依此類推,最後就會完成。

問題在於上句中所提到的”自然就”,現實中有2個限制會造成”自然就不”:
1.如果a階段執行出錯,這模型完全沒有告訴你該如何自救。(溫書舉了一個朋友找他,結果朋友在錯誤彎道轉彎,最後迷路的例子)
2.這模型並未告訴你:如果條件不符的話該不該做。換言之,它只說”做什麼”,至於前提條件則隻字未提。(以開版為例,因為你習慣騎機車,所以妳講的也是機車路線,但是對方是開車的,那怎辦?)

換言之,這模型雖然看起來很簡單可靠,但在實務上並未考慮到學習者,只是基於便宜教學者的立場出發罷了。

或許有人會說:「要有自學的能力。」

這話沒錯,世事本來就不一定每件事都能有人教,對於未知性的研究更是如此;但是這說法是在推卸責任!教育不是為了教育而教育,教育是為了「提升」,是為了將知識與經驗傳承。換句話說,如果你的教育沒辦法「提升」學習者,沒辦法協助學習者面對未來的挑戰,那你只是在臺上唸稿,依照既有的制度設計考卷、評分而已。

為了教書而教書,為了上課而上課,這對學生而言是悲哀,對教書者自己也是悲哀。

學習與教育,其初衷很單純,但是不能忘啊……。




每週一段

One does not simply learn to code的網上中譯:

不要簡單地學習編程

不要簡單地學習編程。因為編程不簡單。編程挺難。

每個人都知道這一點。所有分析過錯誤堆棧(stack trace)的人,頭痛於 git 命令的人,都知道這一點。

不幸地是,大量的營銷人員為了掙錢在宣揚這個觀念:編程很容易,或者如果你使用他們的產品,編程就會變得容易。

當有人告訴你編程很容易時,他們實際上是在對你進行巨大的傷害。

腦外科醫生容易

說「編程容易」與說「腦外科醫生容易」類似,或者類似於「寫小說容易」!

在晚宴上,一個腦外科醫生對阿特伍德(加拿大作家)說:「我一直想寫東西。我退休後有時間了,我想成為一個作家。」 阿特伍德回答說:「多巧啊,我退休時,想成為個腦外科醫生」
然而,營銷人員繼續在說:「編程容易」,「編程沒有那麼難」,或者我最喜歡的版本:「編程容易,是『某件別的事情使得編程困難』,所以那是難的」。

所有這些營銷人員通過說這話達到了目的 - 讓人感覺蒙逼 - 有時候,在這個過程中就收到錢了。

知識的咒語

不幸地是,不只是營銷人員說編程是容易的。我遇到有經驗的開發者也一直說:編程容易!

為什麼有些投入了成千上萬小時以精通編程的人也說編程容易呢?因為他們遇到了一個認知偏差:知識的咒語。他們不記得以前不知道如何編程是怎麼樣的心情。或者即使他們還記得,他們可能也忘記了好久他們剛開始時是如何努力的。知識的咒語使得一些有經驗的開發者不能與初學者感同身受。這種同感的缺失在任何地方都不像每個人的最佳的搜索結果那麼明顯:編程教程。

多少次了你真的能夠完成一個你通過 Google 的找到的教程,而沒有被一些難以理解的錯誤或者歧義而崩潰。

沒有留言:

張貼留言