這是什麼?

程式週記主要內容如下:

Gihub project 介紹:

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

網路文章心得:

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

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

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

本週摘要

雖然第一天就把本週的專案(Golang Line Bot 建置在 Heroku) 寫好了,但是其他時間都在玩自然語言的引擎 Language Understanding Intelligent Service (LUIS) .也稍微想了一下到底需要 Bot 來做些什麼事情.

Go

HOWTO: CROSS-COMPILE A GO APP FOR WINDOWS FROM LINUX

原本 Go 要做 cross-compile 其實不難,但是如果在 Go 有使用到 C 的部分 ,可能就要參考一下這一篇文章.

Replicating SQLite using the Raft consensus protocol

將原先的 SQLite 透過 Raft Consensus 的演算法轉身一變成為具有etcd能力的 RDB.

找尋Golang Libs 的地方

分門別類可以找,根據你想找的類別來看看.

Convert pictures to ascii art use golang

將圖形轉換成ASCII,應該可以貼在 PTT? XD

Building the simplest Go static analysis tool

Line Bot 官方 Go SDK

蠻方便的,可以很輕易的傳送圖片跟訊息.不過寫法實在有一點像是 Java XDDD

http://dave.cheney.net/2016/04/27/dont-just-check-errors-handle-them-gracefully

DFC 認為除了只是簡單的檢查 error 之外,你更需要的應該是要根據 error 的不同好好的處理他,衍伸閱讀: Errors are values

A slides collection for Go Conference 2016 Spring

Announcing Apex Software Inc

大神 TJ Holowaychuk 離開 Node.JS 之後轉陣營到了 Go之後的創業作 - Apex 裡面也同時開源了不少的 Go 的套件.

Python

Android/JAVA/NODE.JS

Docker

iOS/Swift

網站文章

Bots won’t replace apps. Better apps will replace apps.

這裡有中文版 (Bot不会取代app,更好的app才会)

基本上作者就是覺得,不論 Bot 多麼的具有智慧,跟 Bot 對話就像是 以前時代的 DOS Console 一樣,需要不斷地下指令.但是 App 就像是後來出的 Windows 視窗介面 (GUI) .後者永遠不會被前者取代,但是如何讓使用者更容易與有效的使用你的服務才是重點.

網站收集

有聲書/影片心得

Linus Torvalds: The mind behind Linux

Linus Torvalds 改變了這個世界兩次: (1) 一次是撰寫了 linux kernel 並且將它開源 (2) 發明了原始碼版本控制系統 “git”

對於程式設計師而言,最有(品味) “taste” 的莫過於 Linus Torvalds ,這段影片不錯 . 一些摘要如下:

  1. Linus 認為他不是一個可以面對群眾的人 (People Person),他認為 Open Source 是一個很好面對大家的方式.因為大家討論的程式碼 (對他而言) 是非黑既白的絕對觀點. 並不像政治或是其他具有太多的模糊地帶.

  2. 關於程式碼品味部分,他有舉一個簡單的Linked-List 為範例.他認為當你的程式碼能夠將所有的狀況反覆思考後當成是一種 通用的條件 (generic case),你的程式碼就具有好的品味. 反之,太多的條件判斷(ex: if )來處理就不是一種好的品味.

  3. 對於 Linux 與 open source 的未來發展, Linus 認為他不是一個願景者 (visionary) .他是一個工程師,他執著於每一個目前存在於 Linux 的小 bug .他希望把每一個小細節都處理好.

Youtube: Fork the Government (g0v) by 唐鳳

唐鳳談他的成長過程與他參與 g0v 的過程.其中也有不少 g0v專案的介紹.

本週專案

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

本週專案: https://github.com/kkdai/linebotTemplate

透過一些教學來教導你如何在 Heroku 上面架設自己的 Line Bot . 裡面的 Golang 程式碼其實相當簡單,主要是測試使用. 但是主要部份是教導要如何 Deploy.


Evan

Attitude is everything