大班、跨域程式設計教學的甘苦談
進入數位時代,學生們不分領域,均應有「三言兩語」的技能:中文 (母語)、外文,以及程式語言,才能成為未來社會的數位公民。理想如此,但大學端的教學是否已充分準備以因應趨勢?因此「推動大學程式設計教學計畫」的團隊,在2020年11月25日於集思會議中心尼采廳舉辦「商管 × 程式設計」教學交流會,透過跨域程式教材,引導大家討論與發想。
講者之一的本校資管系孔令傑老師,在109-1學期與盧信銘老師及助教團隊合授800人的超大班「商管程式設計」。此門課已在校內運作8個學期的通識課程,轉為大班授課,則是首度嘗試。
為擴增規模並方便讓更多非資訊領域的學生修習,許多異於傳統程式設計教學方式則被採用。孔老師應用混成教學模式,以數位影音的方式來講課,讓學生可以跳脫時空的侷限,並調整觀看影片的速度,或是回放不理解的片段。正課時間的office hour與週間多班助教課,加上學期中也有幾堂實體教學課程,均能為學生提供個人化的協助,「一個都不能少」,為大班授課與一般課程一以貫之的原則。孔老師認為,程式設計的教學與考評應跳脫傳統的教師單向講授,與背誦後考試的模式,「做中學」,讓學生有實際體驗與操作,運算思維才能內化而不易忘記或被淘汰。因此這門課特別重視作業的設計,讓學生實地演練;另有期末專案讓學生就感興趣的主題發揮所學,同時培養自行運用網路資源找資料及除錯的能力。
課程人數倍增,即使對教學有滿腔熱忱的孔老師亦難事必躬親,於是改弦易轍,將助教團隊分工:有些行政助教負責管理、有些助教回覆學生疑難雜症等、有些測資助教把關作業品質、有些助教負責維護自動批改系統。除週一 office hour 的輔導助教外,週間多班助教課皆需負責教學講解、輔導學生。且因修課人數規模龐大,但學生基礎和領悟進度不一,即安排助教專責將教師講授的內容整理為重點影片,供同學複習及確認觀念。雖助教群大多來自資管相關科系,但亦有與資訊領域無關的,反而發揮鼓舞之效,給外系學生心理安定感。因此大班授課的首度嘗試,能夠至今還算順暢,孔老師以為助教團隊實功不可沒。
當然大班授課的嘗試,挫折難免。例如不少學生是「跟風」來修,卻未反求諸己,於是對課程的負評也隨之增加;此外助教的工作分配不如預期、臨時無法參加考試的同學變多等,都是轉為大班授課之初難以預料的。孔老師自我砥礪,這些突發狀況其實是考驗著授課教師的心理建設。因此即使無法立即依學生意見改進,但這些都是寶貴的歷練,未來「商管程式設計」繼續大班授課,相信能運作得更順暢,也能啟發其他課程的大班授課。
孔老師亦分享共構教材的核心理念:從「專案式」的學習理念出發,設計模組化、有彈性、互動性的專案。模組化的專案設計,可讓學生在具備一定基礎後,透過課堂上提供的部分程式碼進行修改,專注在練習特定技能,如字串處理、資料讀取等能力。學生可將課堂上所學的程式設計「現學現用」在實務,從中獲得成就感,並進一步激發學習興趣。
交流會的另一個講者,國立屏東科技大學資訊管理系賴佳瑜老師,也分享PTT社群輿論關鍵字分析的專案架構。從爬蟲參數設定、文字結巴斷詞、加入自定義辭典、字詞前處理,到關鍵字分析及資料視覺化。這樣的專案設計,可在程式語言的不同學習階段,讓學生專注於特定核心能力的培養。各專案目的及應用的領域或許有所不同,但「模組化」的專案設計,讓學生仍可透過撰寫部分程式碼,進而體驗進階的完整專案。
綜合與會來賓的意見與心得交流,孔老師因此最後總結,各校與各領域的程式教育,因資源及學生素質等差異,因此一套一體適用的教材,確有窒礙難行之處,但這樣的教材設計仍饒富意義,再結合社群及共構教材的力量,可減少從零開始的摸索,加上各大專校院教師的既有專業,大學程式教育計畫,前景依舊可期!