CodeTengu Weekly 會在 GMT+8 時區的每個禮拜一早上 10:00 出刊,每一期會從目前的 curator 名單中選出三位來負責當期的內容,每一位 curator 各自負責不同的領域,如果你在這一期沒有看到自已感興趣的東西,說不定下一期就會有了。
你也可以瀏覽一下前幾期的內容,有價值的東西是不會過時的。
以下是目前的 curator 陣容:
大家也可以 follow 一下 CodeTengu 的Facebook、Twitter 或GitHub,有很多 Weekly 看不到的內容。有任何建議或疑問也可以來Gitter 聊一聊,歡迎亂入 :japanese_goblin:
致力於解決開發者之間的資訊不對稱
Serverless Framework 透過AWS Lambda 跟API Gateway 的組合讓大家不需要再開機器來跑 backend。這是在 AWS Lambda 跟 API Gateway 推出之後就很多人在試的方式,現在有一套相對成熟的 framework 推出來,馬上獲得了大量的關注。
舉出一些特色: AWS Lambda 是 Event-driven 的資源,所以只有在你的 lambda 執行的時候才算錢、不需要去處理 scale 的事情、部署應用超容易。
Serverless framework 提供必要的框架來管理 AWS lambda 跟 API Gateway 讓開發的體驗更好,這個 framework 值得大家的關注。尤其是要從Parse 出走的人。
codeship.com
不曉得各位 iOS 的開發者都是怎樣處理 Localizable.strings UTF-16 編碼的 git diff 跟 merge 問題的?
上禮拜工作 merge 時一個不小心整包 Localizable.strings 被另一個衝突的 branch 蓋掉,才開始覺得這樣下去真的不行。 會有這樣的問題是因為 Git 預設不認 UTF-16 的編碼,會視為 binary file,然後 Apple 堅持 .strings 要用 UTF-16 編碼。所以在它身上 git diff, merge 就變得非常難用,也沒辦法在 GitHub 上面看 diff 實在很煩。
最後發現在 build settings 有兩個神奇的屬性, Set Convert Copied Files 跟 Set Strings file Output Encoding ,設好之後以後 Localizable.strings 用 UTF-8 就好勒,功能全解放!
imnotyourson.com
這是OCMokito 的作者寫的 Test Driven Development (TDD) 教學。超入門、初學等級,以 TDD 的方式來介紹寫 Testing 的流程。
有些人可能會覺得之前不是才在吵 TDD is dead. Long live testing. ,大過年的,不要起爭議啦。
但我覺得啦,說起 TDD:與其說是在寫測試,TDD 的重點反而是設計。而雖然我現在也沒在用 TDD 開發,但學 TDD 時得來的那些設計觀念到現在還是很受用。
qualitycoding.org
Reactive Programming 很適合拿來處理一些不可預測的狀態,這也就是為什麼都是 Frontend 在紅 Reactive Programming 了。Netflix 應該是少數在 backend 也實作 Reactive Programming 的吧?( Reactive Programming at Netflix )
扯遠啦,總之 UI 操作介面跟喜怒無常的網路狀態都是很適合讓 Reactive Programming 發揮優勢的場合,這篇文章針對這兩個主題提了例子跟解法。
medium.com
Android APK 瘦身的經驗談,最有效果的果然還是圖片的壓縮跟取捨,雖然有些還蠻極限操作的,但整體來說很實用!
我是寫程式打工的,而我寫程式的原則是:
「幹你娘 code 爆」
沒錯,就是幹你娘 code 爆,老子才不管甚麼設計輸出圖檔三小的,每次寫的 UI code 就是姬芭一大包。顏色效果用程式寫,動畫用程式寫。所有的元件建構式都要帶 style 屬性,跟把「所見即所得」這四個字當作沒聽過一樣。
我還記得,我刻第 25 個 UI 元件那時候,經理跑來跟我說,app 上有 26 個地方跟設計畫的不一樣,你有頭緒嗎?
我他媽的怎麼會知道。
jayfeng.com
美國已故總統甘乃迪的經典名言:
Ask not what your country can do for you; ask what you can do for your country.
這句話著實有點迷惑人,但其他大部份的政治演說都有既定的形式與詞彙,我們有辦法讓機器學習寫出政治演說,做成一個政治演說產生器嗎?本篇文章就是在討論這個問題,也分享了相關程式碼在GitHub 上,大家可以照著iPython Notebook 做做看,也許使用了這個程式,總統在備詢時就可以隨時照稿子念了吧!
technologyreview.com
本篇文章是@Erik Bernhardsson 一時無聊做的,首先使用Scrapy 從網路上抓取了約莫 5 萬個字形,最後再試圖跑 deep learning 讓機器學會創造新的字型,相關的程式碼作者也有分享出來,不過跑一次要幾週的時間,大家可以斟酌一下。
其實關於字型相關的 Machine Learning 應用,我最近有發現一個還蠻有趣的 Project - Recurrent Net Dreams Up Fake Chinese Characters in Vector Format with TensorFlow ,可以用機器來創造無意義的中文假字,想出這個計劃的人真的很天才(還是很無聊?)!
erikbern.com在上一講中我們了解了 Logistic Regression 演算法並了解了如何使用 Logistic Regression 來預測心臟病發病機率這樣的問題,這一講中將延伸之前學過的演算法,在理論上說明 Linear Regression 以及 Logistic Regression 都可以用來解 Binary Classification 的問題。學會了 Binary Classification 之後,我們也可以用這樣的技巧來解 Multi-Classification 的問題。
fukuball.com
WordPress 目前還是世界上最受歡迎的部落格平台,很多人習慣使用 WordPress 來發佈文章、管理內容或是照片等等,雖然許多程序員近幾年來積極推廣使用 Markdown 寫作平台,但真正的文字工作者還是離不開 WordPress。因此漸漸發展出了後台管理介面使用 WordPress ,但前台使用其他 Framework 如 Laravel 等來呈現,以方便程序員開發功能。
本篇文章就介紹了如何快速地建立後台 Wordpress 前台 Laravel 的架構,據說StreetVoice 也有一些網站是使用這樣的架構,只是前台採用的 Framework 是 Django。
laravel-news.com
最近前端相關工具的發展已經複雜到讓人覺得噁心的地步,常常會讓人懷念起以前用 jQuery 寫前端那種隨插即用的暢快感。
tooling 便是一個這樣工具,標題雖然寫「tooling 让你从 jQuery 中解脱出来」,但這標題只是個引子,tooling 想解決的問題就是要讓開發者可以回到那不用建構工具那種「顯得很方便」的開發方式。使用了 tooling 之後,不需要什麼複雜的設置,馬上就可以快速建構好 ES6、Webpack、Babel 6、React with JSX、Vue、PostCSS with PreCSS 等等前端開發環境,前端開發就是要這樣才對嘛!
github.io
你有跟設計師合作的經驗嗎?一定常常遇到規格標示不清、太多細節導致漏看,設計師標好標滿各種距離、顏色等等也是曠日費時。若是有一個好工具來解決這樣的溝通模式,肯定讓開發時間更能有效利用。
投影片版
patw.me
如果你做的是內容型網站,提供離線閱讀是個不錯的功能,還可以利用 cache 提升載入。upup.js 將 service worker API 包裝成讓你只要一行就可以輕鬆館理 offline resource,有需要的不妨試試。
註: iOS Safari 目前還不支援 service worker
talater.com
DevTools Author 利用 Google Chrome 的實驗功能,可以調整 Dev tool 的配色,讓你的開發工具不再一成不變!
mikeking.io