第二學期修課心得

Second semester

年久失修的部落格,繼續只更新修課心得(流水帳)

網路管理與系統管理 (NASA)

禮拜一早九(?)可以選三學分跟一學分,如果選一學分的似乎可以拿來抵服務學習,不過我選了三學分的。
這門課有一個必須要在寒假左右完成的 HW0,事後看起來有點奇怪的點是學期中有不少課在教的反而是在 HW0 中感覺有用到的東西。

在學期開始時可以到 204 去實體上課,不過下雨的時候還要早起到 204 真的很折磨。
後來正好因為防疫因素變成線上了(其實原本就可以線上上課)。
NASA 的上課內容主要是在講一些原理或是介紹一些協定,像是網路如何運作的(網路的五層結構)、防火牆、DNS、Wi-Fi 原理、filesystem、web service。

作業

我覺得作業是 NASA 能學到最多東西也比較有趣的部份。每兩三週左右會有一個比較大的作業,每週則是有 lab 作業與影片簡答題。
所謂的 lab 有點像助教課,就是在正課上完之後由助教教我們一些和正課稍微相關的工具怎麼使用,例如:shell script撰寫、cisco switch configuration 的操作、教我們如何架一個 apache web service,或是關於硬碟的切割與格式化。

比較大的作業則不一定會跟正課有關,以下是六次作業的標題:

  • Homework 1 - Wireshark/tcpdump & UNIX / Shell Scripts
  • Homework 2 - IP/iperf/Cisco & partition
  • Homework 3 - Firewall & Virsh + Docker
  • Homework 4 - Security & LDAP
  • Homework 5 - DNS + DHCP & NFS + Fix VM
  • Homework 6 - Wireless & Web Server

作業內容常常都是 lab 的延伸,但是 NASA 作業的最大特色就是常常需要自己到網路上找相關資料,要願意花時間查看 documentation 或是 manual page 之類的,不然就是要找好大腿抱。舉例來說, Fix VM 那次作業就需要去查所謂 PXE 是什麼,還有怎麼讓 VM 互相溝通,使得一台可以當 server、一台可以當 client,基本上 ArchWiki 有相當完整的資訊,不過…

從 HW0 開始就需要你會開 VM (虛擬機器),基本上各種平常不會踩到的神奇雷點可以在學 NASA 的時候都踩一遍。我印象深刻的有:UEFI/legacy BIOS 沒有設定好、網路沒有設定好、兩個要互相溝通的 VM 的網卡 MAC address 弄成一樣了、在工作站上和別人的 port 撞到等等。常常遇到各種完全沒有頭緒的問題源頭都是源自我們用 VM 做事時沒有弄好 VM 的設定之類的。

即使是不需要用 VM 的題目,有時候也會遇到需要 trial-and-error 的時候,因為每個人做作業的環境都不同,欣穆老師表示這種 trial-and-error 的過程也是作為系統工程師所需要的技能(?)總之查資料與各種障礙排除導致了 NASA 是一個相當花時間的課。

考試

考試的形式是三人一組,並且會有即時的記分板,也會即時收到回饋結果(人工的所以不是真即時)。
今年的考試有蠻多作業題的,但好像也導致分數線直接上升超多。
作業題幾乎都是和作業沒差多少,看計分版就可以知道要是哪些,建議是和隊友練習考古題就能大概知道哪些題目就是那些會考出來的必拿題了。
而剩下的難題大概就是要看緣份做出來了,有些題目不是你事前有學過就是是當場要查資料,有些是 CTF 類的題目,也有一些是要靠苦工(?)寫出來的 shell script 題。

有趣的是有一些是 Archlinux 相關的題目 XD,除了因為工作站是 Arch 的緣故大概也有一些 TA 的個人喜好。

總結

依照聽到的成績情形來看,至少相對於其他資工系的課來說可能不算甜,不過是一門非常充實的課。
如果平常就願意探索 documentation,或是熟練使用各種 linux(尤其是 Archlinux) 的人,大概會在這門課混得不錯。

賽局理論

想說來修一門和王政祺不一樣的課,於是選到了這門賽局理論。
整學期都採線上錄影上課的形式,想當然我一定是到考前才開始看影片。
這門課也是很有呂學一教授上的課程的特色,老師會用很淺顯的詞去講解,還會發明一眼看起來就是他自己創造的名詞。大部分的課程都在講在每個人都想辦法最大化他的 utility 的情況下,有哪些 equilibrium 會是合理的,在加上各種不同的 context 或限制之後,也會出現不同類型的均衡模型,有些模型下的 equilibirum 在另一個模型下不被視為是 equilibrium,,教授為此介紹了很多反例,幾乎有半個學期都在講(?)

修的人比我想像中多很多,不過我也沒有什麼關於甜度的消息。
整學期總共考了三次試,前兩次我都考九十以上,可惜最後一次考爆@@
真的是中大計,最後一次考試出現好幾個要你舉反例的題目(根本就是要你背投影片),還有投影片上完全沒有印象有提到的證明。
我只有大概三十分,還因為遲上傳被扣分,最後撈到一個 A。

探索語言

混分的這學期當中唯一(嗎)的通識課。
是全英文授課,老師第一堂課似乎還有想要嚇嚇一些人(?)不過語言學的東西我在高中時就有聽 03t 講一些覺得很有趣,邱老師的英文也非常清楚,讓我覺得我應該要用這門通識練習我的英文(到最後還是用中文跟組員溝通:P)

分數的話,有兩次的 guest lecture 需要寫心得,還有一次的期末報告與一次的期末考,全部積在一次考我覺得相當可怕,客觀來說要看完整學期總共大概一千張的投影片是非常困難,在期末考前有後悔過沒有認真做筆記,雖然助教有分享一個 hackmd 整理重點但還是擔心有漏或是有自己沒搞懂的東西之類的。
考試是線上開書考,他考的方法是分成兩個階段,第一個階段考得不難,可是時間非常有限,而且必須按照順序答題,不能回頭,要求你要很快能夠反應出答案,第二階段則是一些比較難的題目,但時間很有餘裕。我覺得第一階段真的有難到,而且很好笑的是他考了一大堆認真的題目之後最後一題問 guest lecture 教授的名字,結果剩下時間三十秒來不及找到真的氣死人。
這門課有很多的加分制度,有:在課堂上回答問題、期末交一分鐘左右語言學相關的小短片、報名協助語言學相關實驗(聽說會像是念/聽一些聲音的形式)等等。
不過我都沒有參加,大概是期末報告做太好了(躺系上學長姐的分…真的太感謝),讓我有點罪惡感的撈到了 A+。

順帶一提,期末報告時有出現一個很好笑的事,就是在線上會議有人似乎忘記關麥說什麼「我在垃圾通識」之類的,超好笑,而且似乎還剛好那組的報告有各種出包,非常波蘭。

資料結構與演算法 (DSA)

作為一門大一下必修,DSA 的助教和修課人數眾多,因此有開一個方便問問題、討論的 DC 群,大家的討論風氣好像也還不錯。我覺得很有趣的是濤哥都已經大四了今年才來修XD(聽說之前都撞課),每次他在 DC 發言都有一股強者的氣場(X
前半學期是林軒田教授,後半是蔡欣穆教授上課,根據鄭天盛鄭老師的說法是後半學期特別需要讀,因此我有好好看 hash table、red black tree 和 Btree 的上課影片(?)不過考試考得也沒有多細,大多數都是要你人腦模擬資料結構怎麼操作的,而且又是線上開書考,所以其實沒有太可怕。
學期的最後按照傳統有一個大地遊戲,但因疫情因素變成 Gathertown 線上,非常乾,雖然大概實體只會更乾就是了。

作業有手寫題與程式題,手寫包含設計演算法與證明正確性和時間複雜度,老實說我不知道上課教的和作業標準的到底嚴不嚴謹,但我都是盡量寫到自己滿意就好。
順帶一提每個禮拜上課完需要完成 NTU cool 上的選擇或簡答題。

程式題在我原本的想像中會需要(或至少可以)寫紅黑樹或是 heap,前幾次的作業我想到的作法都沒有用到任何資料結構,非常不符合課名。最後一次作業時,我本來以為會是跟去年類似噁心的塊狀鏈表,結果是科技資結題,必須要用 treap + 吉如一懶標才能過,因為有區間反轉跟拼接的操作所以甚至也不會想用紅黑樹寫這題,所以上課教的全部沒用,要自己去查相關的資料(或是問人)才能有機會寫出這題,沒有聽到有人用紅黑樹去 merge split 的(根據 stackoverflow 紅黑樹也可以在一個 log 的時間內 merge split,但是要好好寫),只能說這樣出不是很好的決定。

普通物理學甲下

跟上學期比起來是相當的難,一開始繼續上學期的部份把電磁波、干涉、繞射講完之後開始講近代物理,像是物質波、粒子物理等等,最後再講一些有關半導體與 MOSFET 的部份。
可以說是我被懲罰了,習慣了上學期不去上物理課的模式,期中考勉強抱佛腳考得還可以,從期中考之後就完全是另一個世界。有一次作業完全寫不出來、投影片也看的一頭霧水,之後的作業也都是花了很多時間翻投影片和 google 才學會的。
幸運的是,期末考不僅是線上開書考,而且還考一大堆跟作業完全一樣的題目,其他也有好幾題是直接 google 題敘就能找到解答的 XD,感謝佛心教授。

離散數學

相當甜涼的課,我只有第一次為了加簽去上課。第一堂課真的教得太簡單,教你基本的排列組合XD,我對這堂課的印象就是老師用很慵懶的英文念投影片這樣。
這學期有三次考試,基本上可以看完投影片就考,不建議不看投影片考,不然會不知道一些考卷上只有定義在投影片裡面的名詞是什麼意思。
另外,雖然最後一次考試的範圍有上到跟 Langrange’s theorem、Burnside lemma 有關的東西,但他沒有考到。

三次考試的範圍分別是:

  1. Combinatorics, Number Theory, Boolean Logic, Set Theory, Relations and Functions
  2. Generating Functions, Recurrence Relations
  3. Graph Theory, Group Theory (group, ring, field)
    基本上就是在 IOIC 講義的數學部份再加一些簡單的圖論XD

機率

跟風修的大二必修,整體來說不錯。一開始講了一些比較簡單的東西,像是獨立事件與條件機率、貝氏機率,然後花了一些時間在介紹各種常見的離散機率分佈,接著開始講連續的機率分佈,也就是 CDF、PDF 那些的,一樣也介紹了各種常見的連續機率分佈。學期的最後在講 test hypothesis 與 entropy,也有講 Method of Moment 和 Maximum Likelihood Estimator 等等,我自己感覺是很充實。

分數應該關鍵只有考試,作業只要有交就是滿分。
期中考吵分後吵到了 100 以上,可惜期末考考爆(主要是因為把 normal distribution 的 MGF 記錯),據說期中期末都 100 以上的可以被他請吃飯(??
雖然期末只有 80,不過還是有 A+,所以我就不吵分數了(?)

end

現在打完手好痠,我在懷疑是前幾天去瘋狂打音遊的緣故QQ 身體老了
部落格想要更新的點子是有的,但要好好的打出來就好累zzz

comments powered by Disqus