May
7th,
2020
前言 大家好,我是 LINE Taiwan 的 Technology Evangelist - Evan Lin。 感謝 DSC (Google Developer Student Clubs) 的邀請,在 2020/05/07 線上給予同學們基本的課程。 內容將有 Golang 的基本介紹,並且透過打造一個簡單的 LINE Bot 來跟各位展示 Golang 的一些優點。 這次有來自於四間大學(中興大學,台北大學,臺北科技大學以及銘傳大學)的 DSC 社團同學 ,全程也開放網路直播,希望可以讓更多對於 LINE Bot 有興趣的初學者一個良好的教材。 Build LINE Bot with Go / 資深開發技術推廣工程師 Evan Lin 投影片 這一次分享的投影片,主軸分成三個: 為什麼我會學習 Golang ? 什麼是 Golang? 經過了十年在多媒體外商軟體公司的工作之後,為了學習新的 Web 程式語言進而嘗試了不少的程式語言之後,最後選擇了 Golang 來鑽研。並且為了深入的學習 Golang ,而啟動了 Project 52 來作為學習 Golang 的方式,也因此學習了不少的演算法與進階的資料格式的應用方式。 這裡也介紹了一些 Golang 的基本優點: Gofmt / goimport: 幫助你可以讓你的程式碼風格一致並且避免遺漏某一些需要使用的套件。 Go test: 幫助你快速準備好測試的方式,撰寫測試程式碼再也不困難。並且可以相當快速的做好效能調校的工作。 GoDoc:做文件一直是讓開發人員很困擾的事情,不是因為開發人員不願意寫。往往是輸出到文件需要有一些相關的轉換,或是需要許多額外的資料在程式碼之中。 使用 GoDoc 只要開發者的程式碼已經寫好了,就可以直接在網路上找到(舉例: https://pkg.go.dev/github.com/line/line-bot-sdk-go/linebot 就是直接將 https://github.com/line/line-bot-sdk-go/linebot 轉換成文件的網站。 GoRoutine:做 multiple routine programming 在許多語言其實都有一些困難跟繁瑣。除了多線程模型本身就需要有相當多需要注意的東西之外,要建置這樣的所需的程式碼其實也很複雜。使用 goroutine 相當的輕量,並且相當的容易。開發者可以把心力全部放在如何處理多線程的相關控制上。 如何學習 Golang : 由於這次主要的聽眾都還是大學的學生(部分還是大一的學生),所以許多的操作範例都是直接在 Golang Playground 來進行操作。可以省去許多程式初學者經常遇到的環境設置的問題。 Golang Playground 同時也建議初學者可以把出現問題的程式碼透過 Golang Playground 來,分享出來在各種社群媒體來詢問。這樣一來也容易察覺問題與解決問題。 同時也建議同學們可以透過 Golang Tour 來一步一步的學習相關的知識,每一頁都有程式碼可以使用,可以線上編輯與執行。也可以透過邊練習,邊了解的方式更快速能夠加深印象。 什麼是 LINE Bot ? 如何透過 Golang 快速打造出一個 LINE Bot ? 學習一個語言最好的方式就是馬上透過它來打造一個東西,不論是一個產品,一個服務甚至是一個小工具。 在這裡相當建議各位透過打造 LINE Bot 來作為學習 Golang 的方式。主要的理由如下: 打造 LINE Bot 不需要高深的美術觀念,對於一些 UI 美感有困難的人。學習 LINE Bot 不僅僅可以更快入手,並且可以讓開發者更專注在程式本身的功能上。 使用正確的平台與訊息發送方式, LINE Bot 的開發是不需要任何費用。 在影片中的範例,展示透過 Heroku 作為伺服器的平台。打造出來的 LINE Bot 因為僅僅是回覆使用者的問題,也不需要任何額外的費用產生。 LINE 是一個相當好的工具(或是服務)的發佈平台,如果開發者們開發出相當有用的工具,透過 LINE 可以快速的推薦給親朋好友。而且不需要類似上架 App 的繁瑣的審核過程,發布的流程也是相當的快速。 接下來開始講解如何快速打造一個 LINE Bot: 範例程式碼:...
繼續閱讀
April
27th,
2020
前提
Golang 協會日前公布了去年的開發者調查結果。
Go Developer Survey 2019 Results
tl;pr (Too Long, Please Read)
我知道這個調查很長,你一定不會讀。我來幫你每天挑一個重點給你喔。
“Developer tools”
今天來討(ㄧ ㄣ \/)論(ㄓ ㄢ \)關於開發者工具的部分。
“你都在哪裡開發 Go?”
第一名: VS Code (16% -> 41 %)
不得不說~現在的 VS Code 真的是相當好用的 IDE(之一),低資源需求加上許多好用的外掛。
第二名: GoLand (15% -> 34%)
近期發表許多好用的功能,完美的整合讓 Go 開發環境整個完美而容易使用。 JetBrains 的 GoLand 真的相當好用,有喜歡的記得授權買下去!
第三名: Vim (28% -> 14%)
身為最好用 IDE? 的 Vim (誰說是 IDE? 明明就是 OS?) 佔有率竟然慢慢的下滑。
可能因為其他工具的整合性越來越高,對於 console mode 的整合也變得很方便。
許多也都有提供 vim mode (咦?) 讓 vim 的佔有率慢慢減少。
你是用哪套 IDE 呢? 歡迎各位來討論喔!!
繼續閱讀
April
26th,
2020
(翻譯文章) LINE Flex Message Template
前提
本篇文章為翻譯文章,原文為 LINE Flex Message Template from LINE 泰國的 LAE (LINE API Expert) PamornT.
本文
LINE LINE Bot 朋友您好,根據 LINE Chat Bot的個人經驗,發現有一項重要任務是設計對用戶消息和非常流行的消息的回答 - 那就是透過 Flex Message 來發送回覆。
當嘗試與同時創建 LINE Chat Bot 的朋友交談時,他們也必須使用相同的 Flex,我們認為應該共享不同類型的 Flex Message 的樣板作為資源,以節省開發 LINE Chat Bot 的時間,提供開發人員使用和使用。
如果有人想分享 Flex Message,請在下面的鏈接中分享。原作者在這裡收集。謝謝參加的每個人都可以提供幫助。非常感謝你。
https://www.facebook.com/groups/LINEDEVTH/permalink/497494880914423/
請選擇您喜歡的一個,複製圖片下方的鏈接要點,以一起使用 ^^
車牌(泰國格式)
(CR。Pamorn Trivorrarat)
https://gist.github.com/…/440fb7788e8c501ad7115b7d7ed14a3b
收據
(CR。Pamorn Trivorrarat)
https://gist.github.com/…/40d8044af1fff88aac97dc74f85f5a4b
登機證
(CR.Siratee Kittiwitchaowakul)
https://gist.github.com/…/e9b33491edf45416cd124b8234051379
油價
(CR。Charoensin缺陷)
https://gist.github.com/…/0689bc210a2a8f5ccb3a352e70f72583
餐廳排隊卡
(CR.Siratee Kittiwitchaowakul)
https://gist.github.com/sirateek/f7ad9562bbdc500d87cfa27768e83292
追踪包裹運送狀態
(CR。Pamorn Trivorrarat)
https://gist.github.com/PamornT/086a249fad9b99a6d49db4b1b57ee116
足球比分表
(CR.Sitthi Thiammekha)
https://medium.com/linedevth/worldcup-flex-864fb27db1a2
圖表
(CR。Pamorn Trivorrarat)
https://gist.github.com/PamornT/7990f0d5431ac92a4b404323058bdc4e
附註:任何想要分享,添加,分享到此文章的人,非常感謝你。
https://www.facebook.com/groups/LINEDEVTH/permalink/497494880914423/
繼續閱讀
April
22nd,
2020
前提
Golang 協會日前公布了去年的開發者調查結果。
Go Developer Survey 2019 Results
tl;pr (Too Long, Please Read)
我知道這個調查很長,你一定不會讀。我來幫你每天挑一個重點給你喔。
“Pain points”
這邊調查,為什麼你不使用 Go 在你的專案裡面的原因。
這邊列出前三名,別且列一下 2016 調查報告跟 2019 的數字比對。
本來會以為是第一名的 Generic 結果並不是喔!!
第一名: 目前專案是其他程式語言( 58% -> 56%)
蠻合理的~ 換一個語言改寫整個上線的產品或是專案。不是你走~就是老闆叫你走。 XD
第二名: 我的團隊(老闆)(專案)喜歡其他程式語言 ( 45% -> 37%)
這個蠻有趣的,其實社群內經常聽到「老闆叫我不要用 Go 」「老闆喜歡其他語言」 這些都需要持續的導入。 wwww
不過數字變低是好事。
第三名: Go 缺少一些我需要的語言特性 ( 16% -> 25%)
終於到了大家比較有爭議的點,也就是是否 Go Generic 讓大家在開發上覺得困擾。
不過比例有增高,可能是開發了一段時間後真的有相關的需求。
歡迎各位來討論喔….
繼續閱讀
April
21st,
2020
前言 大家好,我是 LINE Taiwan 的 Tech Evangelist - Evan Lin。這次很開心受到 chatbot 社群的邀請,參加了 “Chatbot meetup 聊天機器人小小聚 18 @Online” 的聚會活動,並且分享 LINE API 更新與個人開發的心得。在此也跟各位分享本次參與的心得,並且也希望透過社群分享的力量能夠讓聊天機器人的開發動能更加的盛大。 社群 Chatbots Meetup: https://chatbots.kktix.cc/ 本次活動網頁: 活動網址 本次活動的共筆紀錄: https://hackmd.io/@chatbot-tw/meetups-018 由於 Chatbots Meetup 本身屬於社群自主性的活動,裡面也有許多社群朋友所贊助的閃電秀。裡面的所有內容也是相當的難得與有趣。也希望能夠透過本篇文章讓大家稍微了解 Chatbots Meetup 社群閃電秀的魅力。 由於防疫的要求,這次是在線上參與這次的聚會活動。很感謝每一位參與的朋友帶來的問題,希望透過線上以及錄影的方式可以讓更多的朋友可以了解。 LINE Platform Update 202004 / 資深開發技術推廣工程師 Evan Lin 投影片 在此幫大家更新一下,從三月到四月中的相關 LINE 平台技術更新。也希望透過這樣得更新與相關的範例整理能讓更多的開發者知道該如何應用這些新的 API 。 03/19 Domain name change of certain endpoint 即將在 2020/04/30 即將停用的 API Endpoint api.line.me ,並且之後會換到 ` api-data.line.me` 。主要影響到的功能如下: Get content Upload rich menu image Download rich menu image 相關的 SDK 其實在 2019 的 11 月已經更新完畢,請各位開發者務必要更新你們的 SDK 到最新的版本。 相關訊息: https://developers.line.biz/en/news/2020/03/19/remind-domain-name-change/ 03/25 line:// is deprecated LINE URL Scheme 是一個可以透過 URL 點擊去呼叫某些功能,比如說: 開啟 LINE App 個人資訊選單 Opening a LIFF app … 還有相當多功能歡迎參考。 由於安全考量, line:// 的 URL scheme 已經全部修改為 https:// 。請相關開發人員都要在原始碼修改好。 目前(2020 April) 尚未將 line:// 全面關閉,但是之後會有一天關閉相關的使用方式。 相關訊息: https://developers.line.biz/en/news/2020/03/25/line-url-scheme-deprecation/ 04/03 New LIFF API: liff.isApiAvailable() 這邊可以參考另外一篇文章的說明: 使用 liff.isApiAvailable() 來讓舊的版本 LINE App 可以跑新的 LIFF 功能 04/06 Channel access token 2.1 原先在 Channel Access Token 的功能上,如果要透過 Issue Channel...
繼續閱讀
April
15th,
2020
The Upstarts : How Uber, Airbnb, and the Killer Companies of the New Silicon Valley Are Changing the World
原文作者: Brad Stone
譯者: 李芳齡 出版社:天下文化
出版日期:2017/06/29
買書推薦網址:http://moo.im/a/gmnpuA
前言:
記得上一次我也看過一本跟 Uber 有關的書籍,叫做「橫衝直撞: Uber刷新市值、3年成長20倍,卻成為全球麻煩製造機背後的教訓(Wild Ride)」。裡面對於創辦人 - 卡蘭尼克有了許多的著墨,但是對於 Uber 在城市間如何快速發展的主因,還有如何在法律與計程車司機抗議浪潮中生存的方式有太多的敘述。
於是我選了這一本來看,除了想要了解 Uber 更多的細節外。希望也能了解 Airbnb 得成名過程。
內容簡介:
Uber與Airbnb,為何帶來創新,又製造不安?
兩個工餘計畫,是怎麼變成價值千億美元的戰略?
名下沒有一輛車、一間房,如何穩居市場第一?
全球首部Uber、Airbnb授權專訪傳記,給你最深入的第一手訪談與觀察。
法規跟不上時代,但你不能跟不上時代,
讀完這本書,你將以全新眼光檢視你的公司與工作
簡介來自讀墨:http://moo.im/a/gmnpuA
(上面來自於天下文化對於這一本書的介紹影片)
由於兩間公司雖然先後成立,但是當初成立的過程與面對的挑戰都相當的類似,所以作者很有趣的利用的三個階段來敘述了這兩間公司。
第一部 工餘計畫
Uber 創始人之一 - 卡蘭尼克是創業家,有過一次成功的創業經驗。但是在 Uber 成立之初他其實還有不少個新創的投資機會在手上。
Airbnb 只是三個創始人因為想要參加研討會而找房子,發現了這樣的商機而成立了這樣的公司。
一開始兩間公司創始人都是因為閒暇之餘的工餘計畫 (side project) 而起頭的。
第二部 建立王國
第二階段就是兩家公司重要的時候,就是因為時勢的原因。造就兩家公司的快速發展,並且透過這樣的契機而建立自己相關王國的過程。
Airbnb 遇到了總統大選,於是有了更多的短期租屋的需求。Airbnb 也在這個時候逐漸茁壯,力霸一方。但是也在這時候忽然被人發現, Airbnb 總市值已經超過了喜來登,凱悅等等知名的旅館企業,但是 Airbnb 並沒有自己的旅館,並沒有自己相關安全措施,於是受到很大的挑戰。
叫車軟體 Uber 在美國各地的發展也相當迅速,原因之一也是美國對於計程車牌照的發放太過嚴格並且需要許多的申請費用。 迅速的發展也讓 Uber 受到計程車業的抗議,美國各地都受到強大的反彈。
第三部 新創家的考驗
第三部份提到更有趣的部分,兩家新創公司用了哪一些方式來讓自己具有領先地位與競爭優勢呢?
Uber 運用了天眼系統,也就是會持續追蹤每一個司機的走向。透過這些方式來更有效的安排車輛,但是也受到了個人隱私的質疑與抗議。 而 Uber 公司比較積極而狂妄的競爭手法也有人說對於辦公室文化其實一些性別歧視的爭議。
而 Airbnb 也在創業過程中經常使用共享經濟,甚至是每一個房屋的分租人都是樂於分享的美好想法來包裝。但是對於真正發生租屋問題的時候,卻經常沒有幫那些分租人出來解決問題。
這些處理方式都相當有趣,很推薦好好看看。
心得:
這一本對於兩個打破人類思考的新創企業 - 「共享經濟」,也是對於法律的新挑戰。 Airbnb 代表的是共享房屋,但是卻帶來短期租屋與旅館業者的抗議。 Uber 代表的是共享車輛,但是也遇到各國計程車業者的抗議與質疑。
兩家公司受到各種法律的質疑,但是兩間公司因為創始人的個姓大不相同,回應方式也不同。
Airbnb 執行長 - 切斯基 生性浪漫,透過共享經濟的烏托邦夢想打造了一個社群。Uber 創始人之 - 卡蘭尼克 生性好鬥又聰明,透過了 Uber 的司機幫他們來在政治上面施壓。
兩家公司處理方式很不相同,但是都相當值得學習跟了解。
書的內容不少,敘事也都很細膩可以了解許多事情的來龍去脈,很值得推薦。
繼續閱讀