這是什麼?

程式週記主要內容如下:

Gihub project 介紹:

  • 主要會貼一些github,但是會盡量寫上一些有用的評語(或是我容易想到的關鍵詞)幫助以後查詢

網路文章心得:

  • 會寫些心得,強迫自己閱讀.

“程式週記”並且定期週期性更新.

大部分內容在我的twitter都會有,這邊只是將一些簡單的心得與感想註解一下.

本週摘要

本週適逢連假,本來想寫作者外出取材中.但是還是很拼命地完成相關的文章索引跟當週作業.下週就是我完成 Project 52 的最後一週,本週投稿 COSCUP 結果被接受.很期待跟大家分享做 Project52 的快樂與心酸啊 :)



Go

heroku/force: A command-line interface to force.com

Heroku 出的 force.com 的 CLI 工具,可以到這裡去看看詳細簡介.force.com 是由 salesforce.com 的 BaaS 服務.

Introducing Gimme: Dependency-less dependencies for Go

“Gimme” 提供了另外一種 Dependency Management 的一種思維.就是幫你需要的檔案直接複製到你的資料夾裡面.

Running Go on a Chromebook in Developer Mode (without installing Linux)

如何在 Chromebook 上面跑 Go 卻不需要安裝 Linux

SwimRing - A Minimal Distributed Fault-Tolerant Key-Value Store built with SWIM Gossip Protocol and Consistent Hash Ring

有時間可以看看裡面的部分,SWIM + Gossip 並且透過 Consistent Hashing .

鯰: Programmable fuzzy scheduler for testing distributed systems http://osrg.github.io/namazu

透過 Namazu (鯰) 可以幫助你測試分散式系統 (Zookeeper, YARN) 的一些問題,進而分析問題的主要原因.

這裡有更詳細的影片,可以看看: https://www.youtube.com/watch?v=mmSV4AhJUno

etcd over gossip: strongly-consistent semantics in a weakly-consistent world

這是一篇 CoreOS (他們最受歡迎的產品就是 etcd ) 在他們的研討會 FEST 2016 裡面的一個主題: “etcd over gossip: strongly-consistent semantics in a weakly-consistent world”

也就是架設在 Gossip Protocol 上面的 etcd . 並且底層是透過 Docker 的 weave net

這一篇裡面有將 etcd 裡面的 raft-example 做一些基本的講解,如果你對 Raft-Consensus 有一點瞭解,卻不知道該如何寫一個具有 Raft 能力的服務.可以參考一下這篇文章.

Service autodiscovery in Go with sleuth

這一篇講解透過 sleuth 來做 伺服器的 auto discovery



Python

Youtube: The Clean Architecture in Python

心得: BerkeleyX CS100.1x “Introduction to Big Data with Apache Spark”

主要都是使用 PySpark 很好的課程心得,雖然去年我也修過了

fukuball/FukuML-Tutorial

fukuball 有公布他的 Machine Learning 的套件,這個就是一個 python notebook 來講解如何使用該套件.



Android/JAVA/NODE.JS/Scala



Docker

docker/swarmkit: A toolkit for orchestrating distributed systems at any scale. It includes primitives for node discovery, raft-based consensus, task scheduling and more.

Docker 在 06/17 開源了這個專案, 主要用来提供容器集群以及编排能力.並且提供具有 raft-consensus 的集群系統. 這裡有更多的介紹文

iOS/Swift



其他程式語言

如何來 Debug Regex

Hound comments on style violations in pull requests

幫助你把 PR 先做一次 style check (lint) .



論文收集

[Static Deadlock Detection for Concurrent Go

by Global Session Graph Synthesis](http://www.doc.ic.ac.uk/~cn06/pub/2016/dingo/main.pdf)

論文作者有在 gophers.slack.com 裡面說明:

deadlock detector above it works only up to go1.5 (because go/ssa changed interfaces in go1.6)

Code: dingo-hunter

2016 年機器學習頂級論文下載 (Conference on Learning Theory)



網站文章

Design KKBOX app for UWP

在 Win10 的 UWP 架構下設計 KKBOX App 心得文章.主要都是講解 UI 一些物件的處理.

Should Engineers Really be Judged by Their Resume Writing Skills?

常常我們都會把履歷表弄的很炫很棒,但是卻讓很多非本科系的人看得霧煞煞;或是有的人能力很強,履歷表上面卻無法正常表現出它應有的能力與水準. 這篇文章採訪了 Martin Harriman 一個硬體工程師想轉職到軟體工程師,但是卻無法寫出一份良好的履歷表.

使用 Stripe Atlas 設立美國公司的心得與歷程分享

想要開美國公司可以看看這篇文章,作者花了兩個月透過 Stripe Atlas 在美國開設公司的經驗.

樓門五三桐:成長歷程小分享

作者本來想從事數學系的相關教學工作,卻轉行變成財務工程.並且講解一個很有趣的遊戲”價值卡”,建議大家可以看看.

How I learned extensively by a Hack-a-thon…!!

作者敘述他在 Hackathon 裡面學到的東西遠遠比一般工作還要多.對於 Hackathon 有興趣的人可以看看.

聊天机器人如何盈利?这里有七种可能的商业模式

講解最近很紅的 IM Bot 要如何獲利. T客邦有另外一篇類似的文章: 為什麼Facebook、LINE、Skype都在做聊天機器人?你該知道什麼是對話式電子商務時代了

立志成為物聯網中樞,亞馬遜 Echo 的開發秘辛

Echo 主要團隊都是從 Fire Phone 過來的,並且透過之前的經驗來打造全新的智慧家電體驗.

When Your Strength Becomes Weakness: Microsoft & Web 2.0, Google & Social, and now Apple & AI

講解著微軟與 Google 與 Apple 原本都從事自己專長的.但是因為時代的變遷,沒有跟上時代的腳步而將原本的優勢變成了自己的劣勢. Inside 已經有翻譯成中文

這邊另外有一篇探討 Yahoo 輝煌不再的文章

Serverless Reference Architectures with AWS Lambda

講解 AWS serverless (也就是俗稱的 Lambda ) 架構.這篇部落格很棒值得推薦.



網站收集



有聲書/影片心得

Netflix’s Data Pipeline with Steven Wu

講解為何 Netflix 的使用者資料處理流程 (data pipeline ) 要從本來自建的 control manager “Chukwa” 換到 Kafka .

裡面有不少有趣的討論,更多詳細都是來自於 Netflix 的這篇 blog



本週專案 —–

這邊會寫一些我的Project 52的成果.

https://github.com/kkdai/petl

主要就是開始學習 Pipe 與 Pipeline 在 Golang 中要如何一起實現,並且透過這個簡單的程式來做一些簡單的資料存取與處理(這裡用最簡單的文字大小寫變換).


Evan

Attitude is everything