第 88 期 - 有微解封,不知道有沒有微開發?
本週專欄
Public Cloud Network 兩三事 - 沒有最安全只有更安全
使用 Public Cloud 要如何規劃網路架構才算安全呢?其實端看組織的資源與要求,剛好最近花了一些時間在整理網路相關的工作任務,趁著這個機會把自己透過工作碰到學到的 Public Cloud 網路議題給整理成文章,透過簡易的情境設計對應到不同公司的規模或是需求之下,可以選擇什麼樣的解決方案與替代做法,讓大家可以用最短的時間獲得最多的知識
前端開發
10 CSS things I wish I knew when I was a beginner
文中中提到一些滿基本的觀念,當然還是有些爭議的內容,像是文章中有提到要淘汰 Bootstrap 這點,其實想要快速開發網頁還是會希望從一個方便好用的 UI 框架開始 😂。另外我覺得滿有趣的是他所提到 RWD 的 desktop first 和 mobile first 的區別和看法,大家可以先思考,然後再點進去看看原因和你想的一不一樣! 🙌
JavaScript: How to Redirect to Another Webpage
在開發網頁的時候,為了更好的使用者體驗,通常都會需要幫使用者重新導向新的頁面,但是在 JavaScript 能夠達到相同功能的方式在文章中就介紹了 location.href
、windows.location
、location.assign()
和 location.replace()
四種,這四種又有什麼不同呢?到底該用哪的方式會最適合使用者?
三种前端实现VR全景看房的方案!说不定哪天就用得上!
一直覺得在網頁前端顯示的 VR 實景展示超帥,但是都沒有機會好好瞭解到底該如何在前端中加入 VR 實景。而在這篇文章中,作者就舉出了三種方案實現 VR 技術,可以看看要把哪一個方案加入你的口袋名單!
The trouble with TypeScript enums
很多人開始使用 typescript 後總是會遇到很多 type error,這篇文章介紹了關於使用 enum 時會遇到的 type error 以及如何解決,有遇到任何跟 enum 有關的問題的讀者都不妨可以藉由這個文章找到解答喔~
JavaScript Tips and Best Practices
這篇文章真的蠻厲害的,介紹了很多 JavaScript 不同的寫法以及一些比較好閱讀的 coding style 來幫助工程師們進行 JavaScript 的撰寫,有興趣改變自己寫法的讀者不妨可以收藏起來日後可以閱讀。
Go
Reducing Memory Allocations in Golang
這篇文章完美示範了怎麼對你的 Go 程式做 profile,並且著手去改善 memory allocation 的次數。雖然一般情況下 Go 寫出來的程式效能都還不錯,但真的需要調整時就需要用 pprof 下去分析了
How to correctly use Basic Authentication in Go
這篇文章介紹了什麼是 basic authentication(就是輸入網址後需要打帳號密碼那種驗證方式),並且教你怎麼在 Go 裡面實作,雖然這種方式現在已經比較少見,但有時想保護自己的網頁時還是不錯的選擇
Contributing the Go Compiler: Adding New Tilde (~) Operator
這篇文非常非常的長,內容主要在講說怎麼加一個新的 operator 到 Go 的編譯器中,如果想了解 Go 編譯器的原理這篇真的不錯(但可能要讀兩三個小時就是XD)
DevOps
不用拘泥於程式只能寫到幾歲,而是以後還需要工程師嗎?!
標題下得有點危言聳聽,其實是想要提 GitHub 推出了 AI Pair Programmer 的服務 - GitHub Copilot,他可以根據你正在寫的程式碼對某幾行或是整個 Function 提出建議,讓工程師可以更快發現更多的選擇來解決問題,撰寫測試和不透過 Google 搜尋就知道想要整合的 API 要如何使用
而這個服務的底層是使用 OpenAI Codex,他是一個使用 OpenAI 建立出來的 AI 系統,因為他使用廣大的公開程式碼做訓練,所以比 GPT-3 更能夠勝任產生程式碼的工作,而在目前的 Technical Preview 版本中,主要是針對 #Python, #JavaScript, #TypeScript, #Ruby 和 #Go 這幾種語言在訓練,有興趣的人現在可以報名加入 waitlist 中
Top 10 Useful GitHub Browser Extensions
這篇文章介紹了十個可以用來增加開發者使用 GitHub 時的生產力的 Chrome Extension,看完介紹後,有幾個真的令我感到腦洞大開,迫不期待安裝來使用!
- Octotree: 直接讓瀏覽器多出 Repository 的檔案瀏覽功能,讓開發者在 Code Review 跟找檔案的時候來的更方便
- Enhanced GitHub: 顯示整個 Repostiroy 和每個檔案的大小,並且加上下載連結跟複製檔案內容的按鈕
- GitHub Code Folding: 可以直接在 GitHub 網頁上使用折疊功能,把不需要看到的程式碼所屬的 Code Block 藏起來
- Sourcegraph: 直接找到程式碼中該函釋定義或是參照的程式碼在哪裡 (目前可以使用在 Go, java, TypeScript, JavaScript 跟 Python)
- Notifications Preview for GitHub: 讓 GitHub 通知功能更好用,顯示通知個數,預覽通知內容,並可以在預覽時標示為已讀或是不再訂閱該通知
- File Icons for GitHub and GitLab: 給予程式碼檔案不同的 ICON
- OctoLinker: 對於程式碼中 include, require 和 import 的 library 提供超連結,讓使用者直接點過去看
- GitHub Isometric Contributions: 可以把 GitHub 的 Contribution 圖轉換成不一樣的顯示方式,甚至變成 3D 的
- GIFs for GitHub: 讓開發者更方便搜尋 GIPHY 中的 GIF 圖檔加在回覆裡
- Refined GitHub: 讓 GitHub 更好用的 Extension,例如讓空白可視化,按一鍵就可以 Merge Conflict,看到有哪些人在 Comment 按下表情符號,讓你在 PR 或是 Issue 中把不必要的 Comment 隱藏起來,在程式碼中把 Issue/PR 連結起來…等
FinOps for Kubernetes: Insufficient – or nonexistent – Kubernetes cost monitoring is causing overspend
根據 CNCF 的調查,去年有 68% 的人表示他們花在 Kubernetes 相關的成本增加了,而且其中一半的表示一整年增加超過了 20%,這樣的趨勢其實是在預期中的,因為有越來越多的組織採用的 Cloud Native 架構並跟著擴展 K8s 環境;不過根據報告同時也揭露了上升的成本其實跟使用者無法精確且有效的監控或是預測 K8s 成本有關,這造成了不必要的過度花費;Kubecost 也順道趁著這個機會來推廣大家使用它節省在 K8s 相關的開銷,Loft.sh 也發了篇文章比較各家 K8s 託管服務的價錢
StarBugs Weekly
StarBugs Weekly 由一群不寫文章就會想要亂花錢,但是又沒有那麼多錢,只好繼續寫文章的開發者所創立。
內容包含 Web 前端、中端、後端、DevOps、產品開發、精實創業,一切跟產品有關的知識,都是我們的守備範圍!
Writers:
- @HannahLin - 從台灣到矽谷,熱愛前端的工程師女孩。
- @Kyle老莫 - 無法忍受自己一天不進步的熱血社會菜雞。
- @Airwaves - Hi~我是 Airwaves,熱愛研究如何造輪子的前端工程師。
- @Jenny - 我不寫 CSS。
Curators:
- @Andy - 目標成為用嘴巴工作的工程師,專長為網頁開發以及 K8s。
Maintainers:
- @GQSM - Hi!我是神 Q 超人,一個先衝再說的男人。
- @LarryLu - 我是 Larry,傳說中的 0.1 倍工程師!
- @LukaTW - 一名全身都是死角的工程師。
- @smalltown - 熱愛鑽研各種可以提升雲端服務品質及增進團隊開發效率的開源技術。
Feedback
本週呈現主題方式做了一些改變,希望讓讀者能夠更快速精準的找到自己要的資訊。也加入社群活動這個區塊,每週更新社群活動的資訊。如果有任何建議,歡迎私訊 星巴哥技術週刊 FB 粉絲專頁 與我們聯繫。