普惠中拔尖:計算機精英本科教育的北大模式
畢業季,北大計算機本科畢業生文龍和實驗室的同伴合影留念。
撰文|邸利會
責編|李曉明
知識分子為更好的智趣生活ID:The-Intellectual
「我在濟南,不在北京,明天就出國了。」
文龍給我留了條信息。這位7月剛剛從北大畢業的本科生,第二天出現在悉尼,他是去參加ICML(機器學習領域的頂級學術會議)。早些時候,他發表了兩篇ICML的會議論文,一篇是在北大的實驗室做出的,另一篇則是卡耐基梅隆大學暑期科研實習的產物。
與其它領域不同,計算機研究者發表和閱讀的主要是會議論文,期刊只是會議的總結和補充。也許和我一樣,你會感到幾分驚訝——不過,文龍的不少同學在本科期間也發表過頂級國際會議論文。
文龍在悉尼舉行的2017ICML會議上作報告。
這讓我聯想起李文新教授的那份自豪和自信。她是北大信息科學技術學院負責本科生教育的副院長。在幾周前舉辦的未來計算機教育峰會(由中國計算機學會舉辦)上,她談及北大在計算機本科教育上的獨到之處,給我留下了深刻印象。
從為了提高學生編程能力而上線的評測系統,到為學有餘力者準備的實驗班,到有趣(很虐)的「神課」小班教學,再到拔尖班的海外暑期實習,北大近年來在計算機本科教育的改革探索,一路走來看似激進卻有著內在的合理邏輯。
「沒關係,我也擅長找校長告狀」
2001年,從香港回到北大,李文新隨即擔任了北大ACM(國際大學生程序設計大賽)隊的教練。那一年的夏天,在一個沒有空調的屋子裡訓練了一個月之後,李文新和躊躇滿志的隊員們準備抱著獎盃回來,可結果卻是「碰了一鼻子灰」,連亞洲區的選撥賽都沒通過。「那時候我們意識到,我們不會的題別人會做,我們不再稱雄了,受了很大的打擊。」李文新回憶說。
這促使她反思,我們的本科培養是不是出了問題?
第二年,為了訓練隊員們的編程能力,隊員應甫臣和同學開發了一個評測系統,在線提交代碼後就可立即獲得反饋。雖然這一年北大的ACM隊依然沒有出線,不過,從此保留下來的這個評測系統卻在日後起到了一個意想不到的好結果:學生的編程能力有了質的提升。
2007年,已升為教授並負責計算機系教學改革的李文新,決定把這個「專用」工具推廣到日常的教學,比如大一的課程《程序設計實習》中去。這樣帶來的一個看似「無情」的改變是,在期末的上機考試中,學生必須通過這個系統的考驗:如果兩個小時內做不出一道題就是不及格,而必修課不及格則意味著不能畢業。這一當時看起來「激進」的措施立即引發了學生的不滿。
「一開始的時候,學生說,要找校長告狀,我和他們說,沒關係,我也擅長找校長告狀,我也告。就這樣堅持了幾年後,學生的編程能力就大幅提高了。」 李文新說。
李文新(右一)和競賽隊的隊員們在一起。
「如果沒有這個課,我大概到現在都只會輸出個Hello World!」 即將讀大四的年雙同學這樣告訴我。他目前在卡耐基梅隆做暑期科研實習。
編程能力的訓練只是大一學習的一個方面,由於北大計算機系「脫胎」於之前的數學系,傳統上注重數理基礎。在大學的第一年,學生在學了基礎的數學和物理之後,如果有興趣和能力,也可以繼續修讀更為高級的數學或物理課程。
「我印象最深的課程是數學分析。」 李昀燭告訴我。和文龍一樣,他也是今年的畢業生,即將去麻省理工讀博。「數學分析是從大一開始持續三個學期的課程,算是高等數學的升級版。」他解釋道,「(這門課)在窺探縝密的數學世界的同時,也為之後的科研發展提供了必要的數學基礎」。
這樣的一個改變也緣於2007年。在之前不少學生學習的基礎數理課程只有工科數學和工科物理。「後來我了解到,這導致學生缺乏很好的數理基礎,做研究的時候很乏力。」 李文新繼續說,「所以,2007年的一個改變就是在這樣一個寬基礎上,又提供了一個高階的通道,學有餘力的同學可以繼續學更深的數學或者物理」。
「讓他們不至於很無聊」
不過,在今天的北大,提供高階的通道已然不是「錦上添花」,而是一種強需求。
92級的郭耀和陳一峯曾是同班同學,如今他們又一起回到母校任教。由當年的學生變為人師,不僅角色發生了改變,而且還有另外一重改變,也是新的挑戰——他們面對的是更多基礎更好的學生。「現在入學的同學有一半以上都是有編程基礎的,我們當年,也就有一兩個;一峯是唯一搞競賽上來的。」郭耀說。
隨著2003年北大開始特招信息學的競賽生,有良好基礎的學生越來越多,可當時的課程體系還是「一視同仁」,並非因材施教。「其實舊的課程已經不適合他們。」李文新接著說,「所以,我們從2007年開始,除了普通班外,搭配開了相應的實驗班課程,每個班大概20人,課開得深一點,給更多的機會讓學生自己去探索。我們的理念是小步快走,不做大的調整,保證比現有的(情形)好一點。那這些上實驗班的同學不會失去什麼,因為他們本來就已經知道了。」
「實驗班一開始是為競賽生開的,為了讓他們不至於很無聊。」郭耀說,「現在所有的學生如果認為跟得上,都可以選」。
文龍和同學在一起。
話雖如此,真正開設起來絕非易事。「在開設的第一年,大一的《計算機概論》我來教,大二的《數據結構》由張銘老師來教,基本上教這個課,干別的事就很困難了。」李文新說。
不過,即使是高難度的實驗班,有時也難免「被跳過」的命運。
李昀燭就是這樣。因為已經具有了相當的計算機基礎,他就跳過了大一的《計算概論》(實驗班)和《程序設計實習》(實驗班)這兩門編程課。
郭耀帶的本來三年級才上的《編譯原理》課程,去年竟有10名大一的同學提前選修了該課。而最後的結果也一點都不差:除一人外,其餘成績均在90分以上。
面對實驗班的這些學生,郭耀的角色除了指導者,似乎更多的是一個參與者。去年,郭耀在《編譯實習》實驗班甚至進行了一次新「嘗試」,除自己講課之外,每次課還安排學生去講。他們組隊自選一個主題,如新的語言,新的編譯技術等等,講給班裡的其他聽眾。結果,這樣下來的效果也毫無「違和感」。
「我不去講,頂多就是做些指導,學生組隊自己去選題,自己講。」他進一步說,「其實很多學生都有對某個問題很強烈的看法,他們願意講東西給別人聽,這個分享過程他們就很享受。80%的同學都講得很好,他們也真的是花很多的時間去準備,去講。」
「有趣(很虐)」的小班「神課」
在這樣的實驗班運行了幾年後,2009年,教育部「基礎學科拔尖人才培養試驗計劃」開始施行。兩年後,該計劃給予北大的撥款正式到位。藉助這股「東風」,李文新等老師們決定去國外走一趟,看一看頂尖學校的計算機本科教育是什麼樣的,是否有可取之處供北大參考。
2012年3月,冒著北美的大雪,考察團拜訪了卡耐基梅隆,麻省理工,哈佛等名校。這趟考察收穫頗豐:不僅從卡耐基梅隆引進了日後被學生們調侃為「神課」的《計算機系統導論》;而且初步敲定了派遣學生去這些名校進行暑期科研實習的計劃。
提起大二上學期的這門引進課,用年雙同學的話說,「課後作業時間遠大於上課時間」,「卷子難,容易掛」,「有趣(或者很虐)」……
「課如其名」,在這門本科階段學分最大的課里,融合勾勒了計算機系統的各個方面。「這門課是站在系統的高度進行講授,從信息如何存儲,到指令如何在CPU內執行,從編譯優化到操作系統,乃至網路以及並行計算,把整個計算機系統串起來,就好像帶領學生站到山頂,一覽計算機系統的全貌。雖然看到的遠處景物都還是模糊的,但是掌握了總體布局,熟悉了各部分大體如何銜接。等到以後學習後續的專門課程的時候,再從山頂走下來,把某一個局部仔細地看清楚。這時就能體會到先掌握全局的重要性。」 陸俊林解釋道。主講《計算機組成》的他也參與了該門課程的教授。
擔任過這門課助教的李芊坦言,這不是一門容易的課,「知識量大」,「編程作業又多又難」,不過,「收穫也很大」,尤其是,大班和小班相配合的形式更有助於大家的理解。「上完大班課的同學都會被分到一個小班,我們當時有2個大班和18個小班,」她說,「大班課是老師講授,和普通的大課一樣,小班課則是一名老師和一位助教帶領15名同學進行課堂內容的討論」。
「老師上課講的內容很可能聽不明白,課後要花很多時間再去理解;而小班課前的準備,課上的互動,提問和助教的講解有時候比大課的講授還重要。」 年雙說。
不過,在當時,為了讓這門引進的課程落地北大,老師們也花費了不少心力。
北大計算機學院的同學們在上小班討論課。
李文新說,「第一次開這個課是夏季學期的時候,請卡耐基梅隆的老師來講,幾個本科生和我們老師去聽;等到秋季,學生就變成助教,6位老師一塊講,其他老師去聽。其實我本人也是重新學的,以前也沒聽過這樣的課」。
不僅如此,由於這一課程的引入,使得後續的許多課程都要做相應的調整,可謂「牽一髮而動全身」,少不了磨合。
「每個人對於內容如何調整存在不同的看法,另外,本身小班課就需要投入精力,也有的老師反映科研任務多,時間壓力大,負擔不過來。」 陸俊林坦言。老師們也曾和斯坦福,伯克利等名校商量如何把新的內容加進來,使得課程的內容能緊跟時代。「一個總的趨勢是,以前高年級的課程放到了低年級,而研究生的課程則放到了高年級講授,這裡有一個逐漸的下移和濃縮的過程。那麼,在這個動態調整的過程中,就有很多技術上的問題需要處理。」他說。
不過,小班教學也帶了一個好處,教授和學生有了更為緊密的聯繫。他們可以有機會向學生介紹自己的研究,「提早」把優秀的學生吸引到實驗室里來。「這也是對老師的一個刺激。」 陸俊林說。
「除了《計算機系統導論》,大二的下學期,還有一個演算法的小班課,是老師領著學生讀論文。」 李文新介紹說,「這兩門小班課,所有的學生都要註冊,為此我們學院安排了大量的人力,希望做成一個對所有學生都普惠的課程」。她進一步說,「事實上,北大教學改革的推進是一個集體行動,是一場所有老師都參與的全民行動」。
「在潮頭浪尖激揚」
2012年的那次出國考察,除了看看這些名校是如何培養本科生外,郭耀也想通過取經,解答自己心中的一個疑問:為什麼現在北大的學生讀博的比例只有10%?這一比例和自己出國時的30%下降不少。在他看來,對於吸收了全國最優秀生源的北大,如果只有如此低比例的學生從事科研,代表了某種危機。
然而,美國之行卻讓他感到愈加失望——這些名校的讀博比例更低。「不過情況還是不一樣,在美國,最優秀的學生可能有100所學校可以選,而在中國可選擇的只有有限的幾所。」郭耀說,「所以,如果中國最優秀的學生畢業了只是進公司,找個程序員的工作,對我們教育者來說,就是失敗」。這樣的動因促使2012年的北美之行還有一個重要使命,「把學生推出去」,幫他們在海外尋找一個讀博的出口。
「我覺得想要找好工作完全沒有必要在這裡讀本科的。」年雙這樣說。
在84級校友、現任教於卡耐基梅隆的張暉教授幫助下,3個月後,第一批經過遴選的12名學生被送去進行暑期科研實習。第二年,在81級校友樊文飛的助力下,北大與愛丁堡大學也簽訂了合作協議。「這樣從第二年起,我們的20名學生就有了著落。」 郭耀回憶說。幾年下來,考察團訪問了美國,英國,以色列,俄羅斯,學生也隨之被派遣到了這些國家。
幾年後的2015年,與暑期科研實習相對接的「拔尖班」正式成立,旨在選拔培養最優秀的未來計算機科研人才。「這個班從大二下學期開始報名,先組織一系列科研素養培訓講座,邀請國外名校教授和校友講為什麼讀博士,適不適合做研究,如何做研究;在接下里的9月份,大三一開始進行面試,確定二十幾個入選名額。」 郭耀說。
不過,無論是小班課還是拔尖班,改革不可避免會耗費老師的時間。
作為主管本科生國際交流和拔尖班的副系主任,郭耀需要把三分之一多的時間花在教學和項目管理上。因為沒有設立專門的類似於國外的「本科生(或研究生)項目管理主任」,許多教學的管理工作,都不得不由一線的教研老師來兼職擔任。懂英文,懂業務的管理支撐人才也相當的匱乏。「教學是個良心活,我想我還是自己熱愛,願意看到學生好,也是有一種責任和使命感吧。」郭耀說。
儘管如此,在拔尖計劃的經費支持下,拔尖班的學生赴海外暑期科研實習,參會都已經常態化。
談起在斯坦福的暑期實習,李昀燭說:「我最深刻的感覺是能夠身處學術最前沿的熱血澎湃。我第一次和導師聊如何選題的時候,他告訴我「Choose whatever makes the greatest impact」,這種影響力導向的科研價值觀,讓我的關注點不再局限於一個具體的問題,而是領域未來的發展趨勢。在斯坦福的實驗室里,隔壁可能就是某個著名工作的作者,偉大的工作就在身邊看似平凡的日常中產生著。這種在潮頭浪尖激揚的痛快感會讓生活變得富有動力而充實。」
文龍也認為,海外實習是非常棒的一次經歷:「卡耐基梅隆在計算機科學,特別是機器學習領域可以說是聖殿級的水平,老師的水平很高但是非常忙,不怎麼具體管學生,我覺得這期間最有意思的一點是跟那邊的博士同學討論交流能碰撞出很多很有意思的想法,在這種環境下也做出來了不錯的成果。」
而這也是老師們想看到的,在很早的時候,他們的學生就能站在科學的潮頭浪尖。
製版編輯:飲水食糧丨
本頁刊發內容未經書面許可禁止轉載及使用
公眾號、報刊等轉載請聯繫授權
知識分子為更好的智趣生活ID:The-Intellectual
點擊展開全文
※【報名】探索者·2017年度創新大會
※王曉東實驗室揭開雄性生殖系統衰老之謎 | 前沿
※不該被遺忘的民國知識分子——丁文江
※親歷錢塘江河口治理開發——戴澤蘅、李光柄訪談錄
※每周科技播報:蘇州將建國際一流腦成像工廠
TAG:知識分子 |
※vr+國防教育,廈門海滄區運用數字化技術開啟科普智能新征程
※中科創星·星科普構建科普教育新生態 助力陝西科教創新發展新動能
※藝術書架│《中國美術教育史略》
※華中科大著力打造新聞評論特色教育
※中科館精彩教育活動推薦
※中國科技館精彩教育活動推薦
※我國宏大教育設計:培養數以萬計的教育家型教師
※傳統文化中教育的智慧
※國畫教育:兒童美術教育新趨勢
※中美院校齊聚陝西師大 共話中美高等教育創新
※西京學院:將中華優秀傳統文化融合思政教育中
※精英教育的鼻祖是中國:中國古代帝王之術中隱藏的教育秘密
※山東再添文化新地標!中央美術學院山東藝術教育中心成立
※教育科技化大旗下的彩蛋:網易精耕主義
※跨文化視角下的大學藝術教育
※中外教育家藝術家合辦在線設計藝術教育平台
※鎖定國際頂級藝術教育IP,凱文教育華麗資源稟賦再次升級
※把佛教的精神融入教育
※世紀華坤科教育集團助力邯風鄲韻文化創意設計大賽開啟
※黃懷英——藝術教育