「我們去某頂尖大學的資訊工程碩博班分享,台下學生露出不可置信的表情─這些學生都沒上的『機器人與人工智能』 ,這個當時才剛升上國二的小男生修課通過認證,而且是特優。」
在當天的談話之中,我想我一定也常常作出不可置信、深受震驚的表情。
程式小天才,兩年前只是普通電玩小孩
廖爸的表情很平淡,沒有特別高興、欣喜,或是驕傲─和聊各種生活瑣事一樣的表情。也許他習慣了,也許他打從心底覺得,這個情況才是「正常狀態」。
在去年暑假,我在一個程式教學的場合認識了廖爸和他的孩子 Adrian——一個十四歲的少年,將升國三的年紀─看起來太純真可愛,我本來以為是五年級。我後來發現不能小看這個孩子,原來他差不多是助教,他在場的主要功能是指導那些高中年紀的學員。
這是異常,是天才,或者,這可能是未來教育的正常狀態(的一種)?在我訪問廖爸和 Adrian 的時候,這個問題不斷出現在腦中。
其實,Adrian 開始認真學電腦的時間並不特別早,他從小也是玩遊戲、上網、應用程式,一直到小六。
小學畢業的那一年暑假,廖爸讓 Adrian 報名了一個程式研習營。這個創新的程式研習營,使用麻省理工學院開發的 Scratch (link is external) 這個視覺化的程式軟體,教學生程式語言的基礎概念。
這是所有改變的開始。
方法對、思維對,學習可以自然而然
這可不是玩玩而己——Adrian 竟然在這個課程的期末作業,用這個軟體做了一個類似超級馬利的遊戲:一個人偶可以跑、可以跳躍避開陷阱,最後升級破關。
在這門課程後的另一個成果,是寫一個平面幾何的程式。我們都知道 Y=aX+b 這個式子,可以在平面座標系上畫成一條直線。Adrian 寫了一個程式─在輸入 a 值和 b 值後,由電腦畫出直線;或是拉動直線,自動算出 a 值和 b 值。
Adrian 玩出了興趣,於是國一後繼續參加研習營,老師教學生們使用 Udacity (link is external) 這個網站,讓學生們自修「電腦概論 (link is external)」這門課。這門課的影片有中文字幕,但是非常難,比一般資工系大一教得還深,最後的期末專案也不是開玩笑:做搜尋引擎,並且將搜尋結果排序。
這門課是很大的挑戰,因為開始要使用非圖像化的程式語言,而且是在家自修線上課程,並沒有老師在旁邊盯進度、逐級解說。即使這樣,Adrian 還是花了三個月上完。他每天看課程大約一小時,周末 3-5 小時。