2007/06/08

熱血對話

昨晚與 Yen3 有一番熱血賁張的對話,摘錄重點句於下(額外加入標點,並適度省略 "XD" XD):

  • 如果以後寫教科書,記得提供投影片,這樣就會賣了,然後習題多出一點 XD。Primer 就是沒提供投影片,才那麼少人用 XD。
  • 教 C 就用 K&R,教 C++ 就用 C++ Primer,這是完美的選擇 XD。
  • C++ 要教到適當程度,應該要一年,只用半年會噎死 ─ 吃太快就噎死了 XD。C 的話,半年剛剛好。有 C 的基礎,半年也可以把 Java 精要教完,前提是 C 的基礎夠穩,不用一直回頭補強 XD。
  • 計概改成一年,教 CS 各個學門的核心概念,並著重其間的有機聯繫,這樣大二開始,讀每一門課都知道這片拼圖在整幅 CS big picture 的哪個方位。喔,實在有夠理想 XD。
  • 所以像 cyy 上半學期講的東西就拿到計概去講,TOY 拿到計概去。組合語言就和系統程式一起上就好了(JK 注:我心中想的系統程式是講 assembler、linker 的那種系統程式),合併成一門課。(Yen3:這在我們系是一起上的。)是啊,有先例,顯然很合理 XD。
  • 而且計概的角色非常重要,脈要讓他通,大一就通 XD。(Yen3:重點是計概上那麼難,對於完全沒碰過電腦的人是否有辦法吸收?)不用進到 detail,核心概念就行了,像 pipeline 一定是留到計算機結構專門去上。又一個很好的例證就是,cyy 所教有關 TOY machine 的部分,都是 Princeton 的計概內容(JK 注:其實不完全是,後面的 assembly 部份是 cyy 自己做的 XD)。(Yen3:但是可以稍微提一下。)嗯,exactly XD。
  • (Yen3:事實上這要建立在一個假設之上 ─ 學生回家都要很認真才行。)也沒空去顧不認真的學生?XD(Yen3:是很沒空。上到最後剩幾個認真的?)反正上課內容就是這樣,最後要不要請調分大神,端看老師如何決定。基本上就是隨機客的做法:上課就上他應該上的,考試考他認為應該考的,最後調分就是了,所以不是大問題 XD。
  • 我知道一般的計概課為什麼效率不彰了 ─ 不夠具體。引進 TOY machine 這種東西會特別有效。
  • 計概可以講得讓人熱血賁張的啊,很多概念其實都很漂亮的。看,從 TOY machine 那麼簡單的 model,手動輸入程式,馬上就看到 OS 的第一個功能:把程式載入記憶體。然後 multi-process 進來,我們又不想把事情弄複雜,所以 context-switch 讓 process 以為 CPU 是他一個人的,virtual memory system 讓 process 以為 memory 整塊都是他的。這都是 OS 在做的嘛,一層很漂亮的 ABSTRACTION 啊!喔,我想到這裡就一陣 thrilled XD。
  • 他們(JK 注:指 Princeton)看起來是先把 programming(JK 注:Java programming)教完才開始計概,從 TOY 開始。不過我還是認為從 C 下手比較好,Java VM 其實很難解釋,不夠單純。他(JK 注:指 C language)直接溝通高階語言和計算機架構,所以從那個點切入很自然。(Yen3:C 真是一個美麗的東西。)是啊,我現在感到熱血沸騰 XD。(Yen3:兄弟兩點了 XD。)
  • 我好像比較基本的課都想教教看,比較專業的就留給內行。天啊,我好想上我自己開的計概 XD。
  • 概論課如果教得好,總是一種享受,因為不用顧慮細節,專心欣賞那些核心概念之美就好了。
  • 這一切都是 cyy 觸發的 XD。
  • 最大問題恐怕就是制度問題,還有你剛剛說的,有沒有老師願意推。而且那些熱血老師如果沒得到適當回應,苦撐在那裡也是很辛苦。

--
計概最完美的形式恐怕就是聰明那種熱血沸騰的風格了 XD。

Labels: ,