第 75 期 - 連假結束,收心上班去。
本週專欄
Git Blame 出我的名字?等一等 我是冤枉的 feat. 版本控制 Git 簡介
是不是有發生過,明明想要整理一下程式碼風格,卻讓協作者用 git blame
指令看看是誰開發的,發現程式碼上面的名字是你,但其實你將程式碼稍作整理。並非原始的開發者,發生這種情形,請把這篇貼給協作者看,釐清究竟問題的產生,是怎麼造成的。
前端開發
Mutability Vs Immutability In JavaScript
從 JavaScript 的 Primitive Types 和 Reference Types 開始,循序漸進說到 Mutability 與 Immutability 的差異,如果沒搞懂這些基本,那在 JavaScript 的執行中可能會寫出許多奇妙的 Side Effect。
我常用的设计模式
在學習程式的路上常常會聽到設計模式,但每次學了都不曉得可以用在哪裡,這篇文章介紹了幾個平常常見的設計模式和實作方法,讓各位可以更了解設計模式,別再說設計模式只是物件導向的專利啦! 😂
Every CSS Background Property Illustrated and Explained with Code Examples 🎖️
這篇真是關於 CSS 的 Background 屬性一口氣全說完(要很大的一口氣 😂)!
【無障礙網頁祕技】介面設計大補丸
近期無障礙網頁設計越來越多人在討論,因為網頁其實非常不利於身障者操作,即便已經用了各種語義化標籤也沒辦法達到更好的使用者體驗,因此無障礙網頁設計漸漸有了雛型出來,這篇文章解釋了如何完美設計出一個無障礙網頁,有興趣的讀者不妨收藏起來閱讀。
React 設計模式 — 複合元件 ( Compound Component )
在 React 中可以透過 props.children
的方式來自身的元件變得更彈性,透過 children
的傳遞可以讓元件與元件之間的耦合性降低,這篇文章介紹了如何使用這種方式來創造出耦合性低的複合式元件。
How To Apply SOLID Principles To Clean Your Code in React
SOLID 是一種非常多人使用的設計模式,透過低耦合高內聚的方式來達到完美的 clean code 效果,但要如何在 React 中實現呢?這篇文章就在教讀者如何將 SOLID 設計模式導入 React 中。
資料分析
資料前處理必須要做的事 - 資料清理與型態調整
資料分析並不只是把資料抓一抓、程式跑一跑就可以得到結果。因為很多網路上爬來、下載到的資料都會有缺失,或是有一些值明顯不合理,這樣的資料會導致模型無法正確運作,所以在真正分析之前都會需要做資料清洗,才能確保資料是可用的
簡明 Python Pandas 入門教學
說到用 Python 做資料分析就不得不提 pandas 這個 library。pandas 提供的 DataFrame 就像 Excel 的試算表一樣,可以讓你很方便的讀取、搜尋、儲存資料,而且因為底層是用 numpy 實作的所以效能也很不錯,是做資料分析必備的工具之一
資料視覺化(Matplotlib, Seaborn, Plotly)
做完資料分析之後,最後一步就是把資料視覺化,畢竟大家都喜歡看漂亮的圖。但 Python 用來做視覺化的 lib 就有好幾套,一起來看看他們各有什麼優缺點吧~
DevOps
K8s 1.21 下週就要發布嘍!
這版多個幾個新功能,例如…
☸ 在 Kubelet 的生態系裡多了 Memory Manager
☸ Pod affinity/anti-affinity 新增了 namespaceSelector
☸ Scheduler 分配 Pod 時會先查看 Nominated Nodes
☸ 當 Deployment 在做 Scale Down 時候可以選擇 Pod 被砍掉的順序
☸ 平行化 Job 的 Pod 可以加上 Completion Index
☸ Network Policy 可以在單一條 Rule 設定 Port 的範圍
但同時也有個不幸的消息,從 1.8 開始被引進的 Pod Security Policy 宣布要在被淘汰掉,預計在 1.25 時完全移除掉 T_T
Infrastructure as Code 也可以測試嗎?!
其實是可以的啦~ 除了行之有年的 Terratest, Kitchen 和 Server Spec 之類的工具之外,最近在看 Terraform 0.15 Change Log 的時候,發現以後會多一個 CLI Command 叫做 Terraform Test,執行他的話就會對 tests 這個資料夾內的 Terraform 程式碼執行 plan & apply,到時候再來試用看看 = =+ 對於不寫 Golang 的人應該是個不錯的選擇
Kubecost raises $5.5 million to help teams monitor and reduce their Kubernetes spend
大家還記得在 2019 年 Kubecost 推出了能夠讓開發者們將 K8s 環境中資源利用與真實花費給視覺化呈現的開源專案嗎?!如今他們已經成長為一個團隊,並且獲得第一輪 550 萬美金的投資,而在這兩年間已經有數以千計的公司使用他們的服務,統計起來大家差不多在 K8s 上面花了超過十億美金,而有了這筆投資之後將可以讓團隊開始提供監控和最佳化 K8s 花費的服務,想要瞭解更多的話,可以到他們的官方網頁參觀
StarBugs Weekly
StarBugs Weekly 由一群不寫文章就會想要亂花錢,但是又沒有那麼多錢,只好繼續寫文章的開發者所創立。
內容包含 Web 前端、中端、後端、DevOps、產品開發、精實創業,一切跟產品有關的知識,都是我們的守備範圍!
Writers:
- @HannahLin - 從台灣到矽谷,熱愛前端的工程師女孩。
- @Kyle老莫 - 無法忍受自己一天不進步的熱血社會菜雞。
- @Airwaves - Hi~我是 Airwaves,熱愛研究如何造輪子的前端工程師。
- @Jenny - 我不寫 CSS。
Curators:
- @Andy - 目標成為用嘴巴工作的工程師,專長為網頁開發以及 K8s。
Maintainers:
- @GQSM - Hi!我是神 Q 超人,一個先衝再說的男人。
- @Larry850806 - 我是 Larry,傳說中的 0.1 倍工程師!
- @LukaTW - 一名全身都是死角的工程師。
- @smalltown - 熱愛鑽研各種可以提升雲端服務品質及增進團隊開發效率的開源技術。
Feedback
本週呈現主題方式做了一些改變,希望讓讀者能夠更快速精準的找到自己要的資訊。也加入社群活動這個區塊,每週更新社群活動的資訊。如果有任何建議,歡迎私訊 星巴哥技術週刊 FB 粉絲專頁 與我們聯繫。