洪士灝教授
✉️:hungsh@csie.ntu.edu.tw
🌐:https://www.csie.ntu.edu.tw/~hungsh/
✏️:涂宇杰、周奕勳、林語涵、王品翔

教授認為高中跟大學的學習環境跟方向有什麼樣的差異,該如何調整自己的學習方法因應這些變化?
高中一般來說是整班一起學習,在班上每個小時上什麼課,都按照課表進行。到大學時慢慢有更多彈性,你可以選擇自己喜歡的課。高中跟大學之間有一個過渡的時期,你大一的時候還是會跟同班的同學一起上系上的必修課,到高年級時會有更多時間可以選擇自己喜歡的選修課。
我會建議大一的同學剛進來,在過渡的時期可以預先去準備大二、大三、大四的生涯規劃。現在學校有領域專長的制度,你不只是來唸資工系,唸完的時候畢業證書上還會註記著你的領域專長。你可以跟人家講,我是資工系,而且我的專長是什麼,例如說我的專長是計算機系統、我的專長是人機介面。這些領域專長的設計是幫助大家提早規劃,如果想要拿到一個人機介面的專長,這個專長有 3~4 個層次的課,大家可以提前規劃將來要修哪些課程來取得想要的專長。
很多新生進入資訊系時,從未深入接觸過電腦科學領域,產生許多不適應,教授有什麼樣的建議嗎?
我聽說去年,很多人不適應最大的痛點應該是在計算機程式。計算機程式對某些人來說就像很自然的第二語言,不會有什麼太大的問題;但有些同學完全沒碰過,他們的不適應性可能會非常高。
我覺得最需要改的是:不要只是會讀書,而是要會動手做。我自己高中學程式的時候,完全沒有老師教,拿一本書,程式碼就打進去。現在打開一個網頁,程式碼複製貼上就進來了,或者到一些 Colab 上面,連程式碼都不需要自己編,只要跑就好。可是如果只是看而少了動手做的部分,就會少了一些什麼,在面對更複雜的系統時,會越來越辛苦。哪怕是再基本的作業,自己動手做了之後,就會發現程式運作的原理其實很簡單,可能是一開始想要太快去達到強者經年累月才會的那些目標,所以變得很複雜而不適應。
教授建議新生該如何安排大學課表,對於大一先修高年級的必修有什麼看法嗎?
有些課不一定要到了大三再修,其實可以搬到大二就修,如果同學很清楚這門課跟未來想要鑽研的方向是一致的話,那就可以提前修。假如說,我對設計電腦很感興趣,那大二就可以修計算機結構了,因為修計算機結構之前不需要很多演算法、資料結構的知識,而是談電腦底層基本的運作。當然修過作業系統再去修計算機結構會比較好一點,但如果不修作業系統能不能修計算機結構呢?我的答案是可以的,只是裡面會用到一點點作業系統的概念,可以透過自己學的方法去補足。
我自己大一的時候花了很多時間在社團、運動上面,像我參加了橋牌社、象棋社、火箭社,平時沒有課的時候就在社團裡面,不然在台大裡面,沒有社團好像就沒有歸屬感。現在情況好一點,整個地下室都是系上大學部學生活動的場所,但是過去我讀大學的時候沒有一個讓大學部同學聚在一起的好地方。
教授認為新生該如何規劃自己大一生活,像社團、系隊、打工等許多活動,又該如何與課業做協調,有什麼事是大一該好好把握的嗎?
我自己大一的時候花了很多時間在社團、運動上面,像我參加了橋牌社、象棋社、火箭社,平時沒有課的時候就在社團裡面,不然在台大裡面,沒有社團好像就沒有歸屬感。現在情況好一點,整個地下室都是系上大學部學生活動的場所,但是過去我讀大學的時候沒有一個讓大學部同學聚在一起的好地方。
我大學四年每天總是有三個小時在球場上,每天傍晚就去打球,這對身體健康其實是一件很重要的事情。如果各位將來要走的遠一點,或是要能夠連續兩天不睡覺趕報告(當然這不見得是好事情),這就是養兵千日用在一時的道理。大學的時候把身體練好一點,將來要是出現一個需要你不眠不休才能去解決的關鍵難題,遇到這種臨危受命的時候,你的身體就是一個很重要的支柱。
我建議大一的時候,加入一些真的有興趣的社團,花一些時間在交朋友跟運動上面,但同時還是要能夠專注在課業。我怕有些同學把全部心思都放在課外,反而課內的部分產生問題,最好課外跟學業可以兼顧。大家能夠進到我們系上,我相信絕大多數的同學都是有能力做到的,但也不要說成績一定要排在班上前面才行。我整個大學的平均成績是中等的,但是我覺得成績可以表現在中等,而且課外可以兼顧到自己想做的事情,這樣就很棒了。可能有同學認為,為了把成績衝到很高,每學期都要拿書卷獎,因此放棄社團或不大運動,這不會是我想做的選擇。
請問教授學生平時除了修課之外,該如何自學打好基礎呢?
如果你對一些科目有興趣的話,可以提早去修課。以計算機結構為例,大一的課修完,大二就可以去修計算機結構,修完大三就可以去找教授做專題。為什麼強調做專題這件事?專題研究在國外叫做 Directed Study,在指導老師的引導之下,做專題研究時就不會像無頭蒼蠅。老師也會提供實驗室的設備資源,與其他的同學討論,讓你學得比較有效率。一個人埋頭苦幹在那邊學,相對來說是比較沒有效率的。
另外還有社團,我以前參加科技性的社團,裡面有些人在玩些有的沒有的。譬如DIY做一些電子設備、做音響、討論電腦、組裝電腦等等的。如果對軟體寫作很有興趣,網路上有很多 Open Source (開源)的社群,資訊領域的人很早就透過網路進行很多討論。不過我自己是不浪費時間在非專業社群上做些不深刻的討論的,不如拿這些時間跟網路上的專家來做一些有意義的討論,到專業社群上交一些朋友,學到一些東西。
請問教授建議學生如何找到自己的興趣方向,並決定自己專題領域呢?
我想,先不要那麼堅定地要去找一個領域,可以先鎖定兩、三個感興趣的領域,對這些領域多去做一些了解,這樣一來到最後必須做選擇的時候,大學時做的這些功課都可以派上用場。什麼時候會去做選擇呢?例如以後要去讀碩士班的時候,你就要去選擇跟哪位指導老師,每位老師都有他的專長,所以你在選指導老師的時候就等於是在選自己的專長。
如果只想要有一個專長領域,等於把雞蛋都放在同一個籃子裡面。你要確定自己真的很適合在這個領域發展,而且這個領域有未來的發展性。但通常多幾個領域會是比較保險的,比較不會押錯寶。例如我大學就壓在幾個地方,一個是我本來想去唸通訊,如果後來真的唸通訊的話我現在可能就在電機系的電信所教課了。另外我也想做 AI,因此我大學的時候修了好幾門 AI 的課,此外我自己也陸陸續續看了一些跟電腦系統實作相關的東西,基本上我有這三個技能。
出國唸研究所的時候,我就去看這間學校、這些老師在哪個領域做得怎麼樣,也有實際去修課。發現那時候 AI 市場很差,因為有一陣子 AI 什麼都做不出來,結果美國政府把研究經費全部收了,覺得這些做 AI 的都是騙子。我看到這個狀況,就不做 AI 了,剛好我去的密西根大學有超級電腦可以玩,我就改去做高效能計算。
所以說多幾個技能,比較有保障,因為不是什麼事情都能夠照你的意思去安排。那至於怎麼選領域呢?我們系上大致可以分成七個領域:計算機理論、計算機軟體、計算機系統、計算機網路、智慧系統、多媒體系統、生醫資訊,這是大方向。有人可能會覺得這些大方向太籠統,所以現在推出領域專長,大家可以去參考一下領域專長上面的描述,是不是你想像的那個樣子。
資訊系學生去公司實習的風氣逐漸興盛,教授有什麼看法嗎?教授會建議學生大一、大二的時候就開始找實習嗎?
我覺得大一、大二太早了。一般來說大一、大二會的只是資訊系的基本技能,雖然已經能幫外面的公司做一些事情,但同學們學到的也相對有限,可能就像是打工賺賺錢而已,如果本人還以為業界就是這樣子的話,那可能就被誤導了。
這些基本技能就可以做的工作不是說不重要,往往也很需要人,例如業界一直很缺軟體工程師,但工作性質可能跟將來各位大學畢業,或是念完研究所之後所能從事的工作差很多。所以大一、大二實習的經驗,有效的參考價值是多少呢?我會打上一個問號。或許等你對某個專業有比較深的了解,再朝那些專業方向看過去,找出有哪些公司在這方面做得滿不錯的,會想知道究竟他們如何做出這些創新?如何帶領世界往前走?這時候去加入這樣的團隊,去實際體驗,會比較清楚人家運作的方式。
所以我覺得不必急,不過現在我看到有不少人過度強調實習很重要,或是聽網路和 PTT上學長或路人講說老師們教的都太過理論,實習才能了解真實世界。這些話也不能說是錯的,可是他們眼中的真實世界可能是偏的。真正在業界做得有聲有色的人,大都沒有那個美國時間泡在網路媒體上說一些酸言酸語。所以你要實際去看到全貌比較重要,不要只是看到一些片面,很多人講的,或者只是講身邊看到的狀況,不一定是完整的真實狀況。事實上當你能力比較強、知識比較廣、眼界比較高的時候,你會看到的東西,往往和你初期接觸到的截然不同。
目前系上學生的風氣有點偏向實習導向,但是在廣度和深度不足的狀態下看到的可能就只是冰山一角,對大一、大二而言,他們並不一定知道冰山到底有多大,在這種情況下要怎麼讓他們知道冰山不只是水面上這麼一塊呢?其實不用急,實習當然也很好,但絕對不能當作對工作完全的認知。
業界上一些名列前茅的大公司在做些什麼,其實網路上可以看到很多的資料,這些大公司甚至很鼓勵員工沒事就發部落格來討論一些東西。但這裡來了一個障礙――語言:你如果在本土,只看本土社群的討論,只去過本土公司實習,資訊可能不足。本土公司有時候神神祕祕的,做了東西不太願意寫出來,當成是商業機密。其實你去看 Google 這些大公司,經常刊登一些技術文章來宣傳他有多厲害,很多技術都不怕你知道。
因此我覺得一個很好的方式是從網路上去看這些業界究竟在做什麼,其實很多業者把在研發的技術、做的產品資訊,都放在網路上。你如果看多了,甚至是透過一些社群去跟人家討論,就會知道國外的業界是這樣在做的。那再回過頭來,你可能會覺得比較失望的是,國內在純軟體的研發和市場,還是跟國外是有一段距離。但也不用太失望,因為國內業界也有他厲害的一面。那這時候你究竟是要怎麼看待自己的未來發展,有人想,「啊國內就是這樣子,我做得再厲害也沒有用」。還是說,你可以去學到比人家厲害的地方,在業界當領頭羊。我覺得在台大資工系,大家可以試著朝怎麼當領頭羊發展。
教授對於出國交換或留學有什麼看法,若有意願的話應該要做什麼準備?