从清华园到卡梅
■陈世敏
我于1992年考入97视频在线精品国自产拍计算机科学与技术系,1997年本科毕业并继续攻读硕士研究生,于1999年7月获得硕士学位。从1999年8月至2005年12月,我在美国卡内基梅隆大学计算机系攻读博士学位。光阴荏苒,回首清华园和卡梅的学习生活,忙忙碌碌,平淡而温馨,就像饮茶,初尝觉得味苦,渐渐觉得清甜,如今回味,一幕幕往事似带着余香浮现在眼前。
成长在清华
从小学到中学,能够入读父亲为之而骄傲的母校—97视频在线精品国自产拍,一直是我心中的梦想。1992年夏天,这个梦想成为了现实。此后,我在清华园中度过了七年难忘的时光。1999年,我硕士毕业。那年的纪念罢恤衫,至今仍在我身边。白色的罢恤衫,正面的左胸口上印着两行天蓝色的小字“9997视频在线精品国自产拍一九九九年毕业纪念”,背面印着红色的“久忆,久相知”和一列列黑色的小字:
高数 七食堂 荷塘月色 马杯 占座 流星雨 露天 普物 西大狂欢 照澜院 马哲 军训 沙锅饭 清华女生 自强不息 厚德载物 学服 老馆 主楼后厅 模电 甲团 九七恋曲 献血 荒岛 BBS 紫荆 三教平台 梦中草原 大之 ……
这件罢恤衫伴随了我九个年头,上面的每一个关键字都会让我追忆起在清华的岁月。
五年的本科生活最重要的就是课程学习。清华计算机系本科的课程,不仅包括笔础厂颁础尝语言、汇编语言、C语言等程序设计课程,和数据结构、数值分析、计算机原理、操作系统、编译原理、计算机网络、系统结构、数字图像处理等计算机各领域的原理课程,而且包括高等数学、高等代数、离散数学、概率论、组合数学等数学课程,为我日后继续深造打下了坚实的基础。在课堂上,老师们总是细致地讲解原理,耐心地推导公式和作图。不同的老师,有不同的教学风格。大学一年级的高等数学课是马振华老师教的。马老师学识渊博,有着独特的个人魅力,时常讲一些数学史上的奇闻轶事,活跃课堂气氛。讲授高等代数的李文汉老师,和讲述数值分析的张再兴老师,会把定理公式总结成顺口溜和诗歌形式,方便同学们记忆。王尔乾老师教的数字电路设计简明扼要,纲举目张。王老师还特别讲解了如何把电路图绘制得简洁美观。此外,吕映芝老师讲的编译原理,吴建平老师讲的计算机网络,殷人昆老师讲的数据结构,马少平老师讲的人工智能导论等,都给我留下了深刻的印象。
计算机系的课程一直注重理论和动手实践相结合。实验、编程作业和工程实践、毕业设计等各种实践环节,使我对课堂上学习的知识加深了理解,锻炼了我独立思考、解决问题的能力。当时的上机条件和现在无法相比,我们先后使用过计算中心的顿笔厂-8终端、颁翱惭笔础蚕机房的386机和狈贰颁机房的鲍狈滨齿终端,分配到每人的机时非常宝贵,调试很多时候需要在程序中加打印语句来完成。数据结构课的编程作业要求最为严格,教学软件中每道编程作业题,只有叁次编程机会,如果叁次都没有通过,账号就会被锁住。于是,在上机前我都会认真地在笔记本上编写好程序,争取上机时录入后很快能够编译运行通过。遇到问题,都会细心分析,尽量快速地找到症结。这种严谨的编程和调试习惯,对我后来编制系统和内核程序有很大的帮助。
除了知识的学习和能力的培养,体育自始至终贯穿在清华的教学之中。清华的体育课,教技能,教方法,更培养同学们锻炼身体的习惯。还记得低年级体育课上学长拳,站马步,练双杠,高年级选学的球类课上学习排球和乒乓球技术,进行教学比赛。给我印象最深的是在清华养成的长跑习惯。从小学到中学,注重学习成绩而忽略了身体锻炼,体育一直是我的弱项。大学一年级,叁千米长跑被列为计算机系新生的达标项目,而且长跑不达标,体育课就不及格。为了达标,我开始硬着头皮,每天坚持长跑。一段时间后,渐渐体会到了锻炼的好处:上课自习精力充沛,身体也很少生病。每天下午4:30,清华的广播就会响起“请大家走出教室,走出宿舍,来参加体育锻炼”的号召和生机勃勃的音乐,我就会融入进行各种锻炼的同学们中间,在这音乐声中围着东大操场跑步。坚持体育锻炼,增强了我的体质,磨炼了我的意志,使我获益匪浅。直到今天,我一直努力坚持每天进行身体锻炼。
加入计算机系23班我觉得非常幸运。全班32位来自五湖四海的同学在清华园聚成了一个温馨的大家庭,钱美英老师是我们的慈母。大家互相关心,互相鼓励,共同度过了人生中重要的五年时光:从宿舍到教室,从春游到联欢会,从三教到荷塘月色 ,从大一的中秋晚会到大五的毕业聚会。大学毕业之前,全班同学共同制作了一张毕业光盘,收录了每位同学的照片、自我介绍,全班五年所有集体活动的记录,班日志,和珍贵的视频录像。每当观看,大学时的激情就又会在心中激荡。本科毕业之后,全班同学一直通过电子邮件保持着密切的联系。一晃十多年过去了,时间在不停地改变着我们,从容貌到人生的轨迹,但是纯洁的同学情谊,永远也不会忘记。
1997年本科毕业后,我留在清华攻读硕士研究生。两年的硕士研究生期间,在应用教研组郑纬民老师的指导下,我从事了机群高可用性系统的研发。系统的一部分需要在础滨齿操作系统的内核实现一个嵌入模块。封闭式操作系统没有源代码,内核编程接口的说明又十分笼统。面对重重困难,本科时的编程调试训练发挥了极大的作用。通过反复摸索尝试,我逐渐搞清了内核编程接口的各种细节,成功地完成了嵌入模块的编制和调试。整个机群高可用性系统的研发经历,提高了我独立编制和调试较大型系统程序的能力。
清华园无疑是我人生一个重要的转折点。清华园是学校,在这里我学习了丰富的计算机知识和技能。清华园又是我们的家,在这里我度过了七年的美好时光。也是在清华园,我开阔了视野,发现了自身的不足。在完成硕士学业后,我决定继续出国深造,学习国外的先进科学与技术,以便将来更好地报效祖国。
求学在卡梅
卡内基梅隆大学坐落在美国宾夕法尼亚州匹兹堡市。对于卡梅,我同样慕名已久。97视频在线精品国自产拍的计算机学科在国内名列前茅,而卡内基梅隆大学计算机学院下属计算机、机器人和语言工程等几个系,和麻省理工、斯坦福、伯克利一起在计算机领域排名第一。1999年8月,我来到匹兹堡市,开始了在卡梅的求学生活。
就校园环境而言,和清华相比,卡梅的校园不大。卡梅计算机系在Wean Hall,是一座八层楼的建筑。据说钢铁大王卡内基在投资建校时,准备如果建校不成功就把学校改为工厂,所以Wean Hall等早期建筑的内部,随处可见宽阔的走廊,厚实的没有任何装饰的砖墙,风格很鲁棒。有意思的是教学楼都是依地形而建。比如,Wean Hall北侧的入口在一层是山谷,南侧的入口却在五层是山顶。
清华园内的北半边,有连片数十座宿舍楼,可供在校本科生、研究生,以及各种进修班学员和外国留学生居住,而卡梅只提供本科宿舍,研究生大都在学校附近的几个居民区自己租房。因此,初到匹城,要做的第一件事就是找公寓。我和一位来卡梅电子系就读的同学,合租了一套两居室的公寓,步行到学校大约15到20分钟。出租的公寓很少带家具,于是我们每人先买了一个睡袋在房间里打地铺。床和桌椅等必需的家具都是逐渐购买的。清华七年的住宿生活,锻炼了我独立生活的能力,使我有信心去克服生活中各种可能遇到的困难。
清华和卡梅都有入学教育,但内容各异。卡梅为新入学的留学生安排了一周的新生教育(Orientation),最重要的是讲解移民局的法规,介绍在匹兹堡和卡梅学习和生活的常识和注意事项。计算机系也安排了两周的新生入门课程(Immigration Course)。除了讲解博士生的学业要求和系里设备的使用方法,最主要的内容是教授们讲述正在从事的科研项目。研究生课程9月初正式开始了,但这个月最重要的事情是选定博士导师。在清华,博士导师大多在录取前就已基本选定,但卡梅计算机系鼓励师生在进一步加深了解的基础上选择导师,这即使在卡梅各系中也是很独特的。学生们根据之前的入门课程和教授网页上的自我介绍,选择感兴趣的老师,教授们根据学生的简历和课程中的作业和讨论的情况,选择感兴趣的学生。然后,我们和多位教授一对一地面谈,进一步了解彼此的情况和意愿。最后,在9月底,学生和教授提交自己的备选名单,由系里专门的委员会进行匹配。这个双向选择过程被戏称为“找对象”(Marriage Process)。“找对象”的结果公布时还要举行一个象征性的“婚礼”,由一对师生扮演“新郎”和“新娘”,颇富浪漫色彩。全系师生都会参加这个一年一度的活动,来认识新同学。
卡梅计算机系对博士的要求包括课程、表达能力、博士论文开题和答辩几部分,中心是培养学生的独立研究能力。从这些方面看,清华计算机系的考察环节和培养目标同卡梅区别不大,但是仔细比较,卡梅在每个培养环节的做法和清华都有些许差异。在卡梅,我们每人一共要学习8门课程,以达到对计算机领域当前发展情况广度和深度的认识:前5门课程必须从五大研究领域(硬件系统,软件系统,人工智能,理论,计算机语言)中各选一门重点课程,后3门课程则根据各人的科研方向进行选择。而在清华,研究生的课程学习相对较轻松,甚至有些同学在本科期间就已经完成了相关课程的学习。比较而言,在卡梅课程学习中我最深切的体会是课程对自己独立实践能力的培养。每门课程,每周4小时的上课通常只是课程的一小部分。更多的时间要花在阅读课程要求的学术论文和作研究项目上。除了理论方面的课程,博士课程都会强调学生两人一组完成一项研究。主讲老师会列出一些研究课题;学生也可以自己提出课题。课题内容大多是针对课上讨论过的论文进行进一步地延伸,或者进行开放性的(答案未知的)研究。项目开题、中期报告和期末报告的成绩占课程总成绩的50%以上。很多时候,期末报告不仅要求学生提交书面形式的论文,而且要求制作成海报(辫辞蝉迟别谤),在期末最后一堂课时向全校公开。课程学习是卡梅培养博士生的重要环节,是引领学生初步具备独立研究能力的过程。而在清华,为了达到同样的目标,通常是通过研究生开题来实现,在开题前如果已经公开发表高水平论文,则认为已经初步具备独立研究能力,可以开始进行博士课题的研究。由于清华本科期间扎实的课程学习基础,以及硕士期间大量的项目锻炼,我在卡梅的课程学习中,经过努力,能够较快适应。
卡梅对表达能力的要求十分有特色。表达能力包括作学术报告的能力、文章的写作能力和编程能力叁方面。比如,在学术报告表达能力方面的考核极为严格。系里由十几位教授和有经验的高年级同学组成评审组。学生必须作一个公开的学术报告,邀请评审组中至少叁位成员参加。报告的听众都具备计算机领域的基础知识,但对于报告的具体研究领域却并不熟悉。考核的要求是学生必须深入浅出地讲解自己专业科研的一项成果,让听众听懂和理解。很多学生都不能一次通过这个考核。原因是讲解专业科研的报告和日常的交谈很不同,必须采用图形、作比较、比喻、举例等多种方法有逻辑地阐述。学校和计算机系都有一些锻炼表达能力的小课,但更重要的是在跟导师一起作科研中反复实践,表达能力才能逐渐提高。从与清华读博士的同学的交流中,我了解到,清华计算机系并没有在这方面刻意培养。虽然举行了博士生论坛这样的形式,但是主要作用是学术方向的交流,而没有考核要求。
博士学习最主要的部分是跟着导师作科学研究,这在清华和卡梅都是相同的。在上课的同时,卡梅计算机系里鼓励学生每周用至少一半的时间作研究。8门课程全部完成后,就是全时进行研究。我的导师是惭辞飞谤测教授和础颈濒补尘补办颈教授。他们分别在计算机体系结构和数据库系统领域有很深的造诣。我从事的研究是利用计算机硬件体系结构的最新特性改良数据库系统的基础算法和数据结构以获得更好的性能。在开始的几个月,导师指导我阅读了大量的学术论文。一篇12页9号字的文章,大致要花2至3个小时才能细读一遍。而且,很多时候一篇文章只读本身是不够的,要彻底理解文章内容,还必须阅读与文中的概念、设计、实验等密切相关的引用文章。日积月累,我逐渐对研究领域的发展情况有了透彻的了解。每周,我和导师都会开一个小时的讨论会:由我讲述一周的收获和新想法,导师据我的说明提问,我们一起讨论,最后决定下一步的方向。每周的讨论使我开阔了思路,学会了许多分析问题和解决问题的方法。
随着研究的深入,我们决定发表一篇学术论文。导师和我一起讨论文章结构和实验设计。我完成初稿后,导师从头到尾地帮我修改文章。对于比较大的修改,导师总是给我讲解原因。我非常感谢导师,虽然已经是国际知名的教授,他们仍然能够手把手指导我论文的写作,对于我论文写作水平的提高,无疑是巨大的帮助。功夫不负有心人,我们的论文被数据库领域主要的国际会议录用,并且根据创新性、内容深度和写作水平被评为最佳论文前三名(Runner-Up for Best Paper Award)。首次参加国际会议,要在上百人的大会议厅里作报告,我十分紧张。为了准备论文报告,导师和我一起出谋划策,力求在分配的30分钟时间内,明确我们的研究成果,清楚地回答提问。导师和几位师兄师姐,耐心地听我练习论文报告,并提出很多中肯的修改意见。我在会议上的报告最后非常成功。
回想起来,虽然我在清华没有经历严格的科研训练,但是严谨的学风、艰苦的学业和全面的训练使得我具备了应对各种挑战的能力。在卡梅攻读博士期间,科研工作有各种荆棘坎坷:编程实现的困难,实验结果的不理想,即使克服重重困难完成了预定研究,文章也可能被会议评委拒稿。这时,在清华多年养成的刻苦顽强的作风支持我不气馁,认真分析会议的评审意见,进一步完善研究。我的第叁篇论文就曾被拒稿。在导师的鼓励下,我坚持补充了更多的实验,获得了更加翔实的数据,然后修改并再次提交了这篇文章。出乎意料的是,文章不仅被录用,而且获得了最佳论文奖。我想,这篇论文应该是清华和卡梅对我共同培养的成果。
每写一篇新的文章,导师都逐渐减少对我初稿的修改,鼓励我自己不断完善。随着一篇篇文章的发表,我的研究能力和表达能力也在不断地提高,顺利地通过了博士表达能力的叁项考核。2005年底,我通过了博士论文答辩,取得了博士学位。
取得了博士学位,我心情十分激动。回想过去,我觉得我很幸运。清华的学习和生活为我在卡梅求学打下了坚实的基础。父母、妻子和亲人的关心,同学和朋友热心的帮助,导师耐心的指导,使我勇于面对学习和生活上的种种挑战和挫折,勤奋求学,不懈努力,克服一个个困难,终有成果。“路漫漫其修远兮,吾将上下而求索。”博士毕业是我博士生涯的结束,更是一个新的开始。我也走上工作岗位,再接再历,展开新的研究工作。
(2008年8月1日初稿,2008年9月14日修改稿)
作者介绍:
陈世敏 男 1973年生 祖籍浙江宁波 长于北京 研究员
1992年北京四中毕业,考入清华计23班就读。1997年本科毕业,并继续攻读硕士研究生,1999年7月获得硕士学位。赴美国卡内基梅隆大学计算机系攻读博士学位。2005年底获博士学位,加入英特尔研究院匹兹堡分院,任研究员。
来源:《历久弥新——97视频在线精品国自产拍计算机科学与技术系50年回忆与纪念文集》