分享到plurk 分享到twitter 分享到facebook

版本 f7d297af476bc2adb13d253712fc4cf1dd8237c6

User/JulianATA

JulianATA(方鈺學)

Information:

  • 成功大學 資訊工程學系109級
  • 成功大學 製造與系統研究所

Github: https://github.com/JulianATA

2019 linux 核心設計 春季班 自我評量

作業共筆: - 學習使用工具 hackmd

測驗共筆:

額外共筆(更新中):

  • 簡單 OGC 、保守 GC 與精準 GC for C hackmd

期末專題: - kcalc hackmd

自我評量 (1 ~ 10) Self-assessment

我給自己8分。 主要分成三個部份作考量,作業投入、考試問答以及課後投入。首先,作業投入的部份。第一個禮拜老師就說,這堂課常常會讓同學,晚上開始做作業,一不小心就天亮了,真的是非常有感覺。在作業方面,包括找國內外資料,並反覆驗證、理解,自己動手寫程式,還要設計實驗。還記得前幾次的作業,老師有問我問題,問到後面連實驗怎麼設計的都問到了,讓我在很多細節上考量更多,這個部份給自己8分。 再來,考試問答。這個部份,我在選擇答題上,我覺得自己表現還可以,如果是選擇合適的API,放入一段程式碼做更新、加強效能我覺得自己可以勝任。但是,當我自己要建築一個完整的程式的時候,常常因為思考整個程式的習慣不明確,缺東缺西,這個部份是我接下來要加強的!還要學習怎麼解釋自己的程式,這個部份我給自己6分。 最後,課後投入的部份,這個部份我給自己10分。以前吃飯看的是動畫、現在看的是『你所不知道的c語言』。也常常在翻閱cs:app。此外,看到電腦科學、資料科學的議題,也能夠用更加理組的方法學習,光是這半年,就增加了不少自己寫的共筆(課程以外的)。我覺得這部份,不只影響到這個課程,也讓我用這個課程的強度、態度去看待其他的學習。

老師第一堂課提到了:「要誠實的面對自己。」我覺得這句話非常有意思,什麼叫做誠實?我覺得在身邊,很多認識的同學其實對自己沒有什麼信心,認為自己走過了這四年在成大學習到的科目,出社會用不到,在台灣學習寫個app、寫個網站,可能還比較方便,明明成績不錯,但卻發現自己會的都只是寫考卷。我覺得一部份是不太清楚,整個資訊世界發生的事情,以及如何跟上。這堂課,給了我大量的資訊,了解這個世界當下的issue,以及別人是如何處理這樣的issue,如何思考。 因此,能作到「誠實的了解自己。」 但是,對於我來說,我覺得更多的是「清楚的了解我自己。」或許,在一定的了解之下,才有「誠實」/「不誠實」之分。在有一定的了解之前,更多的是不知道路有多遠、有多長、在哪個方向。我覺得上完這堂課以後,不敢說已經清楚的了解自己,但是至少稍微的比以前更有方向,知道目前世界發展在那,怎麼作才能參與其中!

2020 系統軟體設計 秋季班 自我評量

共筆: - Brief History of Free List Sharding hackmd

期末專題: - 簡介 NUMA 架構 hackmd

自我評量 (1 ~ 10) Self-assessment

很高興又有機會修 Jserv 老師的課程。 這學期對於作業的投入,沒有上一次 2019 Linux 核心設計春季班高。課程初期就有幸被老師引薦跨校研究。對於研究的部份,跟上次修課寫作業一樣,投入大量的時間。程式相關內容包含 撰寫/改寫一個動態連結函式庫、研究實驗特性、研究並運作主流 Benchmark suite、分析程式行為、研究實驗統計開銷(Atomic operation 為主)以及對於研究對應的實作各項改進…等。非程式相關內容包含 論文閱讀、論文改寫、每個禮拜討論電腦架構發展…等。雖然走過的彎路很多,但能趕受到自己對於程式細節及其背後的意義要求/理解更勝以前。

另外一個認真投入的部份,是課程的小考。修習 2019 Linux 核心設計春季班時,時常無法在短時間內理解小考的內容,有時後很難應答。這學期比較能夠掌握小考內容,雖然不免偶而會翻船,例如:Bitwise operation 腦袋轉不過來、Leetcode 題目看不透。但也常有可以秒答/穩穩作答的時候,甚至看到自己撰寫的共筆內容出現在考題裡面。而每每遇到了解不透徹的題目,都會再三閱讀/實驗相關內容。也能夠明顯感覺到對於課程的理解更深,第一次聽課的時候很容易不太理解老師說的內容,但這次聽課可以投入老師每次講的三個小時內容,更了解電腦的發展/探討的議題。

很開心的一件事,是自幹了一套 Xor Filter 僅僅用了不到350行的程式碼。雖然沒有撰寫重複的作業,當初看到 dict 這份作業要求整合 xor_singleheader 到 dict 程式中。但我在看完 xor_singleheader 程式碼後,覺得單單一個 Xor Filter 使用超過1000行程式碼太過奢侈,便抓緊連假4天的時間,每天投入超過 10 小時自幹這份 xor filter(撰寫大概15小時,但除錯與測試花了快25小時)。這份 xor filter 中的 linked list 整合了 lab0-c 中的部份實作,將以前實作的程式成功應用在新的程式中。

再來檢討自己不好的地方,有些作業我很想投入時間研究(部份作業內容與議題有重複),但因為自己時間規劃上面不夠精準,總有點過寶山空手而回的感覺。並且在撰寫共筆的時間很長,常常目標撰寫一份如Linux核心設計系列/你所不知道的c語言系列的共筆,常常在撰寫的時候為求精準,花大量時間查詢規格書/第一手開發紀錄,因此如果沒有一個空閒的連續假期,鮮少做出一份自己滿意的共筆/程式。對於這兩個部份我各扣自己1.5分。

總結,我給自己7分。對於自己的假期規劃是在春節期間把不滿意的作品一項一項補齊。