[研討會心得] 20190628 Chatbots 10 at 天瓏書局 Coding Space

前言 大家好,我是 LINE Taiwan 的 Technical Evangelist - Evan Lin。這次很開心受到 chatbot 社群的邀請,參加了 “Chatb10ts meetup 聊天機器人小小聚 10 @ 天瓏書局 Coding Space” 的聚會活動,並且分享 LINE API 更新與個人開發的心得。在此也跟各位分享本次參與的心得,並且也希望透過社群分享的力量能夠讓聊天機器人的開發動能更加的盛大。 社群 Chatbots Meetup: https://chatbots.kktix.cc/ 本次活動網頁: 活動網址 由於 Chatbots Meetup 本身屬於社群自主性的活動,裡面也有許多社群朋友所贊助的閃電秀。裡面的所有內容也是相當的難得與有趣。也希望能夠透過本篇文章讓大家稍微了解 Chatbots Meetup 社群閃電秀的魅力。 Write image proxy server for LINE Bot in Go / 資深開發技術推廣工程師 Evan Lin 投影片 首先先跟所有的來賓分享新的 LINE Login API 更新 並且也分享透過更新後的 API 所撰寫的範例網站 https://login-tester-evan.herokuapp.com/ 。 透過新的兩個變更,可以讓開發者能夠更有彈性的來開發 LINE Login 的相關應用。 在此列出相關細節: 1. ui_locales: 技術細節: https://developers.line.biz/en/docs/line-login/web/integrate-line-login/#spy-making-an-authorization-request Parameter: ui_locales Type: String Required: Optional Description: Display language for LINE Login screens. Specify as one or more RFC 5646 (BCP 47) language tags, separated by spaces, in order of preference. Corresponds to the ui_locales parameter defined in the “Authentication Request” section of OpenID Connect Core 1.0. 懶人包: 透過輸入 ui_locales 可以變更 LINE Login 顯示語言,比如說 ja-JP: 日文 ko-KR: 韓文 zh-CN: 中文 th-TH: 泰文 2. amr: 技術細節: https://developers.line.biz/en/docs/line-login/web/integrate-line-login/#spy-getting-an-access-token Property: amr Type: Array of strings Description: List of authentication methods used by the...
繼續閱讀

[LINE][Golang] LINE Login v2.1 new parameter and properties 2019/06/26

前言: 今天剛剛出了新的參數,就馬上加到我的開源套件裡面,歡迎大家玩玩看。 https://login-tester-evan.herokuapp.com/ 裡面有六個 LINE Login 範例,其中包含 Open ID 方式與透過 Socal API 拿取 User Profile 的方式。 並且加上了新的參數 amr 與 ui_locales 讓你可以設定語言。 如何使用: 連線到 https://login-tester-evan.herokuapp.com/ 選擇要登入的方式 如果選擇 OpenID 方式到最後 LINE Login 完成後會出現, amr 相關資訊。 (範例 1) 如果選擇不同的 Locales 則會修改 LINE Login 相關的語言。 (JP, TW) (範例 2) 相關程式碼,請參考 https://github.com/kkdai/line-social-sdk-go https://github.com/kkdai/line-login-go 範例 1: amr: 技術細節: https://developers.line.biz/en/docs/line-login/web/integrate-line-login/#spy-getting-an-access-token Property: amr Type: Array of strings Description: List of authentication methods used by the user. Contains one or more of: pwd:Log in with email and password lineautologin:LINE automatic login (including through LINE SDK) lineqr: Log in with QR code linesso:Log in with single sign-on 懶人包:** 如果透過 JWT 來 decode payload 的話,可以看得到使用者透過哪些方式來做 LINE Login ,比如說 pwd: 密碼登入 lineautologin: LINE 自動登入 … linesso:Log in with single sign-on 範例 2: ui_locales: 技術細節: https://developers.line.biz/en/docs/line-login/web/integrate-line-login/#spy-making-an-authorization-request Parameter: ui_locales Type: String Required: Optional Description: Display language for LINE Login screens. Specify as one or more RFC 5646 (BCP 47) language tags, separated by spaces,...
繼續閱讀

[研討會心得] GopherConSG 2019 (1)

前提 偷個懶來看一下 GopherConSG 2019 ,順便了解幾個有趣的議題。 這邊分別提到了在 IDE 裡面,處理 autocomplete 的 gocode ,另一個議題則是由資安的角度,如何讓你的服務能夠更加的安全。 Go, pls stop breaking my editor - GopherCon SG 2019 Youtube 看到很多人之前問的關於 gocode 的問題… 都表示 “Gocode 壞很久”,好像說 1.10 之後 Gocode 常常不會動。其實真的有些問題,而且分了不同 repo 1.10 nsf/gocode –> mdempsky/gocode 1.11 (support go modules) mdempsky/gocode–> stamblerre/gocode 回頭查 vscode-go https://github.com/microsoft/vscode-go/blob/9655d527548b286fee424983378560ce83adf8a2/src/goInstallTools.ts 預設使用 mdempsky/gocode 這個 session 就是 go team 認為他們應該花心思來維護一個讓每個編輯器都可以使用的 language server 於是這就是 gopls (Go Language Server, pronounce “go please”) 的由來 更多詳情可以看看影片 Refer: https://github.com/mdempsky/gocode Going Secure with Go - GopherCon SG 2019 Youtube 講者從五個面向 ,來談談如何讓 Golang App 更有安全考量。 Data: 選擇好密碼的隨機法則 確認 Kubernetes Secret 的安全性,其中講者也提到 Kubernetes secret 其實會存在 /proc/<PID>/environ ,其實相對不安全的。請愛用 HashiCorp 的 Vault Code: 需要常常做弱點掃描 gosec 一定要用。 Dependency: 確認你使用的套件是跟上相關的修正,確認套件是否有任何安全性修復。 很多時候,很多時候,小修正往往是修復安全性問題。 Container: 使用 Multi-stage build 來確保不會有任何安全疑慮 Policy (這邊指的是網路) ,要設定好並且有正確的考量。 整個 session 前顯易懂,並且有許多相關代碼的討論,很適合閱讀。
繼續閱讀

[研討會心得] 2019/05/31 LINE 台灣 Warm-up meetup 活動後分享

前提 大家好,我是 LINE Taiwan 的 Technical Evangelist - Evan Lin。身為數位科技時代的各位,家庭中有經常多達十幾款不同的家電,而每個廠商都有自己的App。如果要能夠完全使用這些家電的功能的話,必須安裝至少十多個 App,其中有些廠商甚至推出兩個以上不同功能導向的 App, 這讓許多使用者感到相當困擾,而為了解決這種 App 過多的問題,LINE Things 應運而生! 就在五月中的時候,LINE Things 自動通訊功能 隨著最新版的 LINE (9.6) 的更新也開放給所有人。也讓開發者透過 LINE Things 能夠達到的事情也更多了。本活動特別請到日本團隊 LINE Things Leader - Takaku Hiroo 來到台灣與特地邀請的 maker 社群的開發代表們介紹新功能架構之外,也會透過簡單的範例帶領大家的來建置一個 LINE Things 的範例。最後也會開放社群開發者們提問與各種交流討論。 KKTIX 活動網頁: 活動網址 LINE Developer Meetup 開發者小聚系列活動將邀請 LINE 台灣工程師、開發者工具平台,定期分享內部開發技術,並安排優秀案例分享開發經驗,持續促進 LINE 技術平台開發與交流,歡迎對 LINE 技術平台有興趣的開發者參加。 Introduction LINE Things architecture and how it works / LINE Things Leader - Takaku Hiroo / LINE - Hazel Shen 投影片 首先一開始由來自日本的工程團隊代表 Takaku Hiroo 帶來對於 LINE Things 的架構解釋,並且跟開發者們解釋為什麼開發者們需要使用 LINE Things 。 ( 透過 LINE Things 開發的優點,圖片來自: 中文 Engineering Blog : 結合 LINE Things DIY一個智慧門鎖吧 ! ) LINE Things 主要希望原本必須透過 iOS 與 Android 設計用來控制藍牙設備的 App 的一些廠商,透過 LINE Things 的使用可以達到「一份 code ,兩個平台」,也就是只要撰寫一次 LIFF 上面的藍牙控制相關程式碼,就可以讓使用者不論是透過 iOS 與 Android 的 LINE App 都可以達到只有 App 才能做到的事情。 由於發佈的方式也改成 LINE Chatbot 的方式,不僅能接觸到的使用者將會更多,也能夠更快速的更新軟體的版本。以往如果要開發一套新的設備,就必須要更新開發者的 App ,而且還得一次更新兩個版本。透過 LINE Things 就不需要那麼困擾,對於開發成本能夠降低之外,版本更新與部署的速度也會大大的提升。 ( LINE Thing 自動通訊功能系統架構圖,圖片來自: LINE Things 自動通訊功能已上線與使用介紹) 而五月初隨著 LINE App 9.6 更新所上線的新功能 「自動通訊功能」 (Automatic Communication) 更是一個方便的功能,使用者再也不需要持續打開著 LIFF 的視窗就可以收到來自...
繼續閱讀

[好書分享] 先問,為什麼?顛覆慣性思考的黃金圈理論,啟動你的感召領導力

(圖片參考 讀墨 ) 先問,為什麼?: 顛覆慣性思考的黃金圈理論,啟動你的感召領導力 Start with Why : How Great Leaders Inspire Everyone to Take Action 作者:賽門.西奈克 原文作者:Simon Sinek 譯者:姜雪影 出版社:天下雜誌出版 出版日期:2018/05/23 語言:繁體中文 ISBN: 9789863983347 買書推薦網址: http://moo.im/a/6cenrE 前言: 不論是身為開發技術推廣的人,或是跟一些同事在討論相關開發者推廣的活動。很多時候,許多同仁可能不能了解為何需要有那麼多的開發者社群活動? 為什麼需要一個月忙碌好幾個晚上留下來跟不論是內部的開發者,或是外部的開發者來舉辦社群聚會? 經常在各種會議上被問到類似的問題,但是我都會很願意回答這些問題。 因為要讓你的夥伴能夠真正的瞭解你的想法法,「為什麼要做這些」?而不是冷冰冰的,做這些所能帶來的效果是哪些? 所能帶來的認知度有多少? 能讓多少工程師更容易被招募? (當然~這些都是事後要被評量的 (笑) ) 所以買下這本數位版本的書籍,好好的閱讀。除了希望能夠更有決心的鼓舞其他夥伴之外,也希望讓自己的更了解該如何用「為什麼」來說服其他人。 內容簡介: 吸引人心、點燃熱情的黃金圈是甚麼?怎麼練習? 黃金圈是三層同心圓,由外到內分別是做什麼、怎麼做,與為什麼。這個架構看似簡單,卻與人腦如何處理資訊與情感的結構完全一致。最核心的「為什麼」,最能撼動人心,產生強大連結,但也正是語言最難清楚表達的部分。 身為開發者關係與技術推廣的工作,很多時候除了要將技術理念傳遞給對方(不論是外部開發者,或是內部開發者),都是需要透過點燃熱情的黃金圈理論。 對外需要將技術的本質,也就是該技術「為什麼」需要的原因清楚的解釋之外。對內則是需要跟同事們解釋為何需要做這些活動。 這本書一開始透過探究沒有講解「為什麼」的世界,來讓讀者感受到。當一件事情失去了原本的「意義」與「使命」的時候,很多時候就會讓事情難以推動。 接下來也透過幾個成功的企業,分享者當初創立者的「使命」。一個企業的「使命」也就是這個企業賴以為生的「為什麼」。不論那個使命造就了為什麼消費者會選擇他們,而不選擇其他的競爭對手。 裡面有提到西南航空著名的以客為尊,就是因為當初的創造者希望能夠打造一個以客為尊讓乘客可以很輕鬆以他可以負擔的價格來搭乘,這就是西南航空的「為什麼」。 當然很多人會說西南航空會贏是因為他是便宜的航空,他有簡單的定價策略。但是其他那些都是「做什麼 (What) 」 而不是他們的原因。了解了西南航空的企業價值之後,完全就能夠認同他為什麼會有那些特價促銷與一些服務的準則了。 這就是「為什麼」的重要。 心得: 記得曾經看過類似的文章,敘述著關於工作態度的問題。 文章的全文大概是 有一位哲學家到一個建築工地分別問三個正在砌築的工人說: 「你在幹什麼?」第一個工人頭也不抬地說:「我在砌磚。」 第二個工人抬了抬頭說:「我在砌一堵牆。」 第三個工人熱情洋溢、滿懷憧憬地說:「我在建一座教堂!」 第三個人顯然相當有熱情,因為他對於工作的使命相當的清楚,也就是他對於「為什麼」要做這份工作相當的認同。 這裡也分享給找不到工作目標與使命的夥伴們,你需要找到你的工作裡面最重要的「為什麼」。
繼續閱讀

[好書分享] 臺灣史上最有梗的臺灣史

(圖片參考 讀墨 ) 臺灣史上最有梗的臺灣史 作者:黃震南 插畫:壯兔 出版社:究竟出版 出版日期:2016/08/01 語言:繁體中文 ISBN: 9789861372242 《臺灣史上最有梗的臺灣史》電子書 - 臺灣這塊土地上,曾發生過數不清的鳥事蠢事搞笑事傷心事正經事,想更了解臺灣、更珍惜我們所居住的地方,不如就從本書開始,一起對臺灣史動真感情吧! 買書推薦網址: http://moo.im/a/6eilCT 前言: 當初會買這本書,是因為好像是某一次讀墨的推薦文章裡面有摘錄一篇文章。透過 ptt 鄉民的口語來敘述台灣的歷史,相當的有趣。 在看的過程中由於輕鬆的口吻,很快的就會把整本書當成休閒的書籍來看完。 很推薦喔 內容簡介: 當真一槍在手希望無窮,只要龍五的手上有槍誰都動不了他[14]。而這些軍警大多來自中國的貧窮省分,對於現代化的臺灣鬧出頗多土包子笑話,例如有人目睹軍官搶了小孩的腳踏車,但因為不會騎只好扛著走,小孩就跟在身邊哭鬧,軍官一急跳上腳踏車硬要逃脫,結果一頭栽進水溝。士兵沒見過自來水,於是買了水龍頭釘在牆上,以為這樣就有水喝(那是哆啦A夢的道具好嗎)。 這段文字節錄於這本書的某一個段落,就可以看得出來作者除了相當認真的做歷史書籍之外,也希望透過 ptt 上面時下人們喜愛的口語來敘述台灣的歷史。 這本書敘述台灣歷史相當的早,從第一批的台灣著名(大概是原始人的時代)。慢慢地到了荷蘭人經營台灣的歷史。 除了有敘述相關背景之外,也有相當多有趣的歷史。比如說鄭芝龍曾經是海盜,荷蘭人其實建造了不少的制度與硬體設施。 許多的故事都讓讀者感覺新奇跟引人入勝。 隨著時代的經過,這本書也會到了清朝開始有了鄭成功的故事。也有了許多相關的故事。甚至連清朝為何會來經營台灣都有稍微敘述到。 最後到了國民黨退守台灣的故事也有提到,讓人難過的故事有提到但是儘量地輕描淡寫。有興趣的人作者都有列出相當多的相關文獻跟資料,可以讓讀者去查詢更多的資訊。 心得: 想要邊讀 Joke 版面邊學歷史嗎? 這本書很適合推薦給讀者。在輕鬆的過程中就可以把台灣的歷史整個走過一次,也有許多 ptt 有趣的梗。就等各位去慢慢發現了。
繼續閱讀