[好書分享] 唐鳳:我所看待的自由與未來

唐鳳:我所看待的自由與未來
作者: 丘美珍、鄭仲嵐  
出版社:親子天下 
出版日期:2020/11/04 

買書推薦網址:http://moo.im/a/1hsPQX

前言:

這一本是今年所讀完的第十本書。

會注意到這本書,好像是因為 Suiting Tseng 的 twitter 在問 Readmoo 能不能進這本電子書。結果一天就有了(驚!)。 也就忍不住手滑,買下去了。 一開始會好奇,這本書竟然是由「親子天下」這一個專門出版親子相關議題的書局所出版。後來讀了以後發現內容相當的吸引人,除了講出了一段精彩的資訊屆的歷史外(Perl6 相關的開發),也提到了太陽花學運與 g0v 的崛起。 相關的教育互動方面,更是發人深省,尤其是新手父母更是推薦要看。

內容簡介與心得:

「我的全部,都公開透明在這邊了;
我所看待的自由和未來,也將與各位一同分享。」
第一本經唐鳳認可,串連她的過去與現在,遠眺自由與未來的深刻之作。
 
揭開神人級公民黑客、台灣抗疫功臣,被日本媒體譽為「天才IT大臣」的背後思路;
理解她超越一切框架,主張從征服(conquer)到增幅(empower)的共好價值,
用無差別的愛與自由,邁向分享協作的「唐鳳Style」

Chapter1 三十五歲的數位政委 Chapter2 天才兒童 Chapter3 自學少年 Chapter4 導師與隊友 hapter5 跨越性別的人 Chapter6 民主社會的公民黑客 Chapter7 唐鳳的建言:對未來世界與科技的想像

書本的一開始,先從最近讓大家知道的唐鳳開始談起。口罩地圖的政府單位公家資料的串接,發起民間高手的共襄盛舉。短短的幾個禮拜,市場上就有了接近一百種口罩地圖的相關應用,(廣告一下: LINE Bot 也有超過 20 個)。 造就了一股全民黑客松的熱潮,讓每個開發者都熱血的加入並且打造出自己可以找口罩的地圖應用。

這件事情也讓日本注意到我們,我們有一個技術高手的數位政委。更有許多的傳聞討論到唐鳳高達 180 的智商,但是令人好奇的是,這樣的天才究竟是如何靠自學與教育來造成呢?

接下來的內容,圍繞著唐鳳成長的環境。有著高學歷並且注重著教育的父母,尊重的家庭讓從小思考與想法往往領先週遭人可以獲得完整的發揮。 國中之後,就沒有繼續就學的他,選擇自學透過強大的自學程式設計能力,經過建中電腦社中遇見的資訊界前輩們,讓他的學習變得更加的快速。在 Perl 社群中學習,也讓他的外語能力精進並且也透過領導的相關的套件開發與維護體會到黑客社群的經營與共同成長的方式。 也就是後來的公民黑客與 g0v 的崛起。

最後這本書也透過唐鳳的建言,描繪出他心中對於未來的想法。威廉.吉布森(William Gibson)的名言:「未來已經來了,只是沒有均勻擴散(The future is already here – it’s just not evenly distributed.)。」

心得:

這本書雖然出發點是孩童教育的出發點,但是對於資訊界的歷史其實也有蠻多著墨。裡面不管是提到了藝立協,還是關於 Perl6 的開發過程,甚至是後來的 g0v 的崛起。其實都有蠻多的著墨,也讓我趁機補了一下相關的資訊相關故事。

但是這本書真正讓我驚豔的,當然還是唐鳳家人對於他的管教方式。從他的家人可以看出,不僅他的天資夠好,也要有家人與師長的大力支持才能讓這樣一個有才能的小孩能夠依照自己的想法成長,不被世俗的教育體系與學習成績要求所捆綁著。就像是作者寫出的這句話:

「剛開始,我們以為要寫的是一個天才的傳奇,後來發現,我們寫的其實是一個平凡人的故事,是所有人在心裡,都曾經期待有的人生:能夠不受限地學習和探索,能夠被家人和朋友所愛,能夠做自己最愛的工作,能夠生活無虞,能夠做出對社會有益的貢獻。不同之處,在於唐鳳歷經嘗試,走了一條不尋常的路。」

蠻推薦大家好好看這本書的。

[研討會心得] 2020/10/24 新竹 x 梅竹黑客松決賽 - LINE 競賽組別活動紀錄

(照片來源: 梅竹黑客松官方粉絲團)

寫在前面:

大家好,我是 LINE Tech Evangelist - Evan Lin 。LINE 很重視員工們的自主創新與團隊合作,所以各地都會舉辦 LINE Internal Hackathon 。 並且在日前也舉辦了 在 LINE 台灣第二屆的內部黑客松競賽,而這次很開心跟新竹市政府與梅竹黑客松主辦單位一同支持學生們創新的 Hacking 精神,一起舉辦了 「新竹 x 梅竹黑客松」 LINE 的競賽組別。

在決賽前一週, LINE 的開發工程師也應邀出席了企業工作坊透過教導同學們 LIFF 與 LIFF Share Target Picker 來讓每一個參賽的同學能夠了解。 (詳情請看: 梅竹黑客松賽前企業工作坊 – LIFF shareTargetPicker )

活動擺攤

首先在活動擺攤上,當天 LINE Dev 也有參與擺攤並且歡迎大家來加入我們的官方粉絲團與官方帳號。也歡迎文章的讀者可以一起加入。

相關資訊

競賽說明

LIFF (LINE Frontend Framework) 是 LINE 為網頁應用 (Web Application)所開發應用套件。 透過 LIFF 除了可以快速做相關的 LINE Login 取得使用者資訊,更可以將有趣的資訊直接在網頁上分享給你 LINE 的好友。

本次的主題希望同學們能發揮想像力,透過 LIFF 來開發出一個令人為之讚嘆(WoW) 的應用服務。

更多 LIFF 的相關開發文件請參考: https://developers.line.biz/en/docs/liff/

(摘自文章, 可以看得出來透過 Share Target Picker 作出的應用可以比直接在 LINE 中傳訊息要快上兩倍左右。)

(LIFF Share Target Picker 可以做出很有趣的應用,圖為迷音圖修改器 Share Target Picker from 工作坊)

相關文章

決賽衝刺

(同學們都會把每次導師來詢問的時候,盡可能地詢問相關技術跟導師身上學習)

(看著同學們的大包小包,感受的出來兩天一夜的備戰心情)

這是一個維持兩天一夜的黑客松競賽,可以看到同學們的熱情。 一開始都可以看到同學們對於競賽題目,競賽項目與需要必備的企業組題目項目都有相關疑問。 經過導師們每一組的詢問與討論過後,可以感受到同學們都是有備而來。

中間也有遇到同學們在開發過程中遇到一些問題無法解決,導師們也都是現職的 LINE 台灣服務的開發工程師,導師們也都可以坐下來跟同學們一起討論,一起 tracing 相關的問題。

決賽報告

(照片來源: 梅竹黑客松官方粉絲團)

經過了一天與一夜的努力後,第二天下午就是每一組的展示與報告時間。筆者很開心能夠參與評審的評分之一。聽取的每一個同學們的簡報,可以感受到同學們兩天來的努力與創意的激盪。

由於本組是需要有實際成果的展示,所以有些組別由於設定問題無法完美地將成果展現出來,實屬可惜。但是 LINE 台灣對於服務的可落地性與使用者體驗相當的重視,在此次比賽中我們也希望能傳達相關的概念給同學們,讓同學們感受到身為通訊平台領導品牌的堅持。

接下來我們將分享前三名的作品如下:

前三名頒獎

(照片來源: 梅竹黑客松官方粉絲團, 頒獎人 Nijia Lin)

題目:

  • 4Fun

成員:

  • 交大資工系郭乃恩
  • 交大資工系褚又嘉
  • 交大資工系許哲瑋
  • 台大資工系沈郁鈞

該團隊透過 LINE 的 Share Target Picker 可以分享在 Twitter 上面看到有趣的訊息,你可以直接在 tweet 網址傳給他們的官方帳號,之後就會得到相關的 LIFF 頁面。 點取該頁面就可以開啟 Share Target Picker 來分享給你的好友。 好友看到的訊息也都透過 FLEX Message 來包裝過,整個就相當的精美與漂亮。

(照片來源: 梅竹黑客松官方粉絲團,頒獎人 Sing-Ming Chen)

題目:

  • Agent.J

成員:

  • 夏宇澄 清大資訊工程學系 大一
  • 劉昱辰 台大電機工程學系 大二
  • 賴怡臻 交大資訊管理與財務金融學系 大二
  • 施易劭 交大資訊管理與財務金融學系 大二
  • 陳瑋嘉 交大資訊管理與財務金融學系 大二

這個隊伍想要解決出去遊玩的時候,相簿往往難以搜尋。 並且因為去遊玩時候,有時候需要有人代墊款項或是分帳的需求。 所以他們打造出一個以地點資訊(地圖)為出發點,透過出去遊玩的地點來做出團體相簿。 並且結合 LINE Bot ,可以快速查找相簿,讓你尋找出遊資訊再也不需要每個群組的相簿一一翻找。

其中由於時間的限制,對於權限控管的部分也還沒有完整。 透過 LIFF 與 Share Target Picker 除了可以分享相簿之外,未來也能夠邀請一同編輯。

M

(照片來源: 梅竹黑客松官方粉絲團,頒獎人: Evan Lin)

題目:

  • 找外快?打開 LINE

成員:

  • 清大資工所吳易東
  • 清大資工所郭芝瑜
  • 清大資工所郭俊豪

學生們經常有空閑時間希望能夠打工賺一點外快,但是卻很難找到適合自己的外快嗎? 這個痛點造就這一組的題目,透過網頁登入後可以直接在後台刊登外快工作。 這一組很有創意的是,透過自然語言處理 (NLP) 的技術。 可以自動將外快工作自動找出相關的關鍵字,比如說:「 修電腦」,「家教」這一些關鍵字。 當找外快的同學登入網站後,就可以根據自己登記專長資料的關鍵字媒合。 如果自己也是希望找「家教」的工作,就會收到官方帳號的通知說,有適合你的工作。 透過 LIFF 與 Share Target Picker 則可以很快速的將外快推薦給自己的好朋友。讓好朋友也有外快的工作可以做。

活動總結

LIFF 簡單易學,加上透過高度分享功能的 Share Target Picker 希望能可透過本次的活動讓更多同學們更能夠瞭解相關的功能與應用。 兩天一夜的黑客松活動,充分展現同學們的熱情與源源不絕的創意。希望之後能有更多的機會來跟同學一起腦力激盪,來打造讓使用者驚艷 (WoW) 的產品服務。

立即加入「LINE開發者官方社群」官方帳號,就能收到第一手Meetup活動,或與開發者計畫有關的最新消息的推播通知。▼

「LINE開發者官方社群」官方帳號ID:@line_tw_dev

關於「LINE開發社群計畫」

LINE今年年初在台灣啟動「LINE開發社群計畫」,將長期投入人力與資源在台灣舉辦對內對外、線上線下的開發者社群聚會、徵才日、開發者大會等,已經舉辦30場以上的活動。歡迎讀者們能夠持續回來察看最新的狀況。詳情請看:

徵才訊息

《LINE 強力徵才中!》與我們一起 Close the Distance 串聯智慧新世界 » 詳細職缺訊息

[研討會心得] 2020/09/18 LINE Developer Meetup 13 (二)

前提

大家好,我是 LINE Taiwan DevRel 團隊的 Evan Lin。很開心在這裡跟各位分享本年度的第三場開發者小聚。 這也是疫情後第一次在新竹舉辦的線下聚會的活動。 也是 LINE 台灣工程團隊第一次來到交通大學舉辦線下的活動。

KKTIX 活動網頁: 活動網址

本次 LINE Developer Meetup 開發者小聚,首先有 LINE 台灣技術長 Marco Chen 帶來的 LINE 技術新星實習計畫的相關介紹,並且有 LINE 資料工程團隊的負責人 Shawn Tsai 帶來關於 ”How ML Powers LINE Services” 。

文章列表

LINE Shopping App with Flutter / LINE Client Team - Evan Fang

投影片

(LINE 購物 App 功能介紹)

接下來輪到講者來自於 LINE Taiwan client App 開發團隊的 Evan Fang 。 來分享如何透過 Flutter 來開發下載榜第一名的 「LINE 購物 App」。 首先主要提到 LINE Taiwan Client App 團隊主要有負責的產品有:

  • LINE TODAY 的 App (在印尼有上架)
  • LINE SDK 也就是大家看得到的開源套件:
    • https://github.com/line/line-sdk-android
    • https://github.com/line/line-sdk-ios-swift
  • 當然也有協助開發 LINE App 的一些功能。
  • 最新的也就是今天要介紹的「LINE 購物 App

關於 「LINE 購物」的介紹

LINE購物 與多家知名購物網站合作,匯集超過2,000萬件商品,只要在搜尋處輸入想找的商品,讓你一個網頁就能一次看各家購物網站的商品資訊和價格,讓你從此不用處處比!

透過 LINE購物 不僅僅可以一站找到你需要的商品,還可以獲得更多的回饋。

Flutter 打造 LINE 購物專屬 APP

為了提升更佳的使用者體驗,打造更精緻的服務介面,LINE 購物也決定在今年推出了專屬的 APP 。 但是希望能快速地到使用者的反饋,並且即時的改善更好的使用者體驗。 開發團隊選擇使用 Flutter 作為開發的程式架構,透過 Flutter 可以一次開發出 Android 與 iOS 的應用。 而選擇 Flutter 的理由如下:

效能考量:

以整合性設計框架而言,透過 Widget Rendering 可以讓 Flutter 直接在 Canvas 上面操作,具有類似於 Native App 的效能。

快速開發:

單一的 code base 來開發兩個平台的 App。在 UI 元件的開發上,很適合透過 Flutter 使用。可以確保 UI 設計的一制性,讓使用者有相同的使用體驗。

Flutter 支援 Hot reload 可以在 IDE 上面不需要編譯而即時看到變更的成果。

豐富的開發資源:

豐富的官方導覽教學,還有 Dart Devtool 與 pub.dev 開發資源可以參考。

最後成果

最後的成果也相當的亮眼,使用 Flutter 可以在三個月之內於 iOS 與 Android 平台上完成一制性的使用設計體驗。 並且獲得當月份的下載量第一名的肯定。

遇到的問題分享

當然在使用 Flutter 開源套件也會遇到一些問題,但是 LINE 開發團隊也有跟 Flutter 團隊回報並且溝通相關的問題。目的希望能讓套件更完善,也能讓產品更符合使用者期待。 以下條列式一些問題:

  • 問題: Flutter 在 Anroid 上無法變更鍵盤語言
    • 解法:
      • 使用 Hybrid composition 並且更新 Flutter 到 1.20.0 版本之後。
  • 問題: Hybrid composition 在某些狀況下會 crash app
    • 解法:
      • LINE 提供相關解法,也被套件團隊了解使用另一種解法來解決。
  • 問題: 讀取資料量大的頁面,經常跑記憶體不足的狀況。
    • 解法:
      • 修改讀取方式,僅顯示使用者看到的部分在 Viewport。 其他部分資源部採取預讀與使用過後釋放,讓資源更有效運用。

小結

講者也分享了,目前 Flutter 很適合開發在不複雜的頁面。具有較高的效能,快速迭代與開發的工具,還相當的容易學習。但是如果需要開發比較複雜的頁面時,需要有能力追蹤到底層套件的原始碼,發生問題的時候才能夠解決。

最後也希望大家一起來下載一下 LINE 購物 App 感受一下 Flutter 開發出來的效能吧!!

Serving Location-based data / LINE 熱點 - Julian Shen

投影片

接下來由 LINE SPOT開發團隊的 Julian Shen 帶來分享他在處理地理資料 (location-based data) 時候所遇到的一些問題與經驗分享。關於LINE SPOT 可以參考 Julian 在 TECHPULSE 2019 的會場有介紹過關於 LINE SPOT 服務介紹。更多的 LINE SPOT 服務介紹與 LINE SPOT 架構介紹可以參考這篇文章 「LINE TAIWAN TECHPULSE 2019 科技盛會精彩回顧」

這次主要介紹 LBS: Location-Based Serivice 的內容,關於 LBS 相關的遊戲或是服務我們經常可以看到,舉凡打卡,地圖,導航都會用到。那麼要尋找兩個點之間距離上,可以使用的技術也相當的多。

找出距離幾公里的景點

在處理上面經常是拿到 GPS 座標,或是直接拿到地址。 地址是可以方便人類來閱讀的,但是真正要電腦能夠處理的就是經緯度的座標位置。 如果要對某一個座標找尋出距離三公里距離的所有座標,那是不是需要把資料庫裡面的地點全部拿來計算呢? 這裡介紹了一種方式叫做 K-D Tree 。

K-D Tree 的方法就是將地圖平面透過二分法的方式來切割,將每兩個點找出距離後作為一個區塊。透過這樣的方式可以很快速地找出兩個最相近的距離點。

如何將搜尋結果作 Caching

如果有一群人同時開 LINE SPOT 需要尋找三公里內所有座標,那麼有方式可以快速的暫存起來資料,並且快速的回覆使用者的需求嗎? 這時候可以考量使用 Hashing 的方式來將經緯度數值直接轉換成一串文字,透過這個方式可以快速找到上一次搜尋的結果。如果沒有搜尋過才去跑 K-D Tree 的搜尋,這樣一來就可以在不經過複雜的運算就可以快速的回覆使用者。

這個方式雖然可以快速地知道有沒有搜尋過,但是有一些問題如下:

  • 由於採取 zig zag travesal 的方式來 hashing ,可能不同的經緯到有相當相似的結果。
  • 可能相當的接近,由於在邊界上可能造成 geohashing 結果不同。

其他的方式

Google 也有提出 S2 Cell ID 的方式來區分地理資訊。而 Uber 也有提出 H3 的方式,透過六角形的方塊來切分整個地理資訊。也因為使用六角形,才能更精確地將地球球形的地理狀況表現出來。

「LINE 熱點」美食推薦

別再說新竹市美食沙漠, LINE 熱點也是有精選「十家新竹在地美食店家」。 也希望同學們了解地理資訊的處理經驗分享後。也都可以來 LINE 熱點來分享你的新竹美食地圖。

活動小結

立即加入「LINE開發者官方社群」官方帳號,就能收到第一手Meetup活動,或與開發者計畫有關的最新消息的推播通知。▼

「LINE開發者官方社群」官方帳號ID:@line_tw_dev

關於「LINE開發社群計畫」

LINE今年年初在台灣啟動「LINE開發社群計畫」,將長期投入人力與資源在台灣舉辦對內對外、線上線下的開發者社群聚會、徵才日、開發者大會等,已經舉辦30場以上的活動。歡迎讀者們能夠持續回來察看最新的狀況。詳情請看:

[好書分享] 刻意練習:原創者全面解析,比天賦更關鍵的學習法(Peak : Secrets from the New Science of Expertise)

刻意練習
原創者全面解析,比天賦更關鍵的學習法
Peak : Secrets from the New Science of Expertise
作者: 安德斯‧艾瑞克森、羅伯特‧普爾  原文作者: Robert Pool、Anders Ericsson  譯者: 陳繪茹  出版社:方智出版

買書推薦網址:http://moo.im/a/5dvIOY

前言:

這一本是今年所讀完的第九本書。 經常聽到人家說「一萬小時法則」,還有 Kobe 與 Leborn 就算擁有著令人羨慕的天賦,依舊在聯盟裡持續不斷的鍛鍊。來維持自己高效能的表現。

那是不是只要一直花時間就好呢? 事實上可能不是如此。你需要將練習的精力花在正確的地方,那麼這本書就是在探討該如何練習才能到達巔峰,該如何有效地「刻意練習」。

內容簡介與心得:

找到天賦,不如找對方法!
天才與庸才之間的差別不在基因、不在天分,在「刻意練習」!

原創者親授,首度完整揭露「刻意練習」的科學實證與應用。
帶你揮別道聽塗說的不完整資訊,
正確學會這足以讓你精通所有技能的全新學習法,
顛覆你長久以來對潛能、對天賦、對智商的觀念!
  1. 第1章 有目標的練習
  2. 第2章 駕馭大腦與身體的適應力
  3. 第3章 心智表徵
  4. 第4章 刻意練習的黃金法則
  5. 第5章 在工作上運用刻意練習原則
  6. 第6章 在日常生活中運用刻意練習原則
  7. 第7章 邁向非凡的路線圖
  8. 第8章 如何解釋「天賦」這回事?
  9. 第9章 用刻意練習打造全新的世界

一萬小時定律是指作家格拉德威爾在《異類》一書中指出:“人們眼中的天才之所以卓越非凡,並非天資超人一等,而是付出了持續不斷的努力。1萬小時的錘煉是任何人從平凡變成超凡的必要條件”。要成為某個領域的專家,需要10000小時,按比例計算就是:如果每天工作八個小時,一周工作五天,那麼成為一個領域的專家至少需要五年。

本書持續圍繞著「為何需要有目標的“刻意練習”」,「該如何有目標的練習」,「探討是否天才就不需要練習」。

首先前幾個章節在探討“刻意練習”的細節與重要性,“刻意練習”代表的不僅僅是不間斷得持續練習,而且是根據目前狀況來改善與增進某些項目的練習。 比如說練習打籃球,如果沒有「刻意練習」,你可能只是給自己定下每天需要打籃球三十分鐘的練習目標,但是「刻意練習」就會針對目前的缺點(比如說運球,比如說籃下對抗的項目來訂定訓練的項目,專注的訓練。

到了第四章,就是在探討除了體能上的“刻意訓練”外,如果要練習心靈層面的鍛鍊(舉凡:棋藝,牌技)也能夠套用“刻意練習”嗎? 第四章用了記憶訓練的項目來舉例。 透過世界記憶冠軍的鍛鍊過程來闡明心靈層面就像是肌肉組織一樣,需要持續不斷鍛鍊。並且需要透過不同的鍛鍊方式來持續地讓練習效果的增進。

到了五六章則是跟讀者們敘述,就算是不需要成為世界頂尖的運動家,競賽選手。“刻意練習”可以讓你在日常生活中獲得更高效的結果,也能讓生命中的時間更有價值。

難道真的沒有所謂的天才嗎? 是不是只有天才才能夠到達巔峰造極的境界呢? 最後幾個章節則是分析了許多頂尖的選手,分析他們儘管有著令人羨慕的天賦,但是真正讓他們偉大的往往是進入職業生涯後得持續“刻意訓練”。

心得:

持續的鍛鍊是一個我常在講的議題,我也持續在鍛鍊自己的身體。但是看了這本書之後,我才驚覺到原來除了持續的段練外,我更需要“刻意的練習”來讓身體鍛鍊更有系統與更有效果。

這本書的鍛鍊方式讓我覺得收益良多,講解了許多教學與自我學習上應該要有的正確心態。應該需要透過訂定有效的目標,持續的改善與前進來讓每一次的練習變得更有效果。 想要讓你的人生更豐富,學會更多有趣的技能嗎?來看看這本書吧。

[研討會心得] LINE Shopping App with Flutter: 使用 Flutter 來打造 LINE 購物的手機雙平台應用

寫在前面

大家好,我是 LINE Taiwan DevRel 團隊的 Evan Lin。很開心在這裡跟各位分享本年度的第三場開發者小聚中,由 LINE Client Team - Evan Fang 所帶來的分享 - 「 LINE Shopping App with Flutter 」。

KKTIX 活動網頁: 活動網址

活動全文網址: TBD

投影片

演講影片

什麼是 「LINE 購物 App」?

(LINE 購物 App 功能介紹)

講者分享如何透過 Flutter 來開發下載榜第一名的 「LINE 購物 App」。 首先主要提到 LINE Taiwan Client App 團隊主要有負責的產品有:

  • LINE TODAY 的 App (在印尼有上架)
  • LINE SDK 也就是大家看得到的開源套件:
    • https://github.com/line/line-sdk-android
    • https://github.com/line/line-sdk-ios-swift
  • 當然也有協助開發 LINE App 的一些功能。
  • 最新的也就是今天要介紹的「LINE 購物 App

關於 「LINE 購物」的介紹

LINE購物 與多家知名購物網站合作,匯集超過2,000萬件商品,只要在搜尋處輸入想找的商品,讓你一個網頁就能一次看各家購物網站的商品資訊和價格,讓你從此不用處處比!透過 LINE購物 不僅僅可以一站找到你需要的商品,還可以獲得更多的回饋。

Flutter 打造 LINE 購物專屬 APP

為了提升更佳的使用者體驗,打造更精緻的服務介面,LINE 購物也決定在今年推出了專屬的 APP 。 但是希望能快速地到使用者的反饋,並且即時的改善更好的使用者體驗。 開發團隊選擇使用 Flutter 作為開發的程式架構,透過 Flutter 可以一次開發出 Android 與 iOS 的應用。 而選擇 Flutter 的理由如下:

效能考量:

以整合性設計框架而言,透過 Widget Rendering 可以讓 Flutter 直接在 Canvas 上面操作,具有類似於 Native App 的效能。

快速開發:

單一的 code base 來開發兩個平台的 App。在 UI 元件的開發上,很適合透過 Flutter 使用。可以確保 UI 設計的一致性,讓使用者有相同的使用體驗。

Flutter 支援 Hot reload 可以在 IDE 上面只重新編譯更新的部分,能夠快速的看到變更的成果。

豐富的開發資源:

豐富的官方導覽教學,還有 Dart Devtool 與 pub.dev 開發資源可以參考。

最後成果

最後的成果也相當的亮眼,使用 Flutter 可以在三個月之內於 iOS 與 Android 平台上完成一致性的使用設計體驗。 並且獲得當月份的下載量第一名的肯定。

遇到的問題分享

當然在使用 Flutter 開源套件也會遇到一些問題,但是 LINE 開發團隊也有跟 Flutter 團隊回報並且溝通相關的問題。目的希望能讓套件更完善,也能讓產品更符合使用者期待。 以下條列式一些問題:

  • 問題: Flutter 在 Android 上無法變更鍵盤語言
    • 解法:
      • 使用 Hybrid composition 並且更新 Flutter 到 1.22 版本之後。
  • 問題: Hybrid composition 在某些狀況下會 crash app
    • 解法:
      • LINE 提供相關解法與完整複製流程,並與 Flutter 團隊共同解決。
  • 問題:在可以上下滑動的頁面呈現大量UI元件時,滑動時經常有記憶體不足的問題。
    • 解法:
      • 修改讀取方式,僅使用者看到的部分(Viewport)會使用記憶體。釋放不在 Viewport 的UI元件資源。

小結

講者也分享了,目前 Flutter 很適合開發在不複雜的頁面。具有較高的效能,快速迭代與開發的工具,還相當的容易學習。但是如果需要開發比較複雜的頁面時,需要有能力追蹤到底層套件的原始碼,發生問題的時候才能夠解決。

最後也希望大家一起來下載一下 LINE 購物 App 感受一下 Flutter 開發出來的效能吧!!

[好書分享] 找到你的為什麼: 尋找最值得你燃燒自己、點亮別人熱情的行動計畫 (FIND YOUR WHY : A Practical Guide for Discovering Purpose for You and Your Team)

找到你的為什麼
作者: 賽門.西奈克、大衛.米德、彼得.道克  
原文作者: Simon Sinek、David Mead、Peter Docker  

買書推薦網址:http://moo.im/a/7ertCS

前言:

這一本是今年所讀完的第八本書。

賽門.西奈克曾經在一段影片中提出「黃金圈激勵理論」,裡面提到驅使人類去行動的三個圓圈。外層是做什麼的「WHAT」,中間而是如何做的「HOW],而在中心點就是最重要的「WHY」。

這一本書就是再將這段影片的內容加以詳述的一本書,也是我推薦給每一個想要激勵別人的人都該看的一本書。

內容簡介與心得:

Thinkers50全球管理思想家第18名、新世代領導大師西奈克10年前首創黃金圈激勵理論,
他的TED同名演講盤踞最受歡迎前三名,吸引近四千萬人觀看。
《先問,為什麼?》全球銷售破百萬冊,持續高踞亞馬遜分類榜TOP 1。

愈來愈多讀者開始問:「我跟我的團隊該怎麼做,才能找到為什麼?」
西奈克與團隊在全球各領域累積10年顧問經驗,將「為什麼」理論發展為完整的行動計畫,
適用於每個人、每個團隊,幫助大家踏上為什麼的旅程,發揮最大潛能!
「人們不會買你做了什麼,人們會付錢去買你為什麼而做它」 
                                             by Simon Sinek

「你是否曾經跟一個陌生人介紹過你的工作,你是如何敘述你的工作內容?」 這本書的一開頭,作者用了自己的一個例子,來講解工作熱情的重要性。他試著再坐飛機的路途上,跟著鄰座的人來敘述他的工作。如果是你,你會如何敘述自己的工作? 一開始你可能先說明你的工作,再來你可能會跟他人分享著你日常的工作內容。 這樣的會談相當的令人乏味,但是如果你試著分享著自己做工作時候的心情與想法,為何想要做這份工作? 與這份工作帶來給你的意義,慢慢的你就會找到你工作上的「WHY』,你會覺得興奮,感到熱情萬分,你會認為你做了一個世界上最好的工作。

這本書透過「為何需要找為什麼?」「你如何找到你的為什麼?」再來慢慢的帶領你如何幫助你與你的團隊來找到你們的為什麼。書本的後半部分偏重於整個「團隊探索營」該如何舉辦,如何開始,如何能讓團隊的探索引導到正確的方向。進而你們就能找出團隊的強項,讓團隊們來追尋共同信仰的價值,追尋你們的夢想(也就是你們的 WHY )。

心得:

整本書很像是該十八分鐘影片放大版,但是因爲重點圍繞在如何帶領團隊一同探索。所以很多「團隊探索營」的細節。但是整本書的理念相當的正確,也很適合做 Developer Relations 的人來好好看看。 因為許多人不了解開發者關係,不懂開發者關係,所以無法了解工作每一個環節所帶來的意義。 總是認為 DevRel 在辦活動,去演講,跟開發者打好關係。 這些都沒有錯,但是就像是由 What -> How -> Why 去敘述一樣,無法讓人打動人心。 雖然這是團隊探索的方式,卻不是一個跟他人分享的方式。真正的方式應該由 Why -> How -> What 來敘述著每一份工作。這樣才能讓許多人了解日常工作細節的重要性。

舉個例子,如果要做 Internal Evangelism 。 那麼應該是要透過分享與激勵他人的成長來讓內部同仁的自我成長(Why),所以我們鼓勵同仁們去分享。 讓同仁們了解分享所帶來愉悅的心情與成長的喜悅(How),進而讓他們自我成長。 所以我們舉辦內部讀書會,廣設工作坊甚至是舉辦外部活動來讓同仁去外部演講,去官方部落格來撰寫文章 (What) 。

由 Why -> How -> What 來了解他人工作,就會變得相當的合理與精確。許多時候的辛勤工作也都能被體會。 也建議每一個讀者來看看這本書,一起找到你們生命中的 Why 。