【哈佛最狂程式課 CS 50】徹底改造傳統程式教學法,台灣資工系同學表示羨慕

C1479111540761

【為什麼我們挑選這篇文章】哈佛有門超級狂的程式課「CS 50」把傳統程式課,當成線上課程在教,學生不用到課堂上點名的。台灣資工系學生看完這篇大概要羨慕死了,原來傳統大學教育,還是可以持續創新。

本文由在哈佛大學就讀教育學院碩士班的 Alice Yang,在粉絲專頁 哈佛姐的不正經學術之旅 上所分享的哈佛大學創新教育觀察。(責任編輯:張瑋倫)

作者/Alice Yang

最近,哈佛校園裡流傳著這樣一句話:「如果你沒聽說過 CS50,那麼,請不要說你讀過哈佛。」

CS50(註一)可以說是我在哈佛見識過最「狂」的課,沒有之一!甚至也許有一天,哈佛最有名的不再會是 John Harvard 雕像,而會是這堂超越所有課堂極限的知識體驗。現在就讓我們來看看,這堂課究竟有多「狂」!

最「狂」的上課地點

對一位異地學生而言,光是坐在哈佛大學最有名的 Sanders Theatre(註二)上課,就已經值回票價了!還記得大約是一年前,在 edX 上看到 CS50x 的課程影片,一堂程式課程竟然可以進化到像是在看大型劇作公演,令人感到不可思議!而真正的震撼,還是要回到第一次踏入 Memorial Transept,與數百名哈佛大學部學生一起走入 Theatre 的那個瞬間。

教授 David J . Malan 真實的出現在眼前,為了解釋二分法的場景將電話簿撕成兩半;而我與有著全世界最聰明腦袋的大學生並肩坐在台下,兩眼聚精會神的看著台上教授的神情,我感受到的,是一種躍然於電腦屏幕之上的生命力。

這不僅僅是一間教程式語言的教室,而是一間有趣的大型教學實驗室!透過聲光、透過歌舞、透過各式各樣的互動,所產生與程式之間的篇篇對話,再經由失敗、嘗試,和無數個不眠的夜晚,所共同寫下由 0 和 1 組合而成的符碼青春歲月走廊。

最「狂」的上課型態

如果你只把堂課重點放在每週 Sanders Theatre 的 lecture,那就大錯特錯了!教授的課程大綱中清楚點明了:「選修這堂課的同學,只需要現場出席第一堂和最後一堂課,其他的 10 堂課都可以在線上收看!」

所以如果你收看任何今年錄製的 CS50 課程影片,會發現台下幾乎沒有任何學生!糊塗的我曾因為搞錯時間,亂入進到了課程拍攝的時段,不過也因此有機會見識到 CS50 拍攝的後台秘辛:一堂課程的拍攝絕對不僅僅是講座的側錄,光是現場,就有超過 6 台攝影機從不同角度拍攝,還有專業的燈光、音效組。

更讓我佩服的是教授的講課功力,非常具有張力的表演和互動,實在很難想像講台底下竟然如此空蕩。

F1478746037902
陣容浩大的拍攝團隊 CS50 課程拍攝現場直擊!圖片來源/CS50 Photos

最「狂」的課程規定

想要同時間上很多課程,你不需要妙麗的神奇沙漏,CS50 特殊的上課型態,讓學生可以在 CS50 表訂的上課時間(每週一和週三),同時選其他的課,滿足你的求知慾望。

F1478746116683

根據往年的統計發現,學生在 CS50 的前幾堂課程,實際出席率往往較高,但是隨著課程的進行,選擇線上觀看課程的比例明顯增加,2015 年的統計顯示,出席第一堂課的比例高達 8 成,但到了最後一堂只剩下不到 2 成。

分析原因發現,由於線上課程有各種功能(暫停、重播、快轉),學生可以依照自己不同的學習曲線調配,同時有不懂的觀念也可以隨時搜尋到相關影片。即使沒有出席現場課程,從作業的成績分布也可以看出,線上課程的效果幾乎和實體課程差不多,甚至在某些時候,同學們反應透過線上可以得到最即時、也最有效率的學習支援!(延伸閱讀:Hahow 掀起的線上講座革命

F1478746188444
2015 年 CS50 出席比率統計。圖片來源/CS50@Medium Corporation

最「狂」的 Office Hour

F1478746534289
CS50 深夜食堂的 Office Hour。圖片來源/CS50 Photos

程式語言的 office hour 竟然不是在電腦教室?是的,你沒有看錯,CS50 office hour 舉行的地點是 Annenberg Hall,這個餐廳是只有哈佛大學部,而且是大一新生才可以進去的餐廳──是不是覺很像哈利波特電影裡的場景呢?

CS50 除了每週的 lecture 外,還有固定的 section 和 office hour,學生們可以聚在一起討論問題,office hour 的時間也非常配合大學生的作息,從晚上 9 點一直延續到半夜。數百位年輕大學生聚在一起解 code 的場景,真的不是一般人可以常常見到的,或許未來的 Mark Zuckerberg 正隱身在其中呢!

最「狂」的教學陣容

哈佛的課程除了教授精心安排的課程之外,課程助教的配置也是讓課程增添精彩的要角。CS50 助教和學生的比例是 1:12 ,以今年(2016 年)636 位學生來算的話,竟然就有多達 53 名的助教!助教時間也是課程非常重要的一部份,課程會依照程度分成"more comfortable"、"less comfortable"和"somewhere in between"來安排上課。

F1478746644742
CS50 課程的助教。圖片來源/CS50 Photos

這些助教們也是大有來頭,他們都是修過 CS50,同時還是現役的哈佛大學部學生!從課堂上,你不難看出哈佛學生對於 CS50 的熱愛,在校園中穿梭,時不時就會看到有人穿著「I took CS50」的衣服。

最「狂」的功課量

“work hard , play hard”

這句話最能代表 CS50 修課學生的心聲,在享受各種 Puzzle Day、Hackthon、CS50 Fair、CS50 Lunch、Holiday Party…… 之餘,還是得面對現實,解出一行行的程式碼。根據統計結果,修課學生平均需要花上 15 個小時才能完成作業,如果扣除週末不算,一天至少需要花上 3 小時。

由此可見這堂課所涵蓋的知識含量甚廣,課程內容包括抽象化(abstraction)、 演算法(algorithms)、資料結構(data structures)、封裝(encapsulation)、資源管理(resource management)、資訊安全(security)、軟體工程(software engineering),以及網路開發(web development),還有各種程式語言介紹:C、Python、SQL、JavaScript、CSS、HTML,都包含在 12 週的課程內!

F1478746822100
CS50 修課學生平均完成作業每週花費時間。圖片來源/CS50@Medium Corporation

最「狂」的哈佛歲月

曾遇過一位已經修過 CS50 的大學部學生──Anita,跟她聊起修課經驗,她說:「我感覺修 CS50 課程的那個學期,整個課表上好像只有那堂課!…… 而每天起床到睡覺,我都覺得必須要打開電腦寫作業不可!」。

她滔滔不絕地談起課程的各種艱辛,但接著又說,修 CS50 是她在哈佛大學最美好的修課經驗。一堂不只是程式語言的課,更教會你時間管理、決策和團隊合作的重要性,Fiona 說起期末考前,和同學在深夜的 dining hall 面對數萬行程式碼的奮戰,終於找出 bug 的那一瞬間,她真的覺得“I feel like I discover a whole new world!”

“This is CS50"and……"Welcome , to Harvard!”

(本文經合作夥伴換日線授權轉載,並同意 TechOrange 編寫導讀與修訂標題,原文標題為 〈哈佛大學最「狂」的一門課──「如果你沒聽過 CS50,請別說你讀過哈佛」〉。)

延伸閱讀

工程師要從小養!哈佛 Coding 機器人教 5 歲小孩寫 Java
我想成為前端工程師!這 21 個程式設計網站你就絕不能錯過
迎接未來最搶手的職業,Udacity 聯合 Benz 推出線上「無人駕駛車」課程


321 倒數 ,2020 只剩 3 年,區塊鏈、5G、AI 技術將成熟到位。
從產業到社會,台灣沒剩多少時間準備。

12/9 TechOrange、BuzzOrange「CONNECT 2020」年度產業論壇,連結未來改革能量

點關鍵字看更多相關文章: