Quantcast
Channel: CodeTengu Weekly 碼天狗週刊
Viewing all articles
Browse latest Browse all 109

CodeTengu Weekly 碼天狗週刊 - Issue 140 聽說新來的工程師喜歡玩密室逃脫,但是看他玩了一個下午都還沒離開 Vim 呢 - Sep 3rd 2018

$
0
0

Hello World

CodeTengu Weekly 碼天狗週刊

如果命運的齒輪沒有出差錯,CodeTengu Weekly 都會在 UTC+8 時區的每個禮拜一 AM 10:00 出刊。每週會由三位 curator 負責當期的內容,每個 curator 有各自擅長的領域,如果你在這一期沒有看到感興趣的東西,可能下一期就有了。當然你也可以瀏覽一下前幾期的內容

目前的 curator 陣容:

你也可以關注我們的 FacebookTwitterGitHubOpen Source 專案,有很多 weekly 看不到的內容。有任何建議也歡迎來 Gitter 聊聊。

不時致力於解決開發者之間的資訊不對稱

@vinta

MongoDB cookbook: Queries and Aggregations

Issue 130 有提到,MongoDB 的 Aggregation 其實很強大,尤其搭配 $elemMatch$project$let$unwind$facet 等功能,可以直接完成很多複雜的業務邏輯,不需要多寫一行 code,雖然哪些事應該讓 DB 做、哪些事得在 API server 做,這就見仁見智啦。

不過 MongoDB Aggregation 寫起來的阿雜程度實在也跟 Elasticsearch 的 Query DSL 不遑多讓了(Thanks JSON),因為老是記不起來各種 operators 的用法和限制,所以就遵循之前提過的 Cookbook 模式,幫自己寫了一份筆記,複習、速查、分享各相宜。

vinta.ws

Kubernetes Best Practices with Sandeep Dinesh (Google)

這個影片是 Google 的工程師在講使用 Kubernetes 和 containers 時的最佳實踐,影片的後半段則是 Weaveworks 的人在講他們搭建自己的 Kubernetes cluster 時遇到的各種挑戰和解法。

雖然前半段的內容有不少在 Kubernetes 和 GKE 的官方文件裡都有提到,但是有人貼心地幫你整理好還是挺棒的(就像你訂閱的這個 weekly 一樣),畢竟 Kubernetes 的文件實在多到靠北,看完都已經是 YAML 的形狀了。不過我對於越來越多人都推薦 Helm 這點還是不太能領略,總覺得 Helm 對一般使用者的意義好像不大啊(又不是 PaaS),我還不如直接幹一份 Chart 回來自己維護,之後要升級或客製化也比較方便,畢竟也就是一堆 YAML 檔。比較可行的用途似乎是團隊共用一套 Chart 來部署 production、staging 或 dev 環境?

延伸閱讀:

youtube.com

Tuning NGINX behind Google Cloud Platform HTTP(S) Load Balancer

因為 Google Cloud HTTP Load Balancing 的某些特性,如果你在 Google Kubernetes Engine 裡面跑 NGINX(或 OpenResty)的話,會有一些額外的 config 需要設定,尤其是 keepalive_timeout 620s;

題外話,Google Cloud 的 Load Balancer 也是很強啊,除了支援 QUIC 之外,更是默認啟用 TCP BBR

延伸閱讀:

percy.io

别废话,各种 SQL 到底加了什么锁?

這個系列的文章專門在講 MySQL InnoDB 在各種情況下會使用的各種 lock,作者寫得非常淺顯易懂,最喜歡讀這種技術文章了~

延伸閱讀:

qq.com

@kako0507

React Fire: Modernizing React DOM

React DOM 目前有許多不經過大改很難修復的 known problems

團隊希望可以刪除一些 event system 的 abstraction ,是造成系統複雜以及 bundle size 變大的原因。

React Fire 計畫的大致方向:

github.com

How I built a mood changing animation using CSS masks

本文透過表情動畫的例子學習 CSS 遮罩 mask-image 以及切換 mask-position 的效果。

freecodecamp.org

Improve your motion

在使用 CSS 轉場動畫時,使用 transition-duration 取代 transition-delay 達到更順暢的效果,透過文內的 timeline 可以更理解這兩者之間的效果差異。

medium.com

透過 WebAssambly 執行 Windows 2000

透過瀏覽器也可以執行 Windows 2000 !

QEMU 的作者 Fabrice Bellard 在 2011 年就實作了這套 PC/x86 的模擬器 - JSLinux , 為了提升效能,先是利用 asm.js 來改寫,後期更透過 Emscripten 將 C code 轉為 JavaScript 執行,而最近又更進一步支援 WebAssembly 。

bellard.org

@kkdai

Go on Twitter: 🎉 Go 1.11 is released!

令人期待(?)的 Go 1.11 正式版出來了。包括兩個新功能:

  1. Golang module support (vgo experimental migration)
  2. WebAssembly port

整理一下其他相關消息:

Go 1.11 可能的問題:

Go 1.11 之後 github.com/nsf/gocode 會爆炸喔… 各家 IDE 已經開始換 github.com/mdempsky/gocode

twitter.com

securego/gosec: Golang security checker

一個很有趣的專案,透過 AST 的解析來分析你的 golang source code 是否有任何安全上漏洞.包括了:

  • SQL Query
  • File permission
  • Random number security

github.com

My Favorite Go 2 Proposals

這篇文章的作者一直在關心 Golang 2.0 (Go++?) 的發展.. 他列出了幾個有趣的 proposal ,大家可以看看

  1. Interface literals: 可以讓你寫 interface 更精簡
  2. Add collect statements to the language: 讓你處理 error 可以更 “漂亮”

當然還有更多有趣的 proposal 正在進行.. 大家喜歡的是哪個?

dev.to

在 Kubernetes 上面透過 Go 開發 gRPC service 可能遇到的問題

這幾週調整一下 gRPC service ,所以有這篇心得文.裡面解決了幾個問題:

  1. 如何 streaming request
  2. 如何調整 gRPC request timeout
  3. 如何調整 gRPC request size

裡面也有一個簡單的範例給大家參考一下.

更新:放了 Dockerfile 跟 Kubernetes yaml 在裡面

evanlin.com

工作機會

Senior Backend Engineer at Swag

必備

  • In-depth knowledge of Python, NodeJS 
  • Experience with Python web frameworks ie. Flask/Django/Tornado 
  • Utilized work queues for background processing 
  • In-depth knowledge of MongoDB and Redis 
  • Excellent understanding of HTTP 
  • Experience developing REST APIs 
  • Designed for modular systems 
  • Cloud environment experience
  • Excellent communication and organizational skills

加分

  • Worked with Python asyncio
  • Experience developing in Go 
  • Event-driven architecture 
  • Experience working with cluster environments and/or containers. ie. Kubernetes, Docker 
  • Development flow utilizing CI/CD 
  • Experience working with distributed systems 
  • Experience working with real-time APIs 

薪資範圍

  • 年薪 100 萬新台幣以上。

github.com

Otaku is the New Sexy

TeePublic

上禮拜發現的一個專門賣 T-shirt 的網站,重點是上面賣的 T-shirt 都!超!宅!它甚至有一個叫做 Programmer 的分類,或是你也可以隨便拿幾個你喜歡的電影、遊戲或動漫畫作品的名字去搜尋看看,保證有驚喜。我看到的第一天就買了八件。推薦各位臭宅去感受一下。

@vinta 分享!

teepublic.com


This RSS feed is published on https://weekly.codetengu.com/. You can also subscribe via email.


Viewing all articles
Browse latest Browse all 109

Trending Articles



<script src="https://jsc.adskeeper.com/r/s/rssing.com.1596347.js" async> </script>