Try   HackMD

2025q1 Homework5 (assessment)

contributed by < yy214123 >

前 6 週學習狀況

和去年修課的我相比,我覺得我今年有所成長,去年太心浮氣躁了,看到每份教材都非常長篇幅,點開後裡面還有超連結導向另一份教材,當時實在沒有很用心的去把它們好好看完,雖然今年還是一直在追逐教材進度,但我覺得現在有耐心許多,面對各個專案,我更願意花心思去好好閱讀註解,也從閱讀註解的過程中發現某些錯誤之處,並一一發 pull request 去將其完善。

lab0-c

lab0-c #218
lab0-c #219

ttt

ttt #42
ttt #43

這是印象最深刻的貢獻,沒想到只是把兩行程式碼對調就有很多東西要考量,但也獲益良多。同時也顯現出認真看教材的重要性,雖然只是簡單的對調,但背後卻涉及了記憶體相關的議題,而設計實驗也在這次學到很多,不只要公平還需要考量很多情境。而我發現溝通也是很重要的一件事,我當時直接把 comment 當成 hackMD ,把所有實驗都附上,向授課老師詢問後,其實並不需要這麼做,而是將可以呈現出差異的部份附上就好。

kxo

kxo #11
kxo #20

Demystifying the Linux CPU Scheduler

對書籍中錯字及文法錯誤部份提出了 8 次修正。
詳細的修改可參考 Demystifying the Linux CPU Scheduler 筆記

上課互動

這算是本學期加入的新上課制度,需要在課堂上有互動才能將隨堂測驗的分數納入總成績(雖然就算納入了目前還是 0 分),而課堂互動通常從測驗結束後馬上進行,但就像下面隨堂測驗回顧所說,我一題就要想兩三天,如果要對測驗進行互動我也不知道該討論些什麼,因為當下完全沒看懂。

目前著重於閱讀授課老師撰寫的排程器書籍,若下幾週的課有討論到這個部份,我會勇於舉手參與討論。

  • 第一次互動 4/25 直播
  • 第二次互動 5/8 直播

一對一面談

目前進行了四次的面談:

  • 2025 4/16
    • 暫定期末專題方向與排程器有關,先以授課老師所撰寫的排程器書籍起手。
  • 2025 4/21
  • 2025 5/2
    • 進行排程器第七章相關實驗。
  • 2025 5/9

隨堂測驗和作業回顧

作業

第一份作業

2024
2025

我的比較對象是去年的自己,我認為 commit message 的部份是進步比較多的,回顧去年對指定佇列相關的更新簡直是慘不忍睹,所以英文寫作能力真的很重要,如何用更短的篇幅及更精簡的文字去對相同的事進行描述,這是值得培養的技巧,因為很多東西不是只寫給自己看的,往往會被許多人檢視。

寫程式的部份,我覺得這是經驗值的累積,我算是去年接觸這門課才開始學習寫 C 語言,去年光是指定的佇列操作就花費了相當多的時間,今年的此份作業大致上沒有變動,可能腦袋變靈光一點了,完成相關的實作快了許多,也知道如何善用 Linux 核心風格的 API 來輔助。

實驗設計的部份,當時對這個沒有概念,光是測試資料的準備就遇到了非常大的問題。缺什麼補什麼,在這中間我去上了開放式的統計課程,把這些我以前忽略但非常重要的知識補齊,今年在相關實驗的設計我認為進步了許多。

第二份作業

隨堂測驗

去年會嘗試將測驗題目貼到 chatGPT ,不敢說它能保證答案全部正確,但至少有 50% 的可以回答出來,今年我嘗試完全不依賴它,結果分數非常慘,除了第五週考紅黑樹相關有回答出來,其餘基本上都是 0 分,自己檢討後我覺得我在看程式碼、理解程式碼,並在有限的時間去推敲出相關功能,這部份的能力還是非常欠缺,還是得條列式的從頭一行一行看才有機會自己想出答案是什麼,往往一個測驗題就得花上兩三天才有辦法知道缺空處該填什麼,但我不知道要怎麼加強這一塊。

自己對比兩種方式,靠 chatGPT 或許可以拿不錯的分數,但真的缺少了自己思考的過程,我覺得這是很大傷害。所以我還是會維持現在的模式,試著靠自己去解決問題,畢竟在大語言模型還沒氾濫的年代,前輩們也是這樣去解決問題,我認為這樣雖然費時,但對於腦袋的訓練是有莫大的幫助,知識才容易變成自己的。

印象深刻的是 第三週測驗二,這甚至是我去年度的期末專題,對應該測驗的舉例甚至是去年自己寫的 筆記,考試的當下卻還是答不出來,這也代表去年沒有真的把這東西搞懂。

閱讀〈因為自動飲料機而延畢的那一年〉的啟發

2024 心得

去年閱讀這篇的時候只覺得是一篇勵志的文章,回過頭來看當時的心得,我僅紀錄一些文章中不錯的句子去自我省思。或許是我中間出了幾次國,自己的心境上發生了一些變化,也偶然間也冒出了一點創業的 idea,所以再次閱讀這邊文章後,整個感受大幅改變了。

我覺得要樂於去觀察,無論是什麼面向。書中的作者也是跟飲料店合作過,進行飲料 DIY 網站的架設,才有了自動飲料機這個 idea。姑且不論結果好或壞,我覺得過程是很重要的一環。不斷的重複「設計、製造、修正」的循環,我認為這不只應用於軟硬體的設計上,這觀念也充斥在很多方面。

文章作者在冰塊比例的分配遇到的難關,一開始想用碎冰的方式去解決,但回到了實際經營飲料店的老闆身上,或許是考量到碎冰融化很快,在炎熱容易使飲料的濃度快速變淡。

解決了冰塊又有新的問題產生,因為果糖的黏性太高,導致購買的蠕動泵毫無用武之地,之後又找到了果糖機的廠商,由冰塊機跟果糖機的過程,我理解到了未必什麼東西都要靠自己硬幹,有時候努力尋找現成的資源,不僅成本更低也能更快解決問題。應該花更多時間在處理整個主體上。

「該學習的不是看到事情要完蛋了就去避免失敗,而是應該學習如何處理與承受失敗,你才能變得比以前更強大。」

雖然在做事情的時候大家都希望能夠達到完美的結果,但有時候實際情況並不如預期,付出的努力不一定會獲得相應的回報。但在這個過程中,他卻獲得了許多寶貴的學習經驗。與不同的人合作與溝通,這些都成為了他技能的積累。未來在面對其他挑戰時,他在飲料機上所獲得的學習經歷和教訓,或許對他處理事情和解決問題會帶來極大的幫助。