卡耐基梅隆大学(下文简称为CMU)的计算机科学享誉全美,被视为该领域的领导者。CMU的计算机科学研究生教育全美最佳,软件工程专业更是遥遥领先于其它名校,本科生的声誉也在雇主中排名第一。
像这样的顶尖大学,本文无法面面俱到,而是从计算机专业培养入手,结合院系、课程、培养方案等角度总结其培养学生的特点,为CS领域或想转行CS的小伙伴提供可借鉴的方法和参考。
校训
CMU的校训是卡耐基先生的名言:My heart is in the work(我心于业),即使经历了百年内数次重大革新,这样的信念依旧根深蒂固融于整个大学文化中。
在校训的指引下,卡耐基梅隆大学对学生的训练异常严格,课业繁重,在普林斯顿评论(Princeton Review)每年“学生累得像狗的大学排名”中,从来高居前几位,与加州理工学院、麻省理工学院、芝加哥大学、普林斯顿大学等同为美国乃至全世界训练最为残酷的大学。
最大的学院
在院系设置上CMU和UC Berkeley、MIT和Stanford都不同,计算机是一个独立的学院-计算机科学学院,School of Computer Science 下面简称SCS。SCS是为数不多将计算机科学独立设院的大学,隶属于CMU七大学院之一,是全美乃至全世界最大的计算机学院。因此,CMU的学生戏称自己是全民CS。
SCS下面设置多个部门和研究所,由这些研究所为学生提供专业和培养方案。
丰富专注的课程
CMU的课程也是按编号管理的,格式为XX-xxx,前缀XX表示课程由哪个部门开设,计算机科学部的编号是15,后面的xxx是一个三位数,第一位表示课程的难度/水平,一般数字越大,难度和级别越高。
计算机科学学院的课程信息查询有多种方式:
课程表。
不同部门开设的课程。
Catalog为学生指引。
课程表
以学期为单位发布当前学年的完整课程表,里面列出当前学年的所有课程,但是只有课程信息、上课地点,没有具体的课程页面,适用于本校学生查询。
研究所课程
除了上面的两种方法,在计算机科学学院每个部门、研究所官网上都有详细的课程信息:
课程目录(Catalog)
计算机学院大而全,院系和课程都非常多,Catalog是以学院下属的研究所、部门为单位进行细分的:
如果上面的课程让你眼花缭乱,你可以到专门的课程搜索页查询课程。
上面介绍的三种方法可以让你找到自己需要的课程,这里总结几个比较出名的课程:
教育
SCS的研究生教育和人工智能专业全美排名第一,做到如此成就,在教育上自然有其自身的特点,笔者总结为:方向丰富、领域专注、提供交叉专业。
本科
因为SCS是一个大学院,下设七个部门,而且有全美顶尖的专业,所以它不仅为本系学生提供了全面的培养体系,也为CMU的所有学生提供了计算机学习机会。SCS的专业设置大概分为以下几个类型:
Undergraduate Majors:面向CS系学生的专业
Undergraduate Additional Majors:类似国内双学位,学生可以修两个专业,这里的CS是第二学位
Undergraduate Minors:辅修专业,全校的学生只要符合条件都可以选择
基于上面的专业框架,CS系为本科生提供了丰富、灵活的选择:
Computer Science:计算机科学专业,也是CS领域的核心
Artificial Intelligence:全美排名第一的人工智能专业
Human-Computer Interaction:人机交互专业
Robotics:机器人专业
Computer Science and the Arts:计算机科学与艺术专业,交叉学科
Music and Technology:音乐与计算理论专业,交叉学科
Computational Biology:计算生物专业,交叉学科
丰富的专业下,为了让学生更深入、专注学习某个核心领域,SCS提出了Concentration的概念,让学生能聚焦以下领域:
Algorithms & Complexity:算法与复杂性,学生学完应该达到申请博士项目的水平。
Computer Systems:计算机系统,学生能够理解系统的设计和开发,比如内核开发、编译器优化、分布式系统设计等,达到申请博士水平或工业界同等水平。
Software Engineering:教授高效开发现代大规模软件的技巧和知识。
老师们考虑周到,在提供丰富、灵活选择的同时,为避免由此带来的广而不精,为学生们提供了核心领域,让他们能够专注学习,做到广而精,成为T型人才。
研究生
硕士学位分布在上文提到的7个部和研究所中,这些研究所负责提供学位、培养学生。硕士专业和方向网站上一共有20个专业,非常多!这里笔者列举几个和计算机相关的:
Computer Science
Machine Learning
Computer Vision
Product Management
Computational Data Science
Artificial Intelligence and Innovation
Intelligent Information Systems
Language Technologies
Robotics
每个专业都有专门的培养方案和要求,相关信息都列举在各个专业详细网页里面。
总结
CMU的计算机是单独设院的,并且是全美最大的计算机学院。在向学生提供广泛方案的同时,还帮助学生聚焦在某个领域深入学习,同时提供交叉学科培养方案,使学生成为广而精的顶尖人才。
因此,作为开发者,要能做到致广大而尽精微:广泛阅读学习的同时,要能专注于某个领域。
Reference