-
Notifications
You must be signed in to change notification settings - Fork 8
20180826_the phoenix project book.html
Shawn Wang edited this page Dec 3, 2019
·
4 revisions
title: "《鳳凰專案》- 踏入 DevOps 之旅的第一本書" date: 2018-08-26 type: blog author: 凍仁翔 link: http://note.drx.tw/2018/08/the-phoenix-project-book.html layout: post comments: true
《鳳凰專案》其原文書書名為《The Phoenix Project: A Novel about IT, DevOps, and Helping Your Business Win》,是一部「IT 人藉由『DevOps』讓企業克敵制勝」的小說。
- 作者:Gene Kim、Kevin Behr、George Spafford。
- 譯者:楊仁和。
- 出版商:碁峰。
- 出版日期:2017/09/21。
- 定價:NT$ 480。
- 語言:繁體中文。
- 頁數:400。
- ISBN:9789864765867。
兩年前,凍仁剛接觸 Ansible 時,從一位益師益友的前輩口中得知此書的簡中譯本 -《凤凰项目》,之後在天瓏書局門市,為自己買下第一本《The Phoenix Project》。1
凍仁很幸運的找著幾位前輩的導讀文章,在閱讀此書前給予不少指引,例如:
- 保持耐心不跳章節,先把它當成一部小說般閱讀。
- 先從後面的致謝 (第 355 頁) 開始看,再重頭閱讀前面的傳奇故事。
雖說自己第一次是使用前者的方式進行閱讀,但相信不管用哪種方式閱讀,都會是個很棒的體驗。
拿起此書,讀者將會很快的發現其與眾不同,特別是目錄的部份。(笑) 2
目錄:
第一部份
第 1 章 9 月 2 日,星期二 | 007
第 2 章 9 月 2 日,星期二 | 018
第 3 章 9 月 2 日,星期二 | 030
第 4 章 9 月 3 日,星期三 | 042
第 5 章 9 月 4 日,星期四 | 058
第 6 章 9 月 5 日,星期五 | 070
第 7 章 9 月 5 日,星期五 | 081
第 8 章 9 月 8 日,星期一 | 091
第 9 章 9 月 9 日,星期二 | 102
第 10 章 9 月 11 日,星期四 | 110
第 11 章 9 月 11 日,星期四 | 119
第 12 章 9 月 12 日,星期五 | 126
第 13 章 9 月 15 日,星期一 | 140
第 14 章 9 月 16 日,星期二 | 149
第 15 章 9 月 17 日,星期三 | 158
第 16 章 9 月 18 日,星期四 | 171
第二部份
第 17 章 9 月 22 日,星期一 | 181
第 18 章 9 月 23 日,星期二 | 186
第 19 章 9 月 23 日,星期二 | 192
第 20 章 9 月 26 日,星期五 | 209
第 21 章 9 月 26 日,星期五 | 223
第 22 章 9 月 29 日,星期一 | 231
第 23 章 10 月 7 日,星期二 | 241
第 24 章 10 月 11 日,星期六 | 247
第 25 章 10 月 14 日,星期二 | 256
第 26 章 10 月 17 日,星期五 | 265
第 27 章 10 月 21 日,星期二 | 274
第 28 章 10 月 27 日,星期一 | 284
第 29 章 11 月 3 日,星期一 | 294
第三部份
第 30 章 11 月 3 日,星期一 | 305
第 31 章 11 月 3 日,星期一 | 312
第 32 章 11 月 10 日,星期一 | 320
第 33 章 11 月 11 日,星期二 | 327
第 34 章 11 月 28 日,星期五 | 335
第 35 章 1 月 9 日,星期五 | 343
致謝 | 355
為什麼需要 DevOps? | 363
DevOps 從何而來? | 368
關於三步工作法 | 370
DevOps 的主要迷思 | 372
DevOps 會取代 Agile?
DevOps 會取代 ITIL?
有了 DevOps,就無需 Ops?
DevOps 只適用於開放源始碼?
DevOps 只是「Infrastructure as code」或自動化?
DevOps 僅適用於新創公司和「獨角獸公司」?
四種工作類型 | 376
延伸閱讀 | 381
注釋 | 394
《鳳凰專案》一書大致可分為 4 個部份,前 3 部份為小說,而最後則是 DevOps 的入門指南。
- 第一部份:述說著無極限零件公司 (Unlimited) 每況愈下,以及 IT 部門的慘烈悲歌。3
- 第二部份:公司開始面對問題,並藉由各種 DevOps 手法,進行絕地大反攻!
- 第三部份:盡快取得顧客回饋,以及逆轉勝。
- 第四部份:解答 DevOps 是什麼?並明確指出書中提及的「三步工作法」和「四種工作類型」為何物。
三步工作法 (Flow、Feedback 和 Culture),是實踐 DevOps 的方法之一,同時也是本書的主軸;而四種工作類型 (Business projects、Internal IT projects、Changes 和 Unplanned work / Recovery work) 則很清楚的點出 IT 部門所需負責的工作有哪些。
IT 部門平日除了得支援公司的業務發展,還得維護企業內大大小小的系統,更別說還有變更工作,以及變更不當所造成的例外工作 (計畫外工作)!當 IT 部門忙著救火,又怎麼能支援公司向「錢」跑呢?
除了三步工作法和四種工作類型,書中和 DevOps 界的大師們還提及了許多實踐 DevOps 的方法:
- 虛擬化技術 (Virtualization)
- 限制理論 (Theory of Constraints)
- 精實生產 (Lean production)
- 變更管理 (Change Management)
- 看板方法 (Kanban Method)
- 敏捷開發 (Agile)
- 組態管理 (Configuration management)
- 持續交付 (Continuous Delivery)
- 雲端運算 (Cloud Computing)
- 混沌工程 (Chaos engineering)
- 豐田生產方式 (Toyota Production System)
- 系統思考 (Systems Thinking)
- 微服務 (Microservices)
在這麼多方法中,凍仁與團隊成員是先從「變更管理」著手,大幅降低例外工作後,才有心力進行「組態管理」和「持續交付」。鬆綁部署瓶頸的現在,其生產力比起一年前好上太多了!
舉例來說,我們一開始每週至少需耗費 20 小時 (5 人 x 4 小時,且不含例外工作),部署變更到一個預備生產環境 (Pre-production environment),如今我們可以只用 6 小時 (2 人 x 3 小時),完成兩個環境的部署。光這部份我們就節省了 6 倍的人力,更別說我們還有數條管道 (pipeline),可以一提交程式碼就進行單元測試 (Unit Testing),之後部署到開發環境 (Development environment)。
接著凍仁打算透過學習「看板方法」,來降低變革的阻力,一步步的與團隊成長;再來想學習「限制理論」和「系統思考」,藉由看見問題的全貌,即早進行改善。
或許有人讀完此書還是對 DevOps 一詞有些陌生,讀者可以看看艦長大人正瑋所分享的《Effective DevOps》簡報,以更進一步了解 DevOps 是什麼。
<iframe allowfullscreen="" frameborder="0" height="485" marginheight="0" marginwidth="0" scrolling="no" src="//www.slideshare.net/slideshow/embed_code/key/ji4FdfjMqxqLYt" style="border-width: 1px; border: 1px solid #ccc; margin-bottom: 5px; max-width: 100%;" width="595"> </iframe>
以前,我們會建議讀者試著改用其他角色的觀點,多讀《鳳凰專案》幾次。
現在,我們可以接著閱讀其姊妹書 -《The DevOps Handbook》4,直接參悟大師們多年來彙整而出的 DevOps 實踐心法。
推薦以下兩部影片,給想快速了解 DevOps 的伙伴們。
-
DevOps 的核心理念和實踐 by 劉征 (Martin) | DevOpsDays Taipei 2017
<iframe allow="autoplay; encrypted-media" allowfullscreen="" frameborder="0" height="315" src="https://www.youtube.com/embed/8_BYYe2IVsA" width="560"></iframe>
-
DevOps 的敏捷化思維 by 李智樺 (Ruddy Lee) | Agile Tour Kaohsiung 2017
<iframe allow="autoplay; encrypted-media" allowfullscreen="" frameborder="0" height="315" src="https://www.youtube.com/embed/Kb33AveRfD4" width="560"></iframe>
最後,就讓凍仁用一句話,來總結自己踏上尋求 DevOps 的偉大航道,所尋獲的答案。
「我們不能靠聲稱獲得 DevOps,我們必須展開旅程,走向 DevOps。」5
1 截止至今,凍仁已買了原文、簡中和繁中 3 種語言的《The Phoenix Project》,並送出十餘本繁中和簡中譯本,給過去有恩於在下的友人,和有緣的後輩。
2 繁中版少了前三部份的目錄編排,故順手參照 2013 年出版的原著整理了一番。08/31 收到 2018 年第 3 刷的《The Phoenix Project》五週年紀念版時,才得知最新的版本也拿掉了前三部份的目錄,著實有些可惜啊!
3 在原文書的第 7 章,用了穀倉效應的 Silo 一字,來形容各自為政的部門。要想在企業好好實行 DevOps,勢必得打破殼倉,才得以提高生產力。
4 簡中譯本為《DevOps 实践指南》。
5 此句改編於《心態致勝》一書,原話為「你不能靠聲稱獲得成長心態,你必須展開旅程,走向成長心態。」。
(本文已授權 DevOpsDays Taipei 2018 和天瓏資訊圖書全文轉載。)
站內連結:
★ DevOps Engineer、SRE 徵才求職雜談
★ 從《心態致勝》看敏捷
★ 一群臺灣老司機參與《鳳凰項目》沙盤的持續成長故事
相關連結:
★ The Phoenix Project, 5th Anniversary Edition | IT Revolution
★ The DevOps Handbook: Non-Fiction Follow-Up to The Phoenix Project | IT Revolution
★ 《The Phoenix Project》相關書籍 | chusiang/books2read
★ The Phoenix project 導讀 | Ruddy Lee 分享空間
★ 《鳳凰專案》私房標題 | Potioneer's Essays
★ 除了 DevOps 之外,鳳凰項目還說了什麼?| Software Architecture School
★ 鳳凰專案:看 IT 部門如何讓公司從谷底翻身的傳奇故事 | 天瓏網路書店
★ DevOpsDays 2018 專題工作坊:《鳳凰項目》沙盤工作坊 | iThome Learning