國外著名大學(xué)計算機教學(xué)考察隨筆 王行言/文 為了解國外大學(xué)計算機教學(xué)情況,2002年春季,清華大學(xué)組團到美國進行了一次考察??疾旖M先后到斯坦福、伯克利、加州理工等著名學(xué)府進行了調(diào)研,旁聽了一些計算機方面的課程,與有關(guān)教授、教務(wù)管理人員和中國留學(xué)生進行了座談,并參觀了學(xué)校的圖書館和計算機機房。下文就是我們約請清華大學(xué)計算機與信息管理中心副主任王行言教授撰寫的考察隨筆。 4月9日 斯坦福大學(xué) 上午,我們分頭聽了“數(shù)據(jù)庫”和“編譯原理”的課程。數(shù)據(jù)庫為大班課程,本節(jié)課主要講ER圖和ER模型。授課方式是“黑板+粉筆”,6塊黑板來回切換。教室有電視和錄像設(shè)備,電視跟蹤和放大黑板內(nèi)容,所以無論坐在哪個角落,都能看到黑板的內(nèi)容。教室后有制作室,可以對課堂教學(xué)當(dāng)場錄制。課上同學(xué)提問題很踴躍,老師也不時地提出問題,回答最好的幾乎都是中國留學(xué)生。 中午飯后,我們參觀計算中心和圖書館,兩處都有學(xué)生上機的環(huán)境。學(xué)生來去匆匆,多半都是上網(wǎng)看一下課程通知或下載、打印幾頁文檔資料。我們在瀏覽網(wǎng)頁時,看到上午的數(shù)據(jù)庫課程已制作成視頻課件(不到半天時間)。學(xué)生可以自主選擇聽老師的某段講解,或看某頁的板書。在斯坦福,有專門制作人員(并有學(xué)生參與)對部分課程進行錄制加工,并及時放到網(wǎng)上,供學(xué)生下課復(fù)習(xí)。這些課件還有一個重要的目的,就是用于繼續(xù)教育,為學(xué)校周圍的在職人員學(xué)習(xí)提供方便。 在計算中心入口處的通知欄上,我們看到了白板上公布的一些課外講座,如UNIX操作系統(tǒng)使用、Office工具軟件的使用等,此外還有一些編程語言的入門課程。 下午我們又聽了一門“程序設(shè)計”課程,估計教室可容納四、五百人。學(xué)生進教室時,每人在門口拿一份本節(jié)課的講義。很多老師在上課時都習(xí)慣準(zhǔn)備隨堂使用的講義,內(nèi)容包括補充的素材和本節(jié)課布置的習(xí)題。本課程由斯坦福大學(xué)計算機系副主任Eric S. Roberts教授主講,他就是IEEE和ACM推出的“Computing Curricula 2001”的主要執(zhí)筆人。這節(jié)課他主要是講解算法設(shè)計(樹搜索,迷宮等)和程序調(diào)試。Roberts教授使用筆記本電腦及大屏幕投影授課,屏幕上顯示的是講課用到的代碼及程序調(diào)試環(huán)境,但他大部分時間是坐在講臺上,面向?qū)W生滔滔不絕地講解。程序設(shè)計課程使用的教材是Roberts教授寫的兩本書:“The Art and Science of C”和“Programming Abstractions in C”。這兩本教材在美國被多所大學(xué)所采用。 4月10日 斯坦福大學(xué) 上午,我們與計算機系副系主任Eric S. Roberts教授座談,請他談一下斯坦福大學(xué)的計算機教育(包括非計算機專業(yè)的計算機教育)。他饒有興趣地談到了斯坦福大學(xué)計算機系的發(fā)展和計算機課程的設(shè)置情況。 他說,與大多數(shù)專業(yè)相比,計算機科學(xué)是一個非同尋常的領(lǐng)域。當(dāng)100年前斯坦福大學(xué)成立之際,大多數(shù)學(xué)科就已經(jīng)有了一定的歷史。50年后,才發(fā)明了世界第一臺計算機。又過了25年,計算機科學(xué)才成為一個獨立的學(xué)科。斯坦福計算機科學(xué)系成立于1965年,并一直保持世界前4名的位置。 在最近25年中,計算機科學(xué)飛速發(fā)展,并極大地推動了社會的進步。計算機科學(xué)將繼續(xù)成為一個令人興奮的領(lǐng)域。 在斯坦福,大多數(shù)學(xué)生愿意學(xué)習(xí)計算機科學(xué)的主修課程。在CS主修課程中,學(xué)生可以追蹤很多不同的領(lǐng)域:程序語言、圖形學(xué)、數(shù)據(jù)庫、計算理論、人機交互、機器人學(xué)、人工智能、數(shù)值分析等。隨著近年來需求的變化,CS主修課更加靈活并滿足大多數(shù)學(xué)生的需求。 在斯坦福大學(xué),新生入校時不分專業(yè),學(xué)生的專業(yè)要根據(jù)個人選修課程的情況到高年級才逐步明朗。當(dāng)然,在入校時,學(xué)生還是有自己的意向。學(xué)校為每位想學(xué)計算機的同學(xué)都提供一份指導(dǎo)性文件,說明在斯坦福學(xué)習(xí)計算機的幾種途徑。除CS之外,還有五種其他選擇供學(xué)生考慮: 1、C omputer Science Minor(CS輔修專業(yè)) 該輔修專業(yè)提供 CS主修課中本科的核心課程(見圖1),由6-8門課組成,安排在兩年中學(xué)完。 完成輔修課后,學(xué)生將獲得很強的編程基礎(chǔ),并進入計算機科學(xué)的某個理論分支。進而,學(xué)生可以在自己感興趣的領(lǐng)域?qū)W習(xí)更多更深入的課程。圖1是輔修專業(yè)的課程設(shè)置。 2、Computer Systems Engineering (CSE) CSE是跨計算機科學(xué)和電子工程兩個系的交叉學(xué)科。 CSE的主修課類似于計算機科學(xué)系,但一些偏理論的計算機課程被電子工程方面的課程所代替(如數(shù)字設(shè)計與電路分析)。 3. Electrical Engineering (EE) 適合于對計算機科學(xué)、特別是對硬件更感興趣的同學(xué)選修。除了側(cè)重硬件外,EE學(xué)位和其他學(xué)位的主要不同是側(cè)重于工程。 4. Mathematical and Computational Sciences (Math/CS) 計算機科學(xué)和純數(shù)學(xué)的結(jié)合。學(xué)位課包括計算機科學(xué)基礎(chǔ)核心課以及各種數(shù)學(xué)課。除這些核心課程外,學(xué)生還側(cè)重計算機或數(shù)學(xué)選一些課。 5、Symbolic System 是交叉學(xué)科,結(jié)合了計算機科學(xué)、心理學(xué)、社會學(xué)、以及語言學(xué),研究人-機的認(rèn)知。將人和計算機視為符號處理系統(tǒng)。 Roberts教授還講到,由于計算機技術(shù)的發(fā)展,可以用計算機解決更復(fù)雜的問題,并且可以不需要編程,起碼不是傳統(tǒng)意義上的編程。所以計算機系和計算中心還面向全校開設(shè)了一些更側(cè)重于應(yīng)用的課程(包括各種語言與工具類課程),主要是滿足全校非計算機專業(yè)學(xué)生自己學(xué)習(xí)計算機和應(yīng)用計算機的需求。其中一些課程的內(nèi)容就類似于我們計算機文化基礎(chǔ)課的內(nèi)容。這些課程包括: CS1I—Using the Internet CS193D—C++ and Object-Oriented Programming CS193I—Internet Programming CS193J—Programming in Java CS193U—Software Engineering in C CS193W—Microsoft Windows Programming 如何開始學(xué)習(xí)計算機課程呢?Roberts教授給我們畫了一張圖(見圖2)。 Roberts教授指出,如果要從技術(shù)的角度(而不是從文化的角度)學(xué)習(xí)計算機,CS106A(即程序設(shè)計)是第一門必修的基礎(chǔ)課。學(xué)完CS106A后,如果想繼續(xù)深入學(xué)習(xí)編程的知識,可選修CS106B。對那些在中學(xué)就已具有一定編程能力的學(xué)生,如果想學(xué)習(xí)C語言或想進一步提高編程水平,可選修一學(xué)期的CS106X(濃縮兩門課的快班)。學(xué)完CS106B后,學(xué)生就有了比較明確的意向,如果想進計算機專業(yè),就可開始系統(tǒng)學(xué)習(xí)計算機專業(yè)的課程。而不想選擇計算機專業(yè)的同學(xué),可以選修計算機系等單位為非計算機專業(yè)開設(shè)的其他 課程。CS106課程采用的教學(xué)語言是C語言,Roberts教授解釋說:C語言廣泛應(yīng)用于工業(yè)界,而且是學(xué)習(xí)更先進語言的基礎(chǔ)(C++ 和Java)。 我們向Roberts教授提出一個問題:如果學(xué)生自己選專業(yè),會不會有很多學(xué)生都選計算機專業(yè)?計算機系如何接納這么多學(xué)生?Roberts教授說,的確新生中有很多人想學(xué)計算機,但學(xué)過1、2門計算機課程之后,不少同學(xué)就感到計算機專業(yè)不適合自己。經(jīng)過多年操作,選擇計算機系的人數(shù)已經(jīng)趨于穩(wěn)定。另外,美國的學(xué)生不見得都喜歡計算機,覺得整天坐在計算機前沒有意思,而對于考古、地質(zhì)等野外作業(yè)覺得更富有挑戰(zhàn)性。 4月11日斯坦福大學(xué) 今天與計算機系教務(wù)座談。系教務(wù)對我們講,每個教授每年都要開一門核心課(研究生課程也算核心課)。教師的教學(xué)工作量要夠一定點數(shù),大課點數(shù)多,小課點數(shù)少。系里有一套評價體系,學(xué)生給系主任和教師本人打分,這些對教師的評級有影響。新生提前一周到校,招生辦公室根據(jù)學(xué)生興趣分派導(dǎo)師指導(dǎo)學(xué)生選課。每個學(xué)生都有一個導(dǎo)師幫助選課(一名導(dǎo)師負(fù)責(zé)若干名學(xué)生)。學(xué)校設(shè)有注冊辦公室,管理各種教學(xué)資源。 隨后我們參觀了硬件實驗室。硬件實驗普遍采用模擬軟件,控制盒里有關(guān)鍵芯片。 下午我們聽了一節(jié)畢業(yè)設(shè)計課,該節(jié)課的安排是請IBM公司的工程師講解正在研究的一些新技術(shù)。根據(jù)我們的感覺,學(xué)校和公司的聯(lián)系很密切。 下午我們和一位在斯坦福半導(dǎo)體研究所長期任教的清華老師進行了座談。針對我們提的一些問題,這位老師說了一些自己的觀點:對于硬件實驗,電的教學(xué)、電路課做一些實驗,單板機也有,但不是重點(有些愛動手的學(xué)生選修)。斯坦福大學(xué)還是偏軟的多,同學(xué)出去主要是搞設(shè)計,搞算法。例如利用Spice軟件,10個星期設(shè)計一個芯片。硅谷對半導(dǎo)體人才需求很明確,學(xué)會三門電路設(shè)計課就要。斯坦福實驗室很少,偏專門化的課就外聘教師。而基礎(chǔ)的物理、化學(xué)都是大牌教授。美國畢業(yè)生專門化很突出,工作中就做自己專業(yè)的事,不管別的雜七雜八的事,否則是浪費人才、時間。 計算機各行各業(yè)都在用,但要懂多少,并不見得很多,硬件結(jié)構(gòu)、軟件OS、C語言、數(shù)值分析、專業(yè)用軟件等。計算機能力強,表現(xiàn)在把計算機作為工具,會算法、數(shù)據(jù)分析,自己專業(yè)算法強。光會計算機編程是中等人才,最有價值是專業(yè)的東西。 之后,我們又與部分中國留學(xué)生舉行了座談。在座談過程中,不時有人進進出出,有的剛下課,有的要去上輔導(dǎo)課(助教),大家顯得都很忙碌。很多同學(xué)是在網(wǎng)上看到要和國內(nèi)來的大學(xué)老師座談,就主動趕來參加,即使只能參加一會兒也要來。同學(xué)們見到我們都非常興奮,也談了很多在這里學(xué)習(xí)、生活的情況。他們說,這里的房東最喜歡租房子給中國學(xué)生,因為他們早出晚歸。在美國念書,作業(yè)負(fù)擔(dān)很重,每學(xué)期課的門數(shù)不多,但課程的強度非常大,例如程序設(shè)計,一周就有兩到三次大課。斯坦福不太重視文章,沒有文章要求。但學(xué)校中的研究氣氛很濃,很多低年級的學(xué)生就自動組織起來,找一些具有挑戰(zhàn)性的課題來做。 4月13日加州理工 今天主要是與留學(xué)生座談,我們談的范圍很廣,以下是我們聊的一些感興趣的內(nèi)容。同學(xué)們說,這里系的差別不是很大,天文、物理、數(shù)學(xué),無論是什么系,都要上一大堆公共課,本科是通才教育。教師與學(xué)生的比例是1∶3 ,TA與學(xué)生的比例是1∶20。編程的課主要是上TA的課。學(xué)校每學(xué)期為10周,課程強度高,難度大,每學(xué)期學(xué)5門課已經(jīng)很吃力了。同學(xué)們異口同聲地說,作業(yè)又多又難,交作業(yè)時間卡的很死,作業(yè)有時做到第二天天亮。作業(yè)絕對不能抄,在成績中所占比例也很大。 我們問了一些有關(guān)計算機教育的問題,他們說,計算機系主要是講理論。非計算機系的學(xué)生選一些計算機理論課,可以擴展知識面。他們感到計算機的哪門課都是數(shù)學(xué)課。各系并沒有強迫學(xué)生選什么計算機的課,但聰明的學(xué)生會選一些計算機課。根據(jù)他們接觸的情況,專業(yè)老師用計算機,學(xué)生就會學(xué)計算機。各系教師交流很密切,教授用計算機,會帶動計算機教學(xué)。各領(lǐng)域的權(quán)威、教授應(yīng)該知道學(xué)生在計算機方面需要用到什么。計算機教學(xué)不要與其他教學(xué)分開,用的時候就會學(xué)。他們認(rèn)為,計算機的基礎(chǔ)是程序設(shè)計。計算機教學(xué)分理論(計算機系開)和應(yīng)用(與各專業(yè)結(jié)合,各系可開)。 同學(xué)們還告訴我們,期末考試時,監(jiān)考老師一般站在教室外面,有問題再進到教室解決,以此表示對同學(xué)的信任。有的考試干脆讓同學(xué)把卷子拿回去做,規(guī)定1到2天內(nèi)交卷。我們問,那如果互相抄襲怎么辦?同學(xué)說基本沒有抄襲,因為學(xué)生自我約束很嚴(yán),非常看重誠信二字。他們講了正在發(fā)生的一件事情:一個同學(xué)將公共場所的一把椅子私自搬到了自己的宿舍里,學(xué)生委員會正在對此事進行處理(據(jù)說是要開除),學(xué)生委員會做出的決定,學(xué)校也不得不認(rèn)真考慮。 4月18日 伯克利分校 今天安排和一個留學(xué)生座談,因為他在美國念了多年的書,拿了一個碩士學(xué)位,兩個博士學(xué)位,至今還沒有離開學(xué)校之意。他向我們講述了自己的一些感受和建議。 他說,國內(nèi)有些大學(xué)把理論和市場對立起來是不對的。我們可以培訓(xùn)出非常好的程序員(寫一個軟件),但沒有獨到見解,沒有算法。計算機理論,圖論、線性代數(shù)等都是非常有用的。美國學(xué)校很重視數(shù)學(xué)怎么用到實際問題。學(xué)到一點數(shù)學(xué),就知道用到哪,就有成就感,而不重視技巧。美國學(xué)生做東西比較深入,想得深。最出色的是美國學(xué)生研究生主動性很強,自發(fā)組織在一起,找題目研究(如人工智能、機器學(xué)習(xí)等)。新生進校后,學(xué)生會就組織學(xué)生參觀專業(yè),引發(fā)他們對專業(yè)的興趣。國內(nèi)的學(xué)生要脫俗,膽子要大一些。 在考察的過程中,我們也瀏覽了各校的一些主頁,其中印象最深的是各校在使用網(wǎng)絡(luò)教學(xué)環(huán)境時比較講究實效,花樣不多但內(nèi)容豐富、規(guī)范。例如,幾乎每門課程都有自己的主頁,老師的一些講稿也放在網(wǎng)上。課程主頁一般包括以下欄目: l 課程內(nèi)容概要 l 授課人員(列出講師、TA的名單及他們的電話和email地址) l 上課時間/地點(一門課周學(xué)時一般為150分鐘,75*2 或50*3) l 答疑安排(時間、地點、答疑老師姓名) l 課程先修要求(不是必須) l 教材,參考書(一些參考書就是公司的產(chǎn)品文檔,如Oracle documents) l 考核方式(書面作業(yè)、上機實驗、Project、期中、期末考試等安排和所占分?jǐn)?shù)) l 紀(jì)律規(guī)定(抄襲作業(yè)的處罰、如何保護知識產(chǎn)權(quán),網(wǎng)上資源引用的規(guī)定和限制等) 以上是我們出國考察了解到的一些情況,寫出來與大家分享與借鑒。 附:幾個學(xué)校的課程網(wǎng)址: http://www./class/cs106斯坦福課程主頁(以cs106課程為例) http://www.cs.Berkeley.edu伯克利 http://www.schedule.伯克利 http://www.cs.Caltech.edu/courses.html加州理工 |
|