Study 2019/10 月份自我學習回顧

前言

應該是開始要努力分享一些學習到的內容了,十月份又變成只有學習日記,快要變成流水帳版了(誤)。十月卡了一個期中考大魔王,而且更可怕的是出社會太久都把微積分忘光,所以又回去複習。這次考試大多是證明,證明就是一個如果一開始錯誤,後面就會接連錯下去的東西~雖然證明不太好念,不過覺得過程中可以幫助釐清邏輯,再加上有考試壓力,還是收穫不少,當然考試分數也沒有太低啦哈。

十月依然是一個不是很平靜的月份,花了不少時間在處理人生大事上,中間還發生跑去韓國旅遊,結果不是很好玩的慘痛回憶。不過有一位姊姊跟我說,最令人印象深刻的通常不是什麼美好的回憶,所以雖然這次經驗不太好,但是下次就會知道如何應付,也是一種人生學習~這樣聽起來好像感覺就好很多,默默地放下這事情了。

希望十一月份可以更好。

預定目標回顧

1. 其他語言或工具學習 (100%)

這個月看了蠻多 database 的影片和寫作業。我在英國上過資料庫導論,其實英國教授那時候就教的不錯,只可惜 CMU Database 上的更完整一點。印象深刻的部分包含:DB 是用什麼方式來儲存 tuple、DB 可能會有自己的 scheduling 來進行寫入、以及 DB 也是有 free list 來管理目前 tuple 紀錄。對於這些關於 DB internel 的學習,覺得非常有收獲,所以非常有收穫~

2. 演算法學習 (80%)

主要複習內容就是考試內容啦,其實不難,不過要如何合理地論證,這是比較需要細讀的地方,尤其是大於小於這些,在證明時要合理地去使用,才能正確地算出 time complexity。另外就是開始進入紅黑樹、Dynamic Programming 啦,雖然上課都有專心上課,但是缺少下課完整的複習,所以只算達到 80%。

3. Memory Allocator (50%)

這部分主要是看 Free List,而且還找到很不錯的線上教材 Computer Systems Fall 2018,老師講解地清楚,內容也相當實用,用來複習 OS 或是增加相關知識都很不錯,強烈推薦。不過之所以只給 50%,是因為只有看 Global 類型的 free list,沒有去看更多關於 thread free list,以及沒有一個完整的實作 demo,十一月如果有空的時候要來補一下範例。

十一月份預計進度

1. 以工作為主的 Cloud 相關工作和概念學習

這些包含 Cloud 的 DB、Engine、以及相關工具和 deploy 方式學習。之前可能有大概耳聞一些知識,不過沒有實際實作過,所以會加強這部分實作練習。

2. 演算法學習

又要考試了,所以演算法學習包含:紅黑樹、Greedy Method、Dynamic Programming 等內容,希望一樣能考出不錯的成績~

3. Memory Allocator

寫 Free List 範例,最好是能包含關於 thread free list,或是看有沒有能減少 lock 方式來實作。

4. Meetup Sharing (Move from C to Go)

本次又要到 GDG 新竹來分享啦,這次分享主題是『Move from C to Go』,希望到時候不要被各位大神電 XD

學習日誌

  • 2019/10/1 Stable Sorting in Go: Insertion sort with Symmerge algorithm(Algorithms – ESA 2004: 12th Annual European Symposium, Bergen)
  • 2019/10/2 Paper: Stable Minimum Storage Merging by Symmetric Comparisons
  • 2019/10/3 進階電腦系統理論與實作: Week3 測驗題和延伸題目
  • 2019/10/5 進階電腦系統理論與實作 - CMSIS-NN: Efficient Neural Network Kernels for Arm Cortex-M CPUs / SIMD
  • 2019/10/6 進階電腦系統理論與實作: A practical guide to SSE SIMD with C++
  • 2019/10/6 整理 9 月份讀書紀錄 / 整理 10 月份預定目標
  • 2019/10/6 Golang Weekly Study
  • 2019/10/7 Golang: BigCache library study and source code trace - 1
  • 2019/10/7 Design and analysis of algorithm
  • 2019/10/9 RFC: 7804 Salted Challenge Response HTTP Authentication Mechanism
  • 2019/10/8 Design and analysis of algorithm - running time analysis
  • 2019/10/10 RFC: 7804 Salted Challenge Response HTTP Authentication Mechanism (continue)
  • 2019/10/10 Design and analysis of algorithm - insertion sorting and selection sorting (time complexity analysis)
  • 2019/10/11 Design and analysis of algorithm - merge sorting and quick sorting (time complexity analysis)
  • 2019/10/12 Design and analysis of algorithm - sorting in linear time, redix sort(MSB,LSB), selection question, selection in worse case
  • 2019/10/13 進階電腦系統理論與實作: Sign extends with MIPS and Cryptography (related about cpu instruction)
  • 2019/10/13 Design and analysis of algorithm - Review the scope of min term
  • 2019/10/15 Introduction to MongoDB (coursera) - Week 1
  • 2019/10/15 微積分複習
  • 2019/10/16 Istio / API Gateway - Embracing the Differences : Inside the Netflix API Redesign
  • 2019/10/24 Free List memory allocator - implicit and explicit free list
  • 2019/10/17 API Gateway (try some libs and trace a bit source code)
  • 2019/10/19 Introduction to MongoDB (coursera) - Projection, update, specific data types
  • 2019/10/17 Javascript Object Signing and Encryption (JOSE)
  • 2019/10/23 Post: API gateway and libs
  • 2019/10/17 GDG 新竹社群活動
  • 2019/10/20 [CMU Databases Systems] Relational Model & Advanced SQL
  • 2019/10/22 [CMU Databases Systems] Homework - 1: Advanced SQL (Q2-Q5)
  • 2019/10/21 演算法: red-black tree, and data structure review
  • 2019/10/23 [CMU Databases Systems] Homework - 1: Advanced SQL (Q6-Q10)
  • 2019/10/30 Free List memory allocator
  • 2019/10/30 [CMU Databases Systems] Database Storage I / Homework refactor and make it correct

References