第 138 期 - 通透的海,陽光照亮了沿岸

本週專欄

來征服資料結構與演算法吧 | 連 Google 面試都在考的 Binary Tree

Hi!大家好,我是神 Q 超人!在這篇文章裡,會先介紹 binary tree 的資料結構,與如何使用 JavaScript 實作,最後一樣會挑幾題演算法來練練手,學習一下和 Tree 結構形影不離的深度搜尋法(DFS,Depth-first Search)與廣度搜尋法(BFS,Breadth-first Search),希望可以讓大家熟悉 binary tree 的資料結構與用法。

前端開發

Patterns for Building JavaScript Websites in 2022

對現代來說,建構一個網站最難的事情是你如何在琳瑯滿目的技術、框架或是套件中,選擇需要的部分進行開發。作者從 Routing、Rendering 和 Hydration 這三個部分,將各種技術和方法用表格加以比較,文章稍難閱讀,因為內容中有滿多專有名詞的。

Don’t be afraid of TypeScript

越來越多的前端工程師的職缺,都出現了對 TypeScript 的需求,即使不是必要的,也會將他列到加分項目。作者認為對於一個已經掌控 JavaScript 的開發者來說,要再進一步接觸 TypeScript 可能會對他的強制需求感到不知所措,但其實 TypeScript 不難!首先從了解為何需要開始!

6 Best Frontend Communities to Join in 2022

身為工程師就是要不斷的接觸新東西及成長,但如果身邊沒有一個圈子能夠互相討論新技術,或是最近學習了什麼的話,線上社群就會是很棒的一個選擇。文章中介紹的幾個線上社群幾乎都有 discord 的討論群,也有他們這個社群主要在討論的技術內容,如果你還是一個人的話,就選擇一個加入看看吧!

後端開發 - DB 資料庫

How the N+1 Query Can Burn Your Database

N+1 問題是資料庫領域非常知名的問題,這篇文章詳細解釋了 N+1 問題的成因,以及該如何解決,如果才剛開始碰資料庫或是後端開發,建議可以讀讀看哦~

Herding elephants: Lessons learned from sharding Postgres at Notion

應該很多人都聽過 Notion 這個筆記軟體,隨著使用者跟資料量越來越多,他們決定要對 PostgreSQL 建的資料庫做 sharding,這篇文章說明了他們是怎麼做的、過程中遇到什麼困難,非常不錯的文章(但有點長讀起來有點累XD)

Hosting SQLite databases on Github Pages

你一定知道 SQLite 這個資料庫,但你有想過他可以被架在 Github page 上嗎。這篇的作者先把 SQLite 編譯成 WebAssembly,接著再弄一個 file system 讓他去幫忙抓資料。雖然實用性不高但還滿有趣的XD

DevOps

Kubeconfig File Explained With Practical Examples

一開始接觸 Kubernetes 想必有很多人會疑惑自己的電腦到底是怎麼連線到 Kubernetes cluster API?其實就是靠 kubeconfig。這篇文章以實際的例子介紹 kubeconfig 的使用方法,例如:怎麼靈活運動 kubeconfig、如何 merge kubeconfig、如何生產 kubeconfig(很多 cloud provider 在這方面都把使用者體驗做得很好)以及一些 FAQs 讓讀者更了解 kubeconfig 知識。

Continuous Operations is the Unsung Hero of DevOps

這篇文章的標題「持續維運(Continuous Operations)是 DevOps 文化裡的無名英雄」只要是身為第一線維運人員應該感同身受,其中的概念就提到應該把維運自動化到期望的設定狀態,讓維運人員可以專心在複雜的問題上,或者系統可以持續的掃描和修正錯誤。而持續維運可以解釋為 infrastructure 的持續交付(Continuous Delivery),如果使用 public cloud provider 和 Infrastructure-as-Code 就很容易,但是如果是 on-premises 環境就得花更多心力。

How to run untrusted containers in Kubernetes

我們都知道 container 的隔離性還是有限,所以才會開始有在 Kubernetes 裡跑虛擬機的做法,只要虛擬機有按照 CRI(Container Runtime Iterface)的標準就可以。這邊介紹的 gVisor 可以提供虛擬機環境給 container,讓每個 container 的 kernel 都是獨立的,可以提供更好的獨立性。

StarBugs Weekly

StarBugs Weekly 由一群不寫文章就會想要亂花錢,但是又沒有那麼多錢,只好繼續寫文章的開發者所創立。
內容包含 Web 前端、中端、後端、DevOps、產品開發、精實創業,一切跟產品有關的知識,都是我們的守備範圍!
不想漏追科技新聞的人,趕緊把 StarBugs Telegram Bot 訂閱起來 https://t.me/starbugs_weekly_bot (對機器人說 /subscribe 即可)

另外,為了讓 Starbugs 的專欄有更多豐富、優質的內容,我們決定要開始誠徵 Writer 了。如果你本來就有在寫文章,對於文章的品質有要求、而且也樂於分享討論技術,那很歡迎你以 Writer 的身份加入我們。請動動手指頭私訊我們粉專 星巴哥技術週刊,並附上自我介紹跟最近寫的文章,就有機會加入我們唷 🙌

Writers:

  • @HannahLin - 從台灣到矽谷,熱愛前端的工程師女孩。
  • @KyleMo - 雜食性軟體工程師,喜歡的技術我都想學。
  • @Airwaves - Hi~我是 Airwaves,熱愛研究如何造輪子的前端工程師。
  • @Andy - 目標成為用嘴巴工作的工程師,專長為網頁開發以及 K8s。
  • @lazypro - 從 embedded 到 kernel,從 device 上雲端,程式無涯、無法靠岸,軟體的求道者。
  • @ianchen0119 - 5G 領域研究生,同時也是喜歡學習不同領域技術的工程師。
  • @00-talk - 我是 00,脖子痠痛的前端生命鬥士。

Maintainers:

  • @GQSM - Hi!我是神 Q 超人,一個先衝再說的男人。
  • @LarryLu - 我是 Larry,傳說中的 0.1 倍工程師!
  • @LukaJoJo - 一名全身都是死角的工程師。
  • @smalltown - 熱愛鑽研各種可以提升雲端服務品質及增進團隊開發效率的開源技術。
  • @RicoChen - 熱愛許多技術且努力看透技術的本質,如果有什麼好玩的技術,還請各位歡迎直接找我聊聊。

Feedback

本週呈現主題方式做了一些改變,希望讓讀者能夠更快速精準的找到自己要的資訊。也加入社群活動這個區塊,每週更新社群活動的資訊。如果有任何建議,歡迎私訊 星巴哥技術週刊 FB 粉絲專頁 與我們聯繫。