個人資料
  • 博客訪問:
正文

很多新生就要入學了。分享孩子大學第一學期課程

(2024-07-22 13:37:03) 下一個

注:每周平均用時是根據校方官方統計平均。好學生 用時應該少些。

  • Freshman integration course (1學分)
    • 這門課分2部分,
      • 前一部分是Dean介紹SCS的各種學術活動,學生的各種機會(RA,TA,科研,選課等等),
      • 後半部分是 SCS 7個係的教授,分別每周介紹他們的研究領域,他們每天正在研究的主要課題,以及當今 CS 的新發展,新動向
    • 平均每周 用時 2.5小時
  • Principal imperative computation (C programming + algorithm) (12學分)
    • CMU SCS 核心必修課程,雖然很多學生都會了,但幾乎不可免
    • 經驗:培養使用 contracts 和 invariants 的 defensive programming
    • 成績:學生成績分化嚴重,平均成績70%,90分以上和40分以下的各占15%
    • 平均每周 總共學習用時 15.0 小時
  • Mathematics Foundations for Computer Science (discrete math) (12學分)
    • 授課老師teaching prof. Mackey廣受好評,幾乎所有的老師和學生都對他超高好評。我曾經在此貼出和他長聊,被各位抨擊,原因僅僅因為他是teaching prof.
    • 另一門CMU SCS核心必須課程,是CS理論、算法、proof based math的基礎
    • 又一門成績嚴重分化的課程,成績往往不是由學習時間決定的,而是數學天分決定的。
    • 這門課成績是 被 SCS 學生成績統計表明,和學生最終GPA最相關的成績。也就是說,SCS教授們認為,這門課的成績,最能預測 是否能在 CS學習上成功。
    • 平均每周 總共學習用時 13.5 小時
  • Matrix and Linear Transformation (10學分)
    • 矩陣和線性代數課,既有和其他大學、係科一樣的內容,又有SCS特有的一些特色
    • 額外的內容
      • 使用 Julia 語言編程,這是集 C語言的快,和 Python的強大支援於一身,特別在CS理論,數值計算,矩陣運算,圖像處理上非常強大。課程有一個project 必須用 Julia 完成
      • 重點講授了 SVD (曾經是 Machine Learning最強大武器)和 spectral clustering. 並需要完成 這些 Projects
    • 平均每周 總共學習用時 9.5 小時
  • Calculus in 3-D (9學分)
    • 這門 21-259 課原則上是不讓一年級新生選的,由於我小孩沒有其他可選的課,我給advisor打了電話,特許 第一學期 選了這門課
    • 這門課和以下課程是 Counter Requisite。就是隻能選一門:21-254,21-266,21-268,21-269. 其中 21-269 比其他課程難,隻有矩陣和線性代數得 A的,並且數學測試優勝者才可以選這門課。我孩子當時數學測試優勝,但矩陣課剛剛上(後來也是得了A),並且沒打算在數學上深耕,所以主動放棄了 269. 還有就是 後來的 computer graphics 要求 pre-requiste 必須有 Calculus in 3D,所以我們選了這門課。
    • 這門課相對挺容易的,平均每周用時 9.1 小時
  • Writing About Data
    • 寫作課之一,感覺 枯燥、無趣
    • 平均每周 總共學習用時 6.5 小時
  • Writing About Public Problems
    • 另一門寫作課,同樣的 枯燥、無趣
    • 平均每周 總共學習用時 6.6 小時。 花的時間比 writing about data 略多
  • Discrete Math Primer
    • 離散數學入門
    • 這門課的一個目的是給學生分流:根據這門課考試成績,學生被分配到不同的數學學習路徑:
      • 分數最低的去學 21108 (introduction to math concepts)
      • 好一點的去學 21127 (concepts of mathematics)
      • 再好一點的去學 21128 (math concepts and proofs)
      • 再好一點的去學 15151 (Mathematics Foundations for Computer Science)
      • 最好的 去學 21228 (Discrete Mathematics)
    • 平均每周 總共學習用時 3.8 小時
  • Computing at Carnegie Mellon
    • 熟悉CMU各種 計算資源,硬軟件工具,各種設備使用方法以及限製,比如 cyber security, 打印機,學校電腦能否下載電影,黃片等等
    • 還有很多政治正確性的東西
    • 平均每周 總共學習用時 3.5 小時
  • Fundations of Robotics
    • 邊學邊做的機器人課,主要是用 Romi Robot 進行 編程、傳感、電機控製 來實現一個自動行走的機器車。兒子秋假和寒假時帶回家 玩,可以自動行駛,繞過房間的障礙物,用激光 和 可見光 computer vision, detection etc
    • 充滿樂趣,又有成就感的一門課
  • Lean Programming 
    • Lean, 是一個 typed functional programming language, 也是用於 數學,統計、機器學習的 theorem prover.  算得上是一門 purely functional programming language. 對於初學者而言,有非常大的 learning curve. 而且首先需要紮實的 type theory 數學準備
    • 我兒子之前幾乎沒有什麽functional programming的經驗,也沒有學過 type theory,所以沒有什麽準備就上了這門課,結果上課如同聽天書,根本不懂。一共有 6個projects,秋假時,前3個projects都不會做。秋假回家時,孩子說,準備 drop 這門課。我查了一下規定,已經過了 drop deadline了,隻能 withdraw了,那樣就有一個 w 的不好記錄了,看來你隻能 硬啃了。於是孩子在秋假中,天天鑽研 lamda calculus 和 type theory,以及 Lean 語言, 終於把 3個 projects 補上了。後來的課程也跟上了。
  • Putnam Seminar
    • 著名數學教頭 PoShen Loh的課,為 Putnam 競賽準備的
    • 課程不難,但最後參加 Putnam 競賽奪得好成績,還是比較難的
    • Loh名氣很大,對學生很好,但感覺作為數學教頭,他的嚴厲不夠,難度也不夠。
[ 打印 ]
閱讀 ()評論 (1)
評論
ivyclimber 回複 悄悄話 哇!好多幹貨!謝謝!
登錄後才可評論.