倉促上路的程式教育,不可淪為另一張考卷

倉促上路的程式教育,不可淪為另一張考卷

閱讀時間:10 分鐘

微軟的創辦人比爾.蓋茲曾說程式教育是「每個學生都應該學習的 21 世紀的基本技能」。台灣 107 年課綱也正式將程式設計列為必修。後年開始,國高中學生都要學程式設計。

資訊科技影響世界,軟體工程師供不應求,許多國家,如英國、韓國,都積極研發程式教育,台灣該如何起步?

來自非營利組織 Girls in Tech 的 Joannie,目前於宜蘭礁溪國中親身投入電腦資訊課程。她結合國外案例以及親身經驗,投稿說明台灣的幼苗將面對新一輪的競爭,而教育課綱的準備還有 3 點不足。


程式教育納入課綱,教材和師資卻遠遠不足

107 年課綱已明確將程式教育課程列為必修。但目前學校不但極度缺乏課綱內容和教材,也欠缺必須倍增的 IT 人員。最嚴重的是,真正能投入現場教學、願意接受培訓的準老師嚴重不足 — 儘管每年資訊科系畢業生超過萬名,許多科系也改名冠上「資訊」。

要提供實在的程式教育,必須有(1)系統性的教材,(2)合格的師資與(3)好學的學生。而這也是台灣程式教育準備最不足的三個點。

首先是教材。程式教育的根本,其實是訓練學生的邏輯思維能力,而非直接教導程式語言。而這一點英國的教材是領先的。

英國:強調邏輯思維,而非如何寫程式

英國從 2014 年起就將程式教育納入國中小的課綱,比台灣納入國高中課綱還早。其教育理念著重邏輯,而非程式。

前陣子英國程式教育促進協會(Computer At School,以下簡稱 CAS)的董事湯姆.柯里克(Tom Crick)來台分享。他提到英國小孩從 5 歲時,就開始學習圖像式的邏輯訓練(Scratch) ,訓練思考。

不過,雖然叫科目叫「電腦科學」,但他說千萬不要以為教學只能從電腦出發。CAS 有一系列「無電腦的電腦科學」(Unplugged Computer Science)課程,是透過活動讓學生建構對電腦的基本認識。

例如他參訪新北市板橋國小時,就自己矇上眼睛,請現場學生透過聲音指揮他走到目的地。但學生每次只能講一句話。這個活動的目的是傳達寫程式其實就是告訴電腦指令。如果指令的邏輯不正確或不清楚,機器(或是矇眼的人)就無法完成挑戰。

CAS 是「老師的老師」,在英國開設師資培訓課程,培育老師如何教導運算思維(computational thinking)。運算思維是寫程式必須擁有的思考方式。CAS 提供免費教材、連結各方資源,也鼓勵老師們互相幫助。目前 CAS 上已經聚集超過兩萬四千名老師,產生超過八萬筆的線上討論,是一個開源平台知識庫。

CAS 的另一個重要業務是鼓勵企業贊助教學。老師除了獲得資源之外,可以從企業了解最新產業變化。而各種人才,包括企業人士,也能有機會一起參與教育。

當學生先認識了電腦原理,再結合了數學,觸類旁通,最後才開始學程式語法。學生學會運用邏輯,就能更容易掌握程式語法;畢竟程式語法只是另一種語言。

有了正確基礎的邏輯訓練教材,還需要有師資搭配。但台灣現在卻缺乏師資培訓。

台灣:偏鄉師資培訓是關鍵

程式教育仰賴長期投入的老師,但台灣還不足。

目前台灣有不少大學教授、國中小老師,透過成立電腦科學社團或暑期營隊的方式來教導,也著手編撰教材。課後社團的時間較完整,學生能實作體驗與回饋,老師也比較能適時指導。但暑期營隊由於時間短,老師參與的時間不長;往往營隊結束後,程式教育也就此停擺。

偏鄉的狀況更是嚴苛。台南成功大學的蘇文鈺老師,曾在偏鄉推動暑期程式營隊,希望協助學生學會電腦技能,在營隊結束後能夠透過繼續透過網路自學。但實行後發現,學生還是需要老師的持續引導。電腦已經送到偏鄉,但卻因為缺了人,無法延續教學,實為可惜。

後來蘇老師轉為培訓當地老師,讓老師們可以回學校長期推動程式教育。他並且與趨勢科技及 Cybersoft 合作,選定數所偏鄉學校,不但共同計劃寒暑假營隊,也積極與國中小各科的熱血老師規劃教案,將程式設計融入各科教學之中,以為輔助。希望讓老師可以安心教學,不會感到過大的壓力。

有了教材、師資,最關鍵的一環恐怕是如何激發學生學習的意願。

自身經驗:程式教育需引發興趣並結合生活經驗

要激發學習意願必須親臨教育現場。我和 Girls in Tech Taiwan 分會長 Jane Shih 今年進入宜蘭縣礁溪國中,帶領八年級學生的電腦資訊課程以及社團。

電腦課程

經過兩個月的教學,我們發現學生喜歡用電腦玩遊戲、看影片、聊天。此外,他們用手機的時間比電腦長。根據這些特質,我們著重結合生活經驗來引發學習興趣。

第一堂課我要學生用 Google 搜尋資料,用 Google Doc 彙整,藉此訓練學生打字、操作文件編輯器以及線上協作的能力。接著學生透過分組競賽,了解電腦的硬體、軟體,以及數學的二位元制。我們引導學生觀察生活周遭,去了解其實電腦早已無所不在。

目前課程已正式進入程式教學。我們選擇 Python 程式語言,因為它較直觀,適合基礎教學,且可以延伸的實作也很多。例如 Arduino 版子(一種單晶片微控制器)就可以用 Python 控制。課程的目標是到學期終,每位學生可以完成一個小專案或建造一個簡單的四軸車。

實作

要激發學習意願,就必須降低學習門檻。英文即是程式的門檻之一。所以程式教育必須讓學生願意嘗試打英文、閱讀英文,他們才會有興趣。

例如講到程式中「定義」的概念,我會從數學的應用題切入,讓學生練習打出定義式 — 例如汽車有四個輪胎,可以寫成 wheel = 4,建立定義變數的觀念。

我們也用 Google Sheet 製作簡單的問答題,讓學生學概念的同時又能學英文單字。一堂課之中,學生運用了數學、英文、電腦搜尋的能力,還可以實際操作。

此外,我們建了一個 Facebook 社團,分享科技新聞趨勢,也鼓勵學生提出意見。學生的意見會直接影響教材設計。

每堂課我們都會保留 15-20 分鐘的課堂練習。學生碰到問題就舉手發問,老師隨時走動觀察。若學生希望學習更多,我們也會提供相關的輔導管道,讓學生獲得一些線上資源。

時間緊迫,我們都必須起而行

基礎的邏輯思維訓練、師資培訓和引發學生學習興趣,這三者缺一不可。程式教育不能只教寫程式,更重要的是要建立運算思維,能在生活中解構問題、找出解決方式,再整合資源。這也是科學精神。

而且,國中不分科,所以教育的目的絕對不是把每位學生都訓練成電腦工程師。而是讓學生能把邏輯訓練應用在所有學科。

會寫程式就如同擁有一把鑰匙,一個可以協助思考與解決問題的工具。當學生擁有這把鑰匙,碰到自己熱愛的領域時,可以很快的製作簡單的程式,幫忙搜集資料、做分析,甚至預測結果,導入實驗精神。

程式教育政策必須規劃一連串流程,從師資培訓一直到教師進入學校。不能只作為新增的「程式教育」單個科目,淪為另一個考試科目。

離 107 課綱實施還剩不到兩年。台灣已經累積許多教學經驗,但對正式導入課綱的衝擊仍然在渾沌階段。程式教育問題,其實就是台灣教育累積的問題 — 跟不上世代變化。過往經驗只能參考,更重要的是打破舊思維,翻轉人才培訓與考核方式,才能引導程式教育往對的道路發展。

«

»

科技島讀-你的未來趨勢嚮導

有物推出新產品囉!

由有物報告團隊製作的最新產品-科技島讀

透過閱讀科技島讀,你將能夠掌握科技趨勢,從更高的視角觀察科技將如何改變世界。

現在就前往 >> 科技島讀