[好書分享] 原本以為跑步的人都是笨蛋 - 走る奴なんて馬鹿だと思ってた

原本以為跑步的人都是笨蛋 - 走る奴なんて馬鹿だと思ってた
作者: 松久淳  
譯者: 邱香凝  
出版社:遠流出版 
出版日期:2022/11/01

買書推薦網址:

前言:

這一本是今年所讀完的第一本書。平常都有空會帶小孩子去誠品書局看書,往往一看就是一個下午。小孩子會拿著各種的故事書來看,大人們有時候看看雜誌跟月刊,有時候會看一些放在桌面上推薦的書籍。 這一本就是今天帶小孩去誠品看書得時候,我看到桌面上推薦的一本書及,感覺整個蠻有趣的。 也因為日本人的書文字都偏少,書籍也偏薄。所以一下就看完了。

心得

講解作者本來是一個肥仔,根據他寫的,是一個跑一百公尺都會氣喘吁吁的中年人。但是因為被診斷出有「自主神經失調」的症狀,想要透過戶外運動來減緩相關的症狀,就開始選定了跑步作為運動的習慣。

整本書主要由一個阿宅作為出發點來講跑步,裡面穿插著說看著美女跑的特別快阿, 跑步應該要向勇者鬥惡龍一樣鍛鍊等等。的有趣的梗。

不過雖然整本書沒有提到相關跑步的技巧(真的沒有! 不論是配速技巧,該如何鍛鍊都沒有)。反而整本書提到他因為跑步常常有受傷,扭到腳,甚至是膝蓋不舒服的狀況。 甚至到了後期,還有跑步的戒斷症狀(笑死)。 但是整本書也真的能講解出跑步對於人正向改變,是可以讓一個宅男經過鍛煉變成可以完賽全馬(註解: 42 公里的長跑)的人。 這真的是相當有愛的一本書啊。

內容簡介:

從最初光是跑個100公尺就喘到差點往生的夜行性病弱文青作家,
一路進化到路跑成癮,不跑就會出現戒斷症的跑者體質,
最終達成4小時03分全馬完賽的大叔揮汗甘苦談。

這並不是一本教你跑出最佳成績的路跑運動書,
而是一位中年男子每次開跑後,與自我心靈的爆笑碎碎念對談。

.「跑步,會瘦。別人花上一整本減肥書在講的事,我一句話就說完了。」
.「只要跟在漂亮女生的身後面跑,就能跑出好成績。」

跑步、受傷、跑步、受傷、依舊繼續跑……

人為什麼要跑?跑步到底有什麼意義?
一本邊笑邊喘的路跑散文就此誕生!

※注意※ 本書幾乎沒有任何關於跑步的實用建議!


-彩虹大橋RUN-
開跑後才發現窄小的人行步道一邊是汽車疾馳的高速道路,另一邊則是跌下去就葬身大海的東京灣。

-日本皇居RUN-
期待邂逅常在新聞採訪看到的路跑正妹們,結果只遇到跟自己年紀差不多的中年大叔。

-正宗哥吉拉RUN-
考察哥吉拉第二型態的幼體「蒲田君」登陸肆虐路線後,完成聖地巡禮路跑。

-跟兒子一起RUN-
兒子瞬間就跑出視線之外,再次見到他時,他正靠在目黑通上的橋欄上跟朋友聊LINE……

-橫濱馬拉松RUN-
看到站在起跑點的女星剛力彩芽興奮到想大聲呼喊,跑近一看原來是橫濱女市長。

-金澤馬拉松RUN-
邊跑邊思考著供水站讓人伸手補充的鹽堆,八成混入了不少跑者手中汗水的鹽分吧……

「我才不會用馬拉松來比喻人生呢!絕對不會!」

[年度總結] 2022 年度總結

image-20230101175749656

image-20230101175808353

image-20230101180645474

Image

Image

好像該寫點回顧:

  1. 今年總體之後,運動上有一些退步。單純因為偷懶舉多,這件事情不太好,需要馬上改進。
    1. 2021: 7643 mins
    2. 2022: 6693 mins
  2. 書籍的閱讀上,可能因為買了 BOOX 這一本屬於比較開放的系統(也比較快)。 閱讀的時間有變多一點。
    1. 2021: 15本書
    2. 2022: 24本書(有一本還在寫心得)
  3. 部落格撰寫上:
    1. 2021: 56 篇文章
    2. 2022: 只有 53 篇文章
  4. 投資的部分,應該也不用多說。 2022 就是大家一起虧損的一年,主要還是在學習中成長。(看我的書籍大多跟投資有關也是。)
  5. 令人開心的是疫情總算鬆綁,也在聖誕節後迎來第一次國外旅遊。 希望可以把國外旅遊次數衝到一年三次左右。
  6. Github 828 (2021: 1074) commits 。
  7. 好像總體數據都跟我買了 PS5 跟 SteamDeck 有關? 這些應該要好好檢討改進。 :p
  8. 最後的最後,今年的身體還算可以。 常常發作在冬季的胃食道逆流,好像也沒有了(因為一直吃?)

最後,祝福大家 2023 一樣健健康康的。 然後趕快出國去想玩的地方吧!

[好書分享] 生態系競爭策略-重新定義價值結構,在轉型中辨識正確的賽局,掌握策略工具,贏得先機 (書摘)

生態系競爭策略 - 重新定義價值結構,在轉型中辨識正確的賽局,掌握策略工具,贏得先機
Winning the Right Game: How to Disrupt, Defend, and Deliver in a Changing World
作者: 隆.艾德納  
原文作者: Ron Adner  
譯者: 黃庭敏  
出版社:天下雜誌出版 

買書推薦網址:

前言:

這一本是今年所讀完的第二十四本書。這一本書本來是收到一本實體書。但是我因為出國沒有辦法拿到實體書來讀。自己又是一個喜歡讀電子書的人,所以我也買了電子書的版本下來。 並且大部分的章節都是透過電子書的朗誦的方式來閱讀,真的是蠻有趣的一本書。

在前面也先說明,這一本的遠景相當的大。從生態系轉移的流程,到生態系的建立,甚至是如何防禦與獲得勝利都講得很清楚。 但是身為從業人員的讀者們,可能會不完全同意裡面的一些方法論。 但是裡面所舉的案例倒是真的讓我補充了許多不了解的事物。

心得

這一本將整個生態系的競爭策略拆解的很像是課本一樣,從生態系的構成,生態系的組成元素與生態系的成長方式,以及如何在生態系中獲勝的方式寫得很清楚。 裡面有許多舉例的案例,讓我重新對於許多事情有了更多的了解:

  • 柯達的贏錯市場策略。
  • Lexmark 的積極轉型策略。
  • Spotify, TomTom 與 Wayfaire 相關策略。

以上兩個跟生態系的改變有關,但是如果是因為強大的競爭對手來的時候該怎麼辦? 作者也有提出相關的案例來分享。 到了下半部作者提倡微軟的納德拉作為範例與轉變的例子。 因為納德拉組織了外部的生態系,並且透過內部整合資源。(這也是最難的)。

很多時候,許多組織會提倡「熱情」,但是熱情不是指導方針。信任與了解公司策略是一個讓所有人遵循的一句,更是可以在內部生態系結合變化與轉變的方法。

(心得待續)

內容簡介:

在產業轉型的過程中,贏錯賽局,比競爭失敗更快被淘汰!
《恆久卓越的修煉》管理大師柯林斯盛讚:21世紀最重要的策略思想家之一
《MIT史隆管理評論》重磅新著

2012年,柯達宣布破產,從備受推崇的全球影像龍頭企業,變為錯過數位轉型的經典失敗案例。
真是如此嗎?其實,真正摧毀柯達的,不是錯失了數位轉型的機會,而是它完全無視於生態系統改變帶來的徹底顛覆!
產業崩解、生態系重組,是現在所有企業面對的挑戰!

當機會與威脅都不再依循傳統產業界限,
誰是夥伴?誰會變成潛在勁敵?該如何競爭?

長春藤名校達特茅斯塔克商學院的策略學教授艾德納,長期研究企業創新等領域,獲獎讚譽無數,更是全球知名的企業生態系策略大師,他在這本新作中清楚說明生態系統與傳統產業不同的概念與創造價值的方式,打破過去對價值鏈、供應鏈、資源與能力分析,並且提出要在生態系競爭中成功必備的新策略思維。 

第一章 贏錯賽局,等於失敗

企業不斷地因為一些新的產品的發明,而帶動新的產業轉型。 但是 1975 就發明數位相機專利的柯達,卻在後來破產了。 新聞裡面我們都會以為是他們因為公司老舊而沒有跟著轉型,進而被數位相機淘汰了。 但是真正的故事,往往不是如此。 柯達的失敗,不是在錯失了機會,卻是因為他們贏錯了賽局。

柯達從 1980 來開始打造數位影像的領域,並且透過收購 ofoto.com (一個網路相簿的網站),來讓自己的「數位列印」領域變得更加的龐大。 2005 年柯達在美國的數位相機還是銷售第一個狀況,他們也知道底片已經是黃昏市場,他們也開始看到列印耗材,並且透過數位相片的列印來打造自己的生態環境。

英國廣播BBC 「 2018 年世界上最貴十種液體,排名第八,輸給蠍毒,胰島素跟香奈兒 No5 就是黑色印表機的墨水」

透過相片列印市場的擴張, 2007 年柯達甚至在美國各地有九萬台的數位相片沖印機。接下來透過價值主張,價值結構的變化與相關市場的變化來說明柯達失敗的主因。

價值主張,價值結構與活動

image-20230101173455169

  • 商業模式: 你的客戶如何付錢給你。

  • 價值結構: 你如何建立價值,為什麼你的客戶願意付錢給你。

由於科技轉換帶動的價值結構的變動

image-20230101173326274

所以柯達並沒有「輸」在數位轉型,反而大獲全勝。那麼他為什麼會失敗呢? 就是因為贏錯了賽局。 2007 年第一代 iPhone 發售之後,大部分的人都透過手機來拍照與並且在「網路上直接分享照片」。 從那之後,透過數位列印相片的需求被又一次的消滅掉。

相反案例: Lexmark 的積極轉變

Lexmark 可能現在的人都不知道,之前他跟 EPSON 是有競爭印表機市場的。 但是隨著印表機的市場也隨著資訊變成手機上之後,全部的產業開始萎縮。 Lexmark 積極轉型成數位文件與數位文件流程的公司。 並且透過收購 Perceptive Software 等等 14 家關於文件處理的公司,來鞏固自己在數位文件處理的市場。

第二章 生態系的防禦:協力合作

這一章節討論的生態系的防禦,指的不是因為大環境(或是新產品)的產生而改變的世界。而是有一個強大的敵人要來你的生態系統中,你應該要如何防禦:

Wayfaire 與 Amazon 在家具市場上的競爭

Wayfaire 本來是做傢俱與相關商品的照片陳列與銷售的中間商(也就是網路商城)。 2014 年之後,透過家具倉庫的增加,讓許多商家可以把他們的傢俱放在倉庫中來節省開銷,並切更快速的出貨。 這個時候, Wayfiare 就像是傢具業者中最大的網路商城,直到 2017 年 Amazon 也決定加入家具市場的電商服務。

知道有了 Amazon 的加入挑戰後, Wayfaire 並沒有選擇擴張他的戰場,反而是更加專注自己的相關市場 - 傢俱銷售的行業。他透過傢俱市場的獨特性:絕大多數顧客不知道自己要買什麼?或是說客戶不知道自己的空間可以買什麼? 而 Wayfaire 就是打造一個相關的技術領域 - 只要拍一張照片的 2D 照片,他可以幫你把照片變成 3D 建模放進場景之中給客戶了解。 透過這些方式,來讓客戶自己發現他們需要的商品。

這絕對不是跟 Amazon 去競爭,而是要防禦自己的領域,鞏固自己最好的生態系。

TomTom 對上 Googe Map 在圖資上的變通

TomTom 原本跟 Germin 都是地圖圖資上領先的公司,但是從 iPhone 3G 上市之後(又是 iPhone) 。 Google 也在 Android 2.0 的系統公佈得時候,開放了 Google Map 在手機 OS 上的服務。原本 Google 也是使用 TomTom 的子公司 Tele Atlas 的圖資,但是卻在之後開始從事自己圖資的建立。並且 Google Map 有著 API 的開放,讓整個地圖服務變成每一家軟體廠商都可以加入的案例,

這時候 TomTom 該如何應對呢? 對於 TomTom 來說,他們的利基就是一個成為客戶資訊的忠實提供商。不會拿去做廣告之用,這樣安全的圖資變成了客戶相信的重點。反過頭來,也或許是甘於第二的主要因素?

Spotify 與 Apple Music

Spotify 原本就是專注在串流音樂的廠商,但是 2015 年 Apple Music 在 iOS 8.4 登場之後。 Apple Music 花了六個月就有六百萬的全球付費使用者,這是 Spotify 花了四年才達到的成果。

他們有點類似 TomTom 與 Google Map ,對於超巨大的競爭對手。他們的競爭點勁在於「我們不是巨頭,我們是大家的朋友。」雖然他們曾經因為做了「表演者實驗」的方案(讓個人創作者繞過唱片公司直接上架音樂),但是這個隨後馬上就取消了。

第三章 生態系的進攻:從增加競爭到改變競爭

這邊提到了生態系的建立方式:

  • 建立「最低可行生態系統」 MVE (Minimum Viable ecosystem)
  • 遵循階段性擴張的路徑
  • 部署生態系的傳遞

或許這樣講有點難懂,作者還用了一些例子來說明他的生態系建立系統。

Amazon Alexa 的案例來舉例生態系:

  • Alexa 階段一 建立生態環境:透過便宜又具有智慧的藍芽喇叭,讓許多人一起來購買。
  • Alexa 階段二 階段性擴張:開放給每一廠商都可以加入 Alexa 的人工智慧溝通能力的應用 – Alexa Skill 。
  • Alexa 階段三 生態系的傳遞:人工智慧更加進化,每一個智慧家電可以直接使用 Alexa 。不在需要購買 Amazon Echo ,你只要跟他們合作,即便你是冷氣廠商,你也可以使用相關的功能。

ASSA Abloy 的案例了舉例生態系:

ASSA Abloy 是一個傳統的門鎖廠商,他們的生態系擴張方式如下:

  • ASSA Abloy 階段一 建立生態環境: 有著大量的門鎖系統,並且隨著產品演進也有著大量的數位門鎖系統。透過 CLIQ 的雲端們損系統。
  • ASSA Abloy 階段二 階段性擴張: 透過數位門鎖開始連接每一個門,讓門鎖本身跟著雲端連接起來。
  • ASSA Abloy 階段三 生態系的傳遞:鑰匙不在是一個鐵片,可以是你的手機,甚至是任合一個可以代表你的物品。 也讓著個「身份認證」變成他們的下一個生態系。(身份識別)

這邊提出的生態,沒有那麼順利。這邊說明一下:

  • 2004 Hi-O: 統一的規格,讓大家得遵循門鎖的制定規格。但是卻限縮了門鎖廠商的自主性與客製化的空間,讓其他廠商都不願意加入。 image-20230102002425188
  • **Aperio **: 而 Aperio 並沒有統一門鎖的規格(孔數,大小等等),僅在於提供整個門鎖溝通的基本架構。

後來 **Aperio ** 的機制讓其他廠商都願意加入, ASSA Abloy 的門鎖的生態系才這樣擴張起來。

第四章 顛覆生態系的時機:太早可能比太晚更糟糕

這邊有另外一個有趣的案例,飛利浦在 1986 年制定了 HDTV 的規格後,比起其他系統的整合還早了 20 年。更甚者當時的錄影設備都還沒有到達高畫質的設備。所以這一個計畫也導致公司公司陷入 25億美元的損失。

image-20230102203616157

這邊有將生態系對於新價值主張的準備程度分成了四個象限,分別是:

  • 市場顛覆: 噴墨行印表機跟點陣印表機
  • 穩健共存: Cloud Computing 跟 桌面運算
  • 復原力假象: MP3 跟 CD
  • 擴展現狀: 屬於未來的替代。

第五章 本位系統的陷阱

生態系是一個不同的賽局,生態系的領導者跟追隨者完成價值創造拼圖的不同部分。在成功的生態系中,沒有贏家和輸家,只有以不同方式受益的合作夥伴。

在電子病歷的這個案例上面,是一個案例很適合來講解本位系統的陷阱。 醫療科技巨頭 Cerner (後來已經在 2022/06 被 Oracle 收購了) 與 Epic 原本在推廣共用的醫療病歷系統,但是隨著美國耗費 270億美元的 (2009 經濟和臨床健康之健康資訊科技法) 讓醫院們有了相關補貼的動力來參與相關的合作關係。

第六章 領導生態系的思維:協調與執行

在新興生態系中建立領導地位,必須優先保護他人的價值創造。有些領導者的能力和身份,與最大化自己的組織價值連接在一起,對他們了說,新興生態系是具有挑戰性的環境,這種尚未協調的背景有賴精心打造並鞏固聯盟。

微軟的相關策略變化:

  • 包爾默:
    • 透過 Windows -> Cloud -> Set Top Box -> Entertainment Center
  • 納德拉:
    • 開發其他平台的 Office –> iOS office on Salesforce 。 (原本 MSFT 跟 Salesforce 在 CRM 軟體是對手)。
    • 當然有包爾默的 MVE 準備平台 (Azure 與 Office 365 ),但是納德拉部署生態系的環境,讓他發揮真正的 Office 生態系。

內部生態系的變化與轉變

每當一個新計畫需要跨部門相互作用得時候,就需要管理內部生態系的轉變。 在微軟的案例中, Azure 跟 Office 是兩個體系的部門負責的,卻因為有新執行的上任讓兩個組織的人願意合作一起來轉變相關的生態系。

第七章 讓所有人都清楚公司策略

在穩定的環境,公司可以把預算當作策略的拐杖,追蹤當前業務在當前路線上的發展。但在瞬息萬變的環境下,談論預算是一種貧乏和使策略品質惡化的溝通語言,他的層次遠遠低於你所要的問題層次。

熱情或許是一種方式,但是熱情不是指導方針。信任與了解公司策略是一個讓所有人遵循的一句,更是可以在內部生態系結合變化與轉變的方法。

[學習文件] LINE Bot 群組聊天摘要生成器

image-20221230150344227

前言:

大家好,我是 LINE 台灣的資深技術推廣工程師的 Evan Lin 。前一段時間, OpenAI 將他們知名的 GPTv3 的 NLP Model 開放出來給大家使用,並且提供一個好用的介面 ChatGPT 。 在全世界受到相當多的注意,也看到有相當多社群的開發者有分享相關的開發案例。

但是其實 ChatGPT 不是直接串接到聊天機器人就好,或許他也可以幫助我們解決許多以前的痛點。 以下這篇文章將分享如何透過 ChatGPT 來打造出一個專門在群組間幫你做摘要的聊天機器人。

解決的問題痛點

大家是否都有類似的問題? 常常加入一個群組內,有太多的訊息在裡面跑來跑去,一回頭來看,發現已經有太多未讀的訊息在裡面了。 常常需要進去後,慢慢地追每一個訊息來避免自己錯過太多 (FOMO) ?

筆者因為工作的關係,有許多群組也有相當多的訊息。以前常常思考到如何透過 NLP 或是 AI 的方式來幫助自己來整理相關內容的摘要。但是一直沒有比較好的成果。 但是從 ChatGPT 橫空出世後,這個部分的功能似乎可以實現了,我們來試試看。

如何使用 ChatGPT 幫你總結群組聊天訊息

  • 到一個聊天群組,按下複製將你需要的訊息複製起來。
  • 將他貼到 ChatGPT 並且加上 幫我總結 即可。
幫我用繁體中文總結

```
[Evan Lin]: 我肚子餓了 . 2022-12-29 13:04:01
[Evan Lin]: 想去吃午餐 . 2022-12-29 13:04:05
[Nijia Lin]: 不知道吃什麼好 . 2022-12-29 13:04:08
[Nijia Lin]: 大家想吃什麼勒? . 2022-12-29 13:04:13
[Evan Lin]: 我去買麥當勞 . 2022-12-29 13:04:18
```

ChatGPT 總結成果

image-20221230154217442

如何打造自己的群組總結聊天機器人

原始碼:

https://github.com/kkdai/LINE-Bot-ChatSummarizer

獲取 LINE Bot API 開發者帳戶

  • 如果你想使用 LINE Bot,請確保在 https://developers.line.biz/console/ 註冊 LINE 開發者控制台的帳號。
  • 在「基本設定」選項卡上創建新的消息通道並獲取「Channel Secret」。
  • 在「Messiging API」選項卡上獲取「Channel Access Token」。
  • 從「基本設定」選項卡中打開 LINE OA 管理器,然後轉到 OA 管理器的回復設定。在那裡啟用「webhook」。

獲取 OpenAI API Token

  • 在 https://openai.com/api/ 註冊帳戶。
  • 一旦你有了帳戶,就可以在帳戶設定頁面找到你的 API Token。
  • 如果你想在開發中使用 OpenAI API,你可以在 API 文檔頁面中找到更多信息和說明。

請注意,OpenAI API 只面向滿足某些條件的用戶開放。你可以在 API 文檔頁面中找到有關 API 的使用條件和限制的更多信息。

部署在 Heroku 上

  • 輸入「Channel Secret」、「Channel Access Token」和「ChatGPT Access Token」。

  • 記住你的 Heroku 伺服器 ID。

在 LINE Bot Dashboard 中設置基本 API:

成果

  • 依照「如何安裝」進行相關的部署流程。
  • 將機器人加入群組聊天室。 img

  • 能夠記住群組內的對話。

list_all.png

  • 直接送群組內容摘要私訊給你。

sum_all.png

相關指令如下

  • :gpt xxx: 直接對 ChatGPT 來對談,可以直接問他。
  • :list_all: 列出群組的訊息紀錄(all)
  • :sum_all: 幫你做訊息摘要。

開發流程記錄 (Golang 為主):

以下將逐步講解該如何開發出這樣的聊天機器人:

如何取得聊天群組 (group) 的資訊(透過 Webhook),並且儲存訊息:

首先,你需要知道你有在一個聊天群組內。所以如何取得 Group ID ,並且記錄相關的訊息。 這裡也順便提到,在 2022/12/27 的最新新聞,以後已經無法從 LIFF 取得 Group ID 的相關資訊。也就是說在群組中,能取得 LINE 群組 ID 只剩下透過 Webhook 的方式。

快速總結:

  • 聊天群組的 ID ( event.Source.GroupID ) : 請注意,如果是直接跟官方帳號的單獨一對一聊天。這邊的數值會是空的。
  • 儲存資料的方式:這個範例程式主要是給大家有相關感受,所以使用記憶體加上 map 的方式來儲存。如果大家真的要上線使用,請記得搭配資料庫來使用。

如何透過 Golang 來使用 ChatGPT API

快速總結:

如何透過 API 來幫你聊天室訊息摘要

快速總結:

  • 因為 ChatGPT 的呼叫比較花時間,先回覆給使用者,再來呼叫等待答案比較好。
  • 總結就是在所有文字前面加上一個 幫我總結 即可。 記得後方要用符號包起來,避免太多簡體字的話,可以加上請用繁體中文

相關技術文件:

未來相關工作

ChatGPT 是個很有趣的服務,本次文章透過他可以幫忙摘要一段文章的功能。來幫我們把聊天群組的聊天記錄來做一個總結。

這樣可以讓太久沒追到的人,可以快速跟上大家聊天的話題。

這次的程式碼相當的簡單易懂,希望可以拋磚引玉看到各位更多的應用。

ChatGPT 其實還有更多的應用可以探討,相信也可以透過這個服務讓 LINE 官方帳號發揮強大的功能。

如果你有任何建議或是疑問,歡迎透過 LINE Developers 的官方討論區或是LINE 開發者官方社群的官方帳號跟我們聯絡

[好書分享] 瘟疫與人-傳染病對人類歷史的衝擊

瘟疫與人-傳染病對人類歷史的衝擊
Plagues and Peoples
 共 66 人評分
作者: 麥克尼爾  原文作者: William H. McNeill  譯者: 楊玉齡  出版社:天下文化 

買書推薦網址:

前言:

這一本是今年所讀完的第二十三本書。這一本書當初跟著疫苗的書一起買的,但是其實這是一本 1975 年的書籍。他經過了多年的文獻蒐集,裡面有整理許多關於瘟疫與流行病對於人類文化的影響。

內容簡介:

人類實踐了太空旅行 卻擺脫不了傳染病的威脅
全球化消弭了疾病散播的界線 社群加深了恐懼   
歷史不斷證明 政經情勢極有可能一夕劇變 人性面對更嚴格的試煉
面對新型冠狀病毒、SARS、伊波拉、流感病毒、H1N1……
瞭解 是處理恐懼最好的方式 

「瘧疾」的兇暴,使莊嚴的朝聖之旅,化成疫病的溫床;
「霍亂」的版圖,藉交通便利的無國界化,再展新勢力;
「禽流感」的威脅,迫使高密度畜養的經濟方式,面臨挑戰; 

生活在樹上的靈長類遠祖,因跳蚤和體蝨而搔癢不已;初踏上地面的人類祖先,由於大草原瀰漫的昏睡症而病懨懨;開始農耕的文明社群,遭血吸蟲症削弱了整體生產力;歐亞間的經濟貿易,致使天花悄悄跟著商旅隊伍進入新地域;蒙古大軍勢如破竹,將鼠疫散布歐亞大陸;西方帝國靠著無心傳染的天花,達成了殖民野心;工業革命帶來的交通躍進,更是讓全球成為疾病大鎔爐。 

第1章 狩獵族群的行蹤 / 第2章 古文明世界的疾苦

這邊從原始人時代開始說起,疾病很多時候都是透過微生物或是狩獵物身上所傳染的。

到了古文明之後,農業變成是一種新興的文明。但是有許多的瘟疫與疾病都是伴隨著衛生習慣所衍伸出來的。像是那時候最嚴重的疾病就是「血吸蟲」所造成的死亡因素。甚至許多挖掘出來的古代屍體都有血吸蟲的蹤跡。看來那時候人民因為衛生習慣的不好,受到許多微生物與小型蟲類困擾的相關疾病為主。

裡面也有提到,因為那時候許多疾病都是寄生蟲相關的疾病。所以那時候也有一說是因為回教的人看到豬什麼都吃,認為如果沒有好好處理豬肉。也很容易受到寄生蟲的相關疾病。

第3章 歐亞疾病大鎔爐

第三章開始,瘟疫與疾病其實是會影響文化的發展與民族的興盛。蚊子產生的相關疾病開始肆虐全球,瘧疾變成是當時最致命的瘟疫。並且透過剛開始的各種大軍的東征西討,各種瘧疾也開始在歐亞大陸中流動。 這時候往往有大量外國的人的國家往往比較容易在當下容易先受到感染而更早產生抗體。

相反的這時候的日本,英國與中國因為都是島國生態。對於外來疾病的抵抗力就不足,這一個時期就有許多致命的疾病結果。當時的英國就是因為這樣對於鼠疫(也是當時最致命的黑死病),造成了巨大的影響。因為那時候英國的人口是倍增的,但是衛生習慣與抵抗力還不足。所以當時的黑死病讓整體人口停滯了許多年。

第4章 蒙古帝國打通路徑

蒙古的元朝成吉思汗造就了橫跨歐,亞,非三個大陸的帝國。但是也讓許多的瘟疫與傳染病跟著蒙古帝國而走。鼠疫依舊是這個時代最致命的疾病,並且老鼠隨著軍隊的一起移動,還有各國的商業船隻也會藏老鼠。

第5章 闖入美洲新世界

接下天花快速蔓延了美國新大陸,由於物資與衛生水平更讓許多美洲的相關民族深受其害。甚至西班牙跟墨西哥的戰爭,也因為墨西哥的軍隊受到天花的侵襲,也讓了西班牙就這樣獲勝。也可以看得出來瘟疫也會改變世界版圖的變化。

第6章 近代醫學大放異彩

最後一個章節就提到了疫苗的過程,跟瘟疫的對戰狀況。並且也開始整理各國的瘟疫情形。

心得

這一本書其實是 1975 年第一次完稿的,所以整本書其實是沒有談到 COVID 的狀況。 但是往往人類的文化真的都跟著大型的流行病而改變。不論是流行病造成某個總統的下台,還是瘟疫造成種族的滅絕。真的也都代表了人類真的深受各種疾病的影響。

[TIL] 為什麼 Passkeys 流程在建立帳號的時候,依舊需要帳號跟密碼?

image-20220608151748839

前情提要:

我曾經在 WWDC 結束後有寫了一篇關於 Passkeys 的整理文章。結果前幾天就看到一個有趣的 tweet ,讓我重新的檢視自己熟悉的程度如何?到底真正 Passkeys 的流程(第一次與之後的)有什麼不同? 這一篇文章將對這個部分做一個整理。

(2022/12/10更新)如果是第一次創建帳號,需要幾次手續? 為什麼?

image-20221212081920686

之前看到的 tweet ,裡面有提到為什麼看到 Yubico/java-webauthn-server 有接近 21 個步驟? 這也讓我好奇地去檢查了一下相關流程的原意:

WebAuthn ceremony sequence diagram

(Pic from https://github.com/Yubico/java-webauthn-server#architecture)

根據這個元件的說明圖,大家會很好奇。這裡需要合併跟另外一張圖一起來看:

  • Step: 1 ~ 4:
    • 帳號建立的時候,由於需要支援比較舊型的瀏覽設備(瀏覽器/OS) ,所以這裡還是要帳號跟密碼。整個流程跟以往的資料庫一樣,但是接下來流程有一些不同。
    • 如果是有支援 Passkeys 的 User-Agent 並且沒有要 Backward Compatability 的話,其實不需要 1 ~ 4 (不過應該都要有)。
  • Step: 5:
    • 這裡是參考 PKCE 的方式來生成Challenge ,也就事某個 AES 加密過後的數值。
  • Step 6 ~ 9:
    • 這時候可以產生 credential ID (optional) 回傳給 client 端作為 client agent 產生的數值。
      • User-Agent 可能傳過來 Challenge + credential command + credential ID
  • Step 9 ~ 18:
    • 這裡就是會啟動 Cliet Agent 去開啟 Passkeys 的支援登入流程。
    • 透過 private 加密的加密的 credential 傳給伺服器端。
    • 透過之前存取過的 Public key 解開後,確認是否為同樣的 credential ID。
  • Step 18 ~ 21:
    • Auth 完成後完成註冊。

幾個重點是:

  • 相關的流程絕對比原有的 ID/PW 還要更繁瑣(可能更挑設備)。
  • 但是第一次註冊完成後,如果設備允許,之後是不需要輸入 ID / PW 的方式。
    • Demo 範例也是從第一次就使用 Passkeys ,但是這樣往往無法對舊的設備來通用。

Passkeys 的登入體驗

img

img

對於相關設備的支援

image-20221212092215898

(From: https://www.passkeys.io/)

這邊可以知道,其實 Passkeys 裡面呼叫的 WebAuthn 會使用到瀏覽器端的 App 與 OS 版本有關。所以如果要希望早日完全導入 Passkeys 的系統,其實是瀏覽器支援外。 如果類似 Apple 的系統原生支援的話,在 App 的開發上也能夠早日導入。

最後

image-20221212085622584

(From: WWDC22 Session: Meet passkeys )

如同這一篇影片最後的一樣, Passkeys 並不是在節省整個登入流程。 而是在加強整個登入流程的安全性與使用者便利性。為了達到真正的 Password-less 的境界,其實需要許多業界的配合:

  • 伺服器端需要都使用 WebAythn 來寫自己的登入端應用。
  • 並且讓相關伺服器的版本更新到最新版本
  • 也提醒使用者要使用新的版本的手機(好像比較簡單)。

Reference