對目前大學資訊教育課程感想

這幾年跟著去北部各大學觀摩教育部專案成果,我有一些想法分享一下。

  1. 過度強調黑客松 (hackathon) 和比賽 ── 教育部規劃 KPI 的人過度強調這類活動,以致申請計畫的老師們必定要往這個方向走。表面看起來學生參加林林總總的比賽,但是這種約 30 小時的黑客松偏離了軟體系統開發的現實,讓學生誤以為焚膏繼晷大拼一場是這行的本質。 不,軟體公司不是這樣搞的。軟體公司做一件事情是步步為營,讓每個角色很嚴謹地產出該有的資訊,然後做好整個一個工作管路 (pipeline) 來運作。Hackathon 或是比賽可以很激情,但是它們不是現實。
  2. 行動裝置程式 (mobile apps) 在專題計畫中出現太多 ── 從 1991 年 8 月 6 日 Tim Berners Lee 上了這世界第一個網站 (web site) 開始,到現在已經有 25 個年頭,但是我們很多大學的資訊教育裡還沒有正式把這個放進課程裡。反觀 Apple 只從 2007 年發佈 iOS 及 iPhone,每個學校都在很多課程中強調 mobile apps 的撰寫。等到學生進入職場,那時才發現兩邊的需求完全不成比例。伺服器端 (server-side) 需要的技能訓練不完全是民間公司的責任,因為那裡通常系統很大:從 stateless 的 http 到後端資料庫的處理,中間有太多眉角需要「大系統」的基本知識,但是很多學校並沒有正式提供這樣的課程。就算是現在最夯的「資料科學 (data science)」上,老師們也可能只是要學生懂如何寫 R 或是 Python 的小程式,而沒有教育它們背後怎麼擠出這些資料的佈局,不管是 Hadoop 或是 Spark 的複雜度。
  3. 內功有點被偏廢 ── 這幾年一窩蜂「訓練軟體人才」的結果就是:傳統計算機科學抽象思考的訓練被棄置了。我知道 (尤其不是全球 500 大學校的) 老師們讓學生就業的壓力很大,但是「計算思考 (computational thinking) ([1])」不是喊假的,這種思考訓練可以讓學生跨過很多世代的技術變遷,而不會被淘汰;它可以讓學生一直有個中心思考,看出解決問題方式的本質,而不是跟著潮流走而已。大學的目的在讓學生學會怎麼建立這樣的思考體系,而不是只提供「現有技術」那種職業訓練所的教學。 我走到今天,還是時時有些以前沒發現的驚喜。舉例來說,由於 machine learning 的關係,我大學時學的統計和線性代數突然變成很重要的基礎知識;天知道哪天我心愛的隨機程序 (stochastic processes) 會不會變成另一個主流思考。大學要有大學的堅持,不管是文學院或者是理工學院,你們都是在看長遠的,不是炒短線的。

[1] https://www.cs.cmu.edu/~15110-s13/Wing06-ct.pdf

原稿在 https://www.facebook.com/notes/wen-chun-ni/%E5%B0%8D%E7%9B%AE%E5%89%8D%E5%A4%A7%E5%AD%B8%E8%B3%87%E8%A8%8A%E6%95%99%E8%82%B2%E8%AA%B2%E7%A8%8B%E6%84%9F%E6%83%B3/10157546215655088

對目前大學資訊教育課程感想 有 “ 1 則迴響 ”

發表迴響

你的電子郵件位址並不會被公開。 必要欄位標記為 *