斯坦福的计算机专业处于世界顶尖水平。这所学校充满传奇:它创造了硅谷,是伟大科技公司的摇篮
,引领世界科技发展。它践行纽曼和洪堡的教育模式,拥有最均衡的一流学科分布,为工业届和学术界培养了大量的人才。
像这样的顶尖大学,本文无法面面俱到,而是从计算机培养入手,结合硅谷
、课程
等角度总结其培养学生的特点,为CS领域或想转行CS的小伙伴提供可借鉴的方法和参考。
硅谷支柱
说到斯坦福,不能不说硅谷,两者可谓相辅相成、互相成就彼此。
斯坦福大学由利兰.斯坦福夫妇为了纪念年幼夭折的孩子创办,他们不仅提供了资金,还提供大片土地,并且留下遗嘱土地不能卖。二战后斯坦福陷入办学困境,濒临破产,当时的工学院院长弗雷德里克.特曼教授建议设立斯坦福科技园,通过对外出租缓解困境,柯达公司、通用电气、肖克利晶体管公司、惠普等科技公司最早入驻。
此举对斯坦福乃至全世界科技工业产生深远影响,不仅解决了学校的财政问题,帮助斯坦福跨入世界一流大学的行列,还促进了硅谷的形成。
一方面,斯坦福帮助硅谷培养了大批技术人才,通过专利授权的方式将技术成果转让给工业界。鼓励老师、学生创业,诞生了Google、思科、太阳等公司。承担硅谷人才的继续教育,建立完善的教育网络,方便硅谷员工上课。
另一方面,硅谷的科技公司不仅解决了学校的财务问题,还通过提供工业界项目,锻炼教授、学生解决实际问题的本领,为学校带去了工业界思维。
课程
编号系统
计算机课程名是按编号进行分类的,有专门的编号系统。
数字首位数字表明课程的难度:
•0-99:小于100的课程编号非技术课程•100-199:1开头表示基础本科课程•200-299:2开头表示高级本科课程/研究生入门课程•300-399:3开头表示高级研究生课程•400-499:4开头为实验性课程•500-599:5开头表示研究生研讨会
个、十位上的数字表示方向:
•00-09:介绍性课程•10-19:硬件和系统•20-29:人工语言•30-39:数值分析•40-49:软件系统•50-59:计算数学基础•60-69:算法分析•70-79:计算生物学和跨学科主题•90-99:独立学习和实习
综上,如果编号小于100,那这门课没什么难度,如果大于100,百位数字表示难度,十位数字表示方向。比如cs242 Programming Languages
,2表示高级本科难度,42表示软件类课程。
课程资源
课程资源主要有两类:当前学期的课程表[1]和斯坦福在线课程[2]。
上图是2019-2020几个学期的课程表,点击跳转到具体页面,详细列出了当前学期开设的课程。
斯坦福主张终生学习,由于地处硅谷,很多工作过的学生都有学习需求。因此斯坦福专门创建了Stanford Online
项目,为学生和工作的人提供机会,你可以选择任何感兴趣的课程学习。
教育
斯坦福受纽曼和洪堡教育思想的影响,在通才教育和专才教育保持平衡,提倡多元化、鼓励学生间相互合作,为学生提供了很大的自由度,在方向选择上,更加尊重学生的选择(从下文学生选课可见一斑)。
本科
计算机科学系是一个大系,它为本科生准备了不同的发展轨迹,并称之为Track[3],设计了专门的Track System,为学生提供机会深入了解不同的领域、拓宽视野。
大多数Track有着类似的结构,且至少包含25个教学单元和7门课程:
1.1-2门导论课程(gateway courses)2.3-4门高相关度课程(highly-related courses)3.广泛的选修课程,包括该领域的研究生课程、其它系相关课程
本科生选择track相对自由灵活,可以先上导论课程,不感兴趣可以换,上过的导论课依然算学分。
2019年,计算机系提供10个track:
•Artificial Intelligence:人工智能•Biocomputation:生物计算•Computer Engineering:计算机工程•Graphics:图形学•Human-Computer Interaction:人机交互•Information:计算机信息学•Systems:计算机系统•Theory:计算机理论•Unspecialized:为非计算机专业提供的课程•Individually Designed:根据特定兴趣和需要定制的课程
以人工智能为例,课程要求[4]如下:
1.数学与科学:至少学习9门课,50个单元2.AI核心与项目:至少11门课,40个单元,主要课程有:
•算法分析与设计 •计算机组织和系统 •计算机系统概念 •AI概念与技术
斯坦福很贴心,把相关课程和方向选择都整理好放在Undergraduate Program Sheets[5]。
研究生
硕士研究生的方向选择和本科生一样,不过硕士生方向不叫Track,改为Specialization了。硕士在选择课程前有一个过渡时间
,在这期间学生可以体验不同的课来帮助选择,如果后续想改方向,只需要导师签字就可以了。
同样以人工智能为例,它的样例课程如下:
Sample Classes | Sample Profs | More Resources |
---|---|---|
221. AI Principles & Techniques | Chris Manning | Program Sheets |
231A. Natural Language Processing | Andrew Ng | AI Lab |
229. Machine Learning | Fei-Fei Li | Bio-X |
计算机系还有很多实验室和研究小组:
•Stanford Artificial Intelligence Laboratory[6]:人工智能实验室,最近和京东合作建立了研究机构。该实验室出品了很多人工智能课程。•Stanford Computer Graphics Laboratory[7]:图形学实验室•Stanford Computer Security Laboratory[8]:计算机安全实验室
这些实验室承担了研究生培养的重任。
总结
在斯坦福的发展过程中,创建硅谷无疑起到了至关重要的作用,两者互相成就、促进发展,也成为国内高校与工业界合作借鉴的典范。
这也给了我们启发,作为学生,我们可以通过实习、接项目和工业界紧密联系,锻炼自己技术能力;作为研发工程师,工作后需要进一步提升自己时,也可以选择回到学校进修。
References
[1]
当前学期的课程表: https://cs.stanford.edu/academics/courses
[2]
斯坦福在线课程: https://online.stanford.edu/courses?topics[31]=31&keywords=
[3]
Track: https://cs.stanford.edu/degrees/undergrad/Tracks.shtml
[4]
课程要求: https://cs.stanford.edu/degrees/undergrad/ProgramSheets/CS_AI_1920PS.pdf
[5]
Undergraduate Program Sheets: https://cs.stanford.edu/degrees/undergrad/ProgramSheets.shtml
[6]
Stanford Artificial Intelligence Laboratory: http://ai.stanford.edu/
[7]
Stanford Computer Graphics Laboratory: http://graphics.stanford.edu/
[8]
Stanford Computer Security Laboratory: http://seclab.stanford.edu/
[9]
《大学之路》 吴军: https://book.douban.com/subject/27199584/