全民CS、校訓就是搬磚,這所學校計算機頂尖是有原因的
全文共2146字,閱讀需要3.5分鐘,原文連結
卡耐基梅隆大學(下文簡稱為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為學生指引。
課程表
以學期為單位釋出當前學年的完整課程表,裡面列出當前學年的所有課程,但是隻有課程資訊、上課地點,沒有具體的課程頁面,適用於本校學生查詢。
研究所課程
除了上面的兩種方法,在電腦科學學院每個部門、研究所官網上都有詳細的課程資訊:
- Computer Science Department Course List:電腦科學學院的課程列表
- Machine Learning Department:人工智慧系課程
- Human-Computer Interaction Institute:人機互動研究所課程
- Robotics Institute:機器人研究所課程
- Language Technologies Institute:語言技術研究所課程
- Computational Biology Department下的本科課程和研究生課程
- Software Engineering Institute Courses:裡面的課程偏向培訓
課程目錄(Catalog)
計算機學院大而全,院系和課程都非常多,Catalog是以學院下屬的研究所、部門為單位進行細分的:
如果上面的課程讓你眼花繚亂,你可以到專門的課程搜尋頁查詢課程。
上面介紹的三種方法可以讓你找到自己需要的課程,這裡總結幾個比較出名的課程:
- 15-440/640 Distributed Systems,這門課有兩個版本,Yuvraj Agarwal和Srini Seshan上的Fall學期,以及Satya和Babu上的Spring學期。Fall的15640用Go語言,更加偏向於應用一些(e.g. 實現mapreduce、比特幣挖礦),Spring的15640用C和Java,更加偏系統一些。
- Fundamentals of Programming and Computer Science,全美最好的五門計算機課程之一,面向本科生的基礎課程,最新課程頁面為:https://www.cs.cmu.edu/~112/,目前還沒有更新,感興趣的小夥伴可以持續關注。
- 15-213: Introduction to Computer Systems,該門課程誕生了著名神書CSAPP,書和課程配套學習效果最佳!
- 10-605 in Fall 2017 Machine Learning with Large Datasets
- 17-445/645 Software Engineering for AI-Enabled Systems
教育
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:計算機系統,學生能夠理解系統的設計和開發,比如核心開發、編譯器優化、分散式系統設計等,達到申請博士水平或工業界同等水平。
- Security and Privacy:安全和隱私。
- Software Engineering:教授高效開發現代大規模軟體的技巧和知識。
- Computational Biology
老師們考慮周到,在提供豐富、靈活選擇的同時,為避免由此帶來的廣而不精
,為學生們提供了核心領域,讓他們能夠專注學習,做到廣而精
,成為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
公眾號 QuanTalk,專注於電腦科學與技術、獨立思考、閱讀分享,開發者認知、學習、成長平臺。
相關文章
- 因為美女太多,這所學校設定了三個計算機類學院計算機
- 為了培養計算機學生,這所學校把地租給科技公司,沒想到......計算機
- 太任性!因為美女太多,這所學校設定了三個計算機類學院計算機
- 培訓Linux學校,雲端計算學習感悟Linux
- 華瑞計算機學校的充實生活計算機
- 搞笑視訊:美國INR計算機培訓學校招生宣傳片計算機
- 匯佳學校|李昕桐:“世界頂尖設計院校自由”?18歲,我實現了!
- 在學校教學Java是有爭議的Java
- 華瑞IT學校:教你什麼樣的女生適合學計算機?計算機
- 網易遊戲開展20所學校公益助學計劃遊戲
- 深圳雲端計算培訓學習:部署網校系統 edusoho--【千鋒】
- 這就是所謂的OC的反射機制反射
- 那些“氪金”“搬磚”的套路:遊戲公司是這樣讓玩家沉迷的遊戲
- 身份證校驗碼的計算方法
- 這就是所謂的結對程式設計?程式設計
- 網校程式原始碼:網校頻頻倒閉的背後原因原始碼
- 工作四天的體會,公司就是公司和學校果然不同!!!
- 這所讓華為砸錢,被蘋果自動駕駛頻繁挖人的學校,應該被你所熟知蘋果自動駕駛
- SSL證書校驗失敗的可能原因是什麼?
- 想去培訓學校學JAVA,能學到東西嗎??Java
- 第三單元學校裡所講控制元件控制元件
- 雲端計算裡的家校互聯平臺
- 身份證號碼校驗位的計算方式
- 校招面試知識點複習之計算機網路面試計算機網路
- 如何選擇Linux雲端計算學校?linux學習網站Linux學習網站
- 實際工作中的程式設計是怎麼樣的,與學校裡有什麼不同?程式設計
- 搬磚日記目錄
- 學校上課,是耽誤我學習了。。
- 計算校驗和工具:Checksum Thing MacMac
- 校招面試知識點複習之計算機網路(更新)面試計算機網路
- 學習矽谷如何吸引頂尖人才
- 零基礎學java培訓怎麼選擇學校Java
- 中科院計算所培訓中心舉辦【人工智慧的計算機工程】企業內部培訓人工智慧計算機
- 程式設計培訓正取代 CS 學位程式設計
- 【學校訓練記錄】10月個人訓練賽3個人題解
- 智慧量化搬磚交易系統開發,多平臺搬磚系統開發
- 圖靈培訓,為國際學校的孩子開Scratch創意程式設計課圖靈程式設計
- 學計算機的人是很幸福的計算機