TechOrange 編輯部推薦好書:《不穿褲子工作的一年》
史帝夫.賈伯斯曾經說過:「會發布作品才是眞正的藝術家。」但我們常會擔心犯下大錯或是進度落後,導致發布任何東西可能都很困難。部落格內容管理系統 WordPress 每天都會發布某個東西,比如修復某個錯誤,或是細微的調整,所以點進 WordPress.com 網頁的用戶,看到的永遠都會是最新版本,執行長東尼.史奈德用「持續部署」一詞來形容這個不斷進行小型調整的哲學。
文 / Scott Berkun,譯者 / 楊詠翔
1983 年 9 月,蘋果的麥金塔專案進度嚴重落後,團隊已經油盡燈枯,但還剩下很多工作要做。蘋果的執行長暨該專案充滿遠見的領導者史帝夫.賈伯斯經過團隊辦公室的主要走道,並在附近的黑板上寫下後來他最知名的其中一句名言:「會發布作品才是眞正的藝術家。」
他寫下這句話,是因為他想強迫專案團隊更努力工作、更早結束專案,今日這句話成為許多領域創新人士的口號,但他們都忽略了當時賈伯斯強調的是「發布」,而非藝術。
僅僅是發布某個東西,並不會讓你成為藝術家,然而,不管是藝術或是垃圾,世界要理解你創造出的東西唯一的方式,就是當你勇敢到能夠宣布已經做好了,並向全世界展出之時。
多數擁有創意的人,都會「太快」跳到發布
賈伯斯的名言讓人很容易忘記沒有人展開一項專案時,是計畫不要發布的。沒有一整個聰明又努力的部門,心懷深沉又熱情的希望苦幹實幹了好幾個月,卻覺得等他們完成後,他們的成果會被裝進板條箱中,並運送到《法櫃奇兵》裡的倉庫,永遠不見天日。
所有熱情的開發者,都是受到能看見目標受眾使用他們開發成果的渴望所驅策;而且事實還恰好相反,多數擁有偉大創意的人,都會太快跳到發布這件事,並把他們第一個充滿靈感的晚上,花在幻想發布後世界會帶給他們多少榮耀, 即便他們根本就還沒有做任何事。夢想是免費的,發布則需要自己爭取。
發布任何東西都可能很困難,就算只是份大學的期末報告,或是一頓感恩節晚餐。現在就有數千名企業家和程式設計師正在空轉,要不是卡在似乎解決不了的問題上,就是執迷於很少用戶會注意到的細節。
在試圖發布的過程中,有很多狡猾的陷阱,這解釋了為什麼有這麼多人迷失在開始和結束之間,開發東西非常困難,不管你的準則是什麼,或你在牆上掛的是什麼格言,大多數專案都會超出時間、超出預算、或是遭到取消。請你看看生活周遭所有的機器、書籍、工具、應用程式,這些東西能完成到產出根本就是奇蹟。
擔心鑄下大錯或是進度落後,是世界上多數專案管理過程背後的動機,管理者經驗越豐富,看過的壞事就越多,也有越多事必須試著避免,我將其稱為「防禦性管理」,因為其目的是要防止一長串壞事發生。防禦性管理很盲目,看不出執迷在防止壞事發生,同時也會遏止好事發生,有時候甚至導致什麼事都不會發生。
WordPress 不斷進行小型更新的哲學
WordPress.com 每天都會發布某個東西,常常是某個小東西,比如修復某個錯誤,或是細微的調整,但仍然是新東西沒錯。我在 2010 年 8 月受聘進入公司時,WordPress.com 總共更新了兩萬五千次,而我 2012 年離開時,則是已經來到超過五萬次。
東尼.史奈德便用「持續部署」一詞來形容這個不斷進行小型調整的哲學,所有點進使用 WordPress.com 主機網頁的訪客,看到的永遠都會是最新版本,很可能才剛發布幾秒鐘而已,程式設計師和系統設計師想多常發布,就多常發布。
這通常代表他們一完成就會發布,不用排隊測試、也不用互相檢查,不需要時程表或大計畫,因為根本不需要死線、日期、其他協調,也不需要什麼管理,因為根本沒有什麼要防禦的。就算在最糟糕的情況下,搞不好某個版本不小心用該死的殭屍香蕉照取代了所有部落格,也可以回溯,讓軟體回到先前的版本,不過回溯程式碼頗為罕見,公司鼓勵程式設計師直接進行其他調整以修復問題,並規定所有發布了某個東西的人,都必須待在線上幾個小時,保證一切運作順暢。
缺少宏大的時程表,也移除了許多專案創造出來擔心進度會落後的恐懼,並以微小卻高頻率的成果取代。我們讓狀況越來越好,工作感覺比較像是在吃一頓西班牙下酒菜,每隔幾分鐘就會有小盤小盤的美味食物送上桌,你不需要排隊,或是等到下一餐的時間,用戶也不需要等,不管他們在做什麼,使用的永遠都會是最新版本。而且所有員工也都能在 IRC 上,看到程式設計師之間互相分享新的調整,我們通常稱之為修正檔,以便在發布前協助測試。
有時候光是一天就有可能發布 25 個修正,在忙碌的日子中,IRC 會充滿程式設計師彼此協調他們的發布,確保不會互相衝突,在旁觀察這些總是相當有趣。相較之下,我 1990 年代在微軟開發 Windows 時,我們每隔幾年才會發布一個新版本,而同年代的瀏覽器戰爭期間我負責開發 IE 時,頂多也只是每個月發布一次。由於我先前參與大型專案的經驗,讓我許多朋友都覺得在 WordPress.com 的混亂中工作,對我來說會是件很困難的事。
結果調整起來還蠻簡單的,當時微軟的 IE 團隊有個相同的東西,叫作「每日開發」。我們每天都會發布軟體的新版本,但只限於在公司內部流通,每一天都會彙整前一天所有的調整發布,也鼓勵每個人都安裝來用用看,以此為開發品質提供固定回饋。
如果你每月只有看一本書的時間,讓《編輯推薦好書》電子報幫你找到必讀的那一本!

感謝訂閱!隨時注意信箱的最新資訊
快速發布成果取決於員工是否受到信任
加入新功能的過程中有珍貴的歡笑,也有悲慘的時刻,在日子好時開發品質非常好,我們就會將這些版本稱為「自行運作」,也就是「能夠安全在你的電腦上運作」;品質普通的版本叫作「自行測試」,也就是建議你只安裝在測試用的電腦上就好,或是趁同事不注意的時候裝在他電腦上;品質最糟糕的版本則叫作「自行燒焦」,表示你要是敢安裝,那不管裝在哪台電腦上都會報廢。
只要我們連續三天發布的版本都是自行燒焦,就會暫停所有開發工作,直到我們讓開發品質恢復到正常水準,這是個防止專案品質爛到谷底的方法。在 WordPress.com 這邊的發布也是依據同樣準則,只是過程加速,而且也向用戶開放而已,我不覺得缺少大型計畫或時程表是個問題,事實上,我大多時候都感到自由。
對任何曾經參與過大型專案的人來說, 這一切聽起來都超瘋狂的,沒有時程表要怎麼做事?怎麼能沒有安全措施?事情為什麼不會直接爆炸,或是從頭到尾都互相衝突? 這種方式之所以可以運作,主要原因便在於 Automattic 信奉一套反直覺的準則:安全措施不會讓你安全,而是會讓你懶惰。
大家在駕駛有防鎖死煞車系統的車子時,會開得更快,而不是更慢;美式足球員因為他們的防護,也會承擔更多風險,而非更少。在 Automattic,打安全牌的陷阱會受到抵制,大家比較是受到自主感驅策,而不是什麼宏偉的工作原則,基本概念是如果大家都聰明又彼此尊重、不會把事情搞砸,那麼過多安全措施反而會擋路。相較之下,員工在此受到信任,更擁有權力可以快速發布成果。

購書連結:《不穿褲子工作的一年》
*本文書摘內容出自《不穿褲子工作的一年》,由 堡壘文化 授權轉載,並同意 TechOrange 編寫導讀與修訂標題。圖片來源:©Tumisu via Canva.com。
(責任編輯:陳可錞)





