CodeTengu Weekly 會在 GMT+8 時區的每個禮拜一早上 10:00 出刊,每一期會從目前的 curator 名單中選出三位來負責當期的內容,每一位 curator 各自負責不同的領域,如果你在這一期沒有看到自已感興趣的東西,說不定下一期就會有了。
你也可以瀏覽一下前幾期的內容,有價值的東西是不會過時的。
以下是目前的 curator 陣容:
大家也可以 follow 一下 CodeTengu 的Facebook、Twitter 或GitHub,有很多 Weekly 看不到的內容。有任何建議或疑問也可以來Gitter 聊一聊,歡迎亂入 :japanese_goblin:
致力於解決開發者之間的資訊不對稱
作者每天會在這個 GitHub repo 更新一則關於 Python 的短文(用的是 IPython notebook!),主題從 metaclass、Enum(Python 3.4 以後才有)、context manager、generator 到 threading,值得一讀。
github.com
這個 wiki 網站滿有趣的,上面列舉了很多 Amazon Web Service 的 "Cloud Design Pattern",不過白話一點的說法其實就是 AWS 各種服務的 use case 和它們之間可以怎麼搭配,用來解決哪些問題。
clouddesignpattern.org
上禮拜心血來潮突然想玩一下 AWS Lambda 和 DynamoDB,也順便自動化一些CodeTengu 的例行事項,然後這篇文章和延伸閱讀的那一篇就是我在過程中做的筆記,雖然有點雜亂,不過應該還是對大家有點幫助的。但是其實 AWS 的官方文件寫得很完整,就是內容實在多了點,看完都過了八年馬英九都下台了。
AWS Lambda 毫無懸念地很容易上手,不過我沒有用最近很熱門的serverless(他包了太多東西了,我的需求沒那麼複雜),而是用了@tj 大神寫的apex,簡單好用,不愧是出自名家之手啊~
除此之外反倒是花了不少時間研究 DynamoDB 的 index 該怎麼下,有興趣的人可以看一下 Design Patterns using Amazon DynamoDB (也有影片),豁然開朗撥雲見日吶!
延伸閱讀:
vinta.ws
這篇文章專門在講 mysqldump
(用來備份 MySQL 資料庫的指令)那些五花八門的參數的用法。
這個簡報在講好的 commit messages 會有哪些要素,最棒的是他舉的例子都是從各大 open source project 挖來的 "Real World Examples"。
作者提到的好幾項都挺不錯的,其中我覺得最重要的可能就是「在 commit message 中提供 context(上下文)」,例如:
不過如果什麼都寫上去,正常人也是受不了,所以另外很重要的一點是要在 commit message 裡標記 issue number(票號,例如 Fixes #42
),因為當初在專案管理系統裡可能就有很多關於這個 issue 的討論或是更詳細的前因後果,這些對 code review 和將來的 debug 可都是很重要的資訊啊。不過,程式碼背後的 why 和簡報最後提到的 reference,我覺得除了寫在 commit message 裡之外,其實更適合寫在註解裡。
延伸閱讀:
speakerdeck.com
過度設計(over design)一直是個大問題,但是怎樣才叫簡單?
極致編程(XP)的大師 Kent Beck 提出一套準則:
當發生衝突的時候,以前面的準則為優先。
本文是 Martin Fowler 對這份準則的詮釋與討論。
另外還可以參考 DZone 上面的 The 4 rules of simple design 和微信上 WXCOP 无限靠谱的简单设计原则 。
martinfowler.com
簡單的一道題目,卻蘊含了 JavaScript 無數的坑,值得一讀。至少提醒自己不要寫出模稜兩可或是不確定語意的程式碼。
像我前兩天就踩到 JavaScript 的運算子優先順序的雷 —— <
竟然優先於 &
?!只能說我實在太天真了啊~ 還好不是用在 production 上的程式碼。
cnblogs.com
這是碼天狗策展群之一@kkdai 讀完 Facebook 的時間序列資料庫 Gorilla 論文後的心得摘要。
不但每週有專案產出、還有時間閱讀複雜的論文,kkdai 實在很猛啊!大家可以參考一下他的時間管理心得
如果各位對於讀 CS 領域的論文有興趣的話,也可以參考Papers We Love 這個社群。
evanlin.com碼農最討厭的事情之一就是無止境的莫名其妙會議來干擾自己的生產力。 這篇文章給了是否參加會議的判準,並提供一些建議的回應方式。
首先是評估你是否該參加該會議:
然後作出適當的回應:
習慣這套準則、清楚說明拒絕原因,讓同僚習慣這樣的做法,一起打造更有效率的工作環境吧!
hbr.org
本來不打算放 Instagram 推薦了。
但請各位容忍五月病發作的我貼篇讓自己心情愉快的內容。
這笑容多療癒啊~
instagram.com
High-order component 概念來自 funcitonal programming 的 high-order function ,是將一個 function 轉成另一個 function 的運算,同樣的 High-order component 能將一個 component 轉換為另一個 component ,可以減少重複的 code ,方便 compose ,在使用 React 實可用來取代 Mixin 的效果。
blogfoster.com
這篇文章大略的講解了容易讓開發者混淆的幾個部分,以及對撰寫 CSS 的建議:
mozilla.org
Node.js 改版速度飛快,日前又發佈了 v6 版本,號稱速度較目前的 LTS 版本 (v4) 提升四倍!且支援大部分 (93 %) 重要的ES6 新特性,在十月也會變為 LTS 版本,屆時就可以將 Product 換上了。
risingstack.com
Webpack HMR (Hot Module Replacement) 讓瀏覽器可以在程式碼被變動時自動更新當前畫面狀態,在開發時非常方便。本篇文章介紹 HMR 的運作原理和流程。
medium.com
影片探討 performance 有時候會造成安全性問題,影片一開始會透過 string compare performance 來介紹timing attack ,以及介紹透過 timing attack 來達成的攻擊。
opera.com