擁抱開源, 2/e How Open Source Ate Software: Understand the Open Source Movement and So Much More

[美]戈登·哈夫(Gordon Haff)

  • 擁抱開源, 2/e-preview-1
  • 擁抱開源, 2/e-preview-2
擁抱開源, 2/e-preview-1

買這商品的人也買了...

商品描述

本書深入闡釋了自由軟件如何成為開源軟件以及如何銷售開源軟件。本書從開源如何徹底改變軟件的編寫方式、合作方式、溝通方式、組織結構以及商業價值等多個方向展開論述。內容涉及開源所創造的機會和隨之而來的挑戰,公司如何創造商業模式來成功地銷售“自由”軟件,如何從創建社區到銷售商業產品應用開源開發模式,審視與開源項目和產品管理及許可相關的重要問題,以及開源原則如何更廣泛地適用於DevOps和其他組織實踐。

本書不僅適合對開源軟件感興趣的人員、IT從業人員以及致力於開源健康發展的人員閱讀參考,而且適合作為高等院校相關專業的開源教育通識讀物。

作者簡介

Gordon Haff,商业开源软件的领先供应商Red Hat公司的技术传播者,负责新兴技术产品战略;撰写有关技术、趋势及其业务影响的文章;经常向客户和在行业活动中发表演讲。他研究的主题包括边缘计算、区块链、人工智能、云原生平台和下一代应用程序架构。他为多家媒体撰稿,包括The Enterprisers Project、opensource.com、Connections和TechTarget。曾出版图书From Pots and Vats to Programs and Apps。

目錄大綱

目錄

第 1章 開源軟件的起源 1

1.1 開端 1

1.1.1 啊,UNIX操作系統 2

1.1.2 不再有免費的午餐了嗎 4

1.1.3 PC是一種不同的文化 5

1.1.4 打破社區 7

1.1.5 自由軟件進入混戰 8

1.1.6 建立自由的基礎 9

1.2 零散的硬件和軟件 10

1.2.1 垂直筒倉無處不在 10

1.2.2 筒倉轉向自己的一邊 11

1.2.3 大眾市場的哪種操作系統將會勝出 13

1.2.4 Microsoft公司放手一搏 14

1.2.5 Windows NT操作系統蓄勢待發 15

1.3 互聯網進入主流 16

1.3.1 從縱向擴展到橫向擴展 16

1.3.2 互聯網服務器需要操作系統 17

1.4 加入Linux操作系統陣營 18

1.4.1 一個新的*NIX 18

1.4.2 Linux操作系統越來越流行 19

1.4.3 黯然失色的UNIX操作系統 20

1.5 Linux操作系統無可避免嗎 20

1.6 開源加速 22

1.6.1 新的企業IT模型 22

1.6.2 誕生於網絡 23

1.6.3 是構建還是購買 24

1.6.4 打破現狀 24

1.6.5 從顛覆到創新發生的地方 26

1.6.6 生態系統的崛起 27

1.6.7 打破單體應用 27

1.6.8 Linux操作系統和開源已經到來 28

 

第 2章 從“自由”到“開源”,再到產品 31

2.1 單詞的含義很重要 31

2.1.1 若為自由故 32

2.1.2 “開源”的誕生 33

2.1.3 實用主義和商業主義 33

2.2 項目和產品 35

2.2.1 上游和下游 35

2.2.2 項目與產品相互依賴 36

2.2.3 支持是什麽 37

2.2.4 降低風險 38

2.2.5 支持完整的生命周期 38

2.2.6 通力合作 39

2.2.7 安全與風險的交集 39

2.3 確保開源安全 40

2.3.1 什麽是信息安全 40

2.3.2 相同的商業服務機制——安全補丁和自動化部署 41

2.3.3 開源對安全性的影響是好是壞 41

2.3.4 代碼會幫助壞人嗎 42

2.3.5 或者“多眼”是秘訣嗎 43

2.3.6 換個角度思考風險 44

2.3.7 確保供應鏈安全 45

2.3.8 進入DevSecOps 46

2.3.9 什麽是DevSecOps 47

2.3.10 可信雲 48

2.3.11 機器學習的前景 50

2.4 如何開始 50

 

第3章 法律相關的問題 51

3.1 版權如何運作 52

3.1.1 軟件可以有版權嗎 53

3.1.2 版權進入軟件領域 54

3.1.3 開源軟件也是有版權的 54

3.1.4 如何使作品進入公有領域 55

3.1.5 公有領域的替代品 56

3.2 許可證制度到底是什麽 57

3.2.1 許可證(可能)不是必要的 57

3.2.2 為什麽需要發放許可證 58

3.3 開源許可證如何運作 60

3.3.1 開源許可證的分類 60

3.3.2 保護共享知識 61

3.3.3 透過版權的泥沼看清本質 62

3.3.4 permissive許可證的收益 62

3.3.5 推動參與是關鍵 63

3.3.6 進入雲端 64

3.3.7 誰可以使用 65

3.3.8 非開源許可證 65

3.3.9 道德許可證 66

3.3.10 許可證不是目標 67

3.4 保持開源的合規性 68

3.4.1 將控制措施落實到位 68

3.4.2 具體的政策是什麽 68

3.4.3 一個持續的過程 69

3.5 商標 69

3.5.1 名稱包含什麽 70

3.5.2 項目或產品 72

3.5.3 商標所有權和註冊 73

3.5.4 商標的影響力 75

3.6 專利 76

3.6.1 專利的權利要求 77

3.6.2 如何確定是否侵權 78

3.6.3 創建專利池 79

3.6.4 專利和許可 80

3.7 商業秘密 81

3.8 關聯性和重要性 81

 

第4章 開源開發模式 83

4.1 開源也關乎開發 83

4.1.1 集中與分佈式控制 84

4.1.2 不同的開源方式 85

4.1.3 一個警告 85

4.2 參與開源項目 86

4.2.1 啟動一個開源項目 87

4.2.2 什麽樣的開源項目算成功 88

4.2.3 增加現有開源項目的數量 89

4.2.4 創建開源管理辦公室 91

4.3 管理項目的模型 93

4.3.1 誰做決定 94

4.3.2 有哪些原則 98

4.3.3 開放治理 100

4.4 誰在社區中 102

4.4.1 領導者 102

4.4.2 維護者 102

4.4.3 提交者 103

4.4.4 貢獻者 103

4.4.5 為什麽你應該考慮比編碼人員更多的事情 104

4.4.6 用戶參與其中 106

4.4.7 用戶成為貢獻者 106

4.5 如何鼓勵新的貢獻者 107

4.5.1 保持控制——一個反面模式 107

4.5.2 降低工具的門檻 109

4.5.3 提供指導 109

4.5.4 文化的重要性 110

4.6 維護社區的步驟 111

4.6.1 快速響應 111

4.6.2 文檔——一個簡單的入口 112

4.6.3 模塊化的重要性 112

4.7 溝通,溝通,溝通 113

4.7.1 在一起的極限 113

4.7.2 分佈式團隊的最佳實踐 114

4.7.3 關於人 115

4.7.4 也關於工具 116

4.7.5 虛擬的極限 117

4.8 決定你是否成功 118

4.8.1 度量會改變事物 119

4.8.2 真正重要的是什麽 120

4.8.3 數量不一定帶來質量 120

4.8.4 這些數字意味著什麽 121

4.8.5 各盡其能 122

4.8.6 瞭解社區柔性的一面 122

4.9 回到集市 124

4.9.1 這是一個有點自由散漫的過程 125

4.9.2 開源是重復的 125

4.9.3 社區讓它發揮作用 126

4.10 為什麽開發模式很重要 127

 

第5章 開源與過去的聯系 129

5.1 驅動開源的多種因素 129

5.2 創新 130

5.2.1 通過“集體發明”進行創新 130

5.2.2 開放經濟學 131

5.2.3 協同創新的優勢 133

5.2.4 知識是如何被共享的 134

5.3 合作與交流 134

5.3.1 溝通的局限性 135

5.3.2 溝通如何影響軟件架構 136

5.3.3 模塊化通常更好 137

5.3.4 開源貢獻者如何交互 138

5.4 參與 140

5.4.1 參與者如何開始 140

5.4.2 入職和指導 141

5.5 動機 142

5.5.1 開源動機研究 142

5.5.2 外在動機 143

5.5.3 內在動機 144

5.5.4 內化的外在動機 145

5.5.5 我們能從中學到什麽 146

5.6 度量 147

5.6.1 為什麽要度量 147

5.6.2 度量對行為的影響 148

5.6.3 直接度量的局限性 148

5.6.4 度量目標的迷思 149

5.6.5 理解社區運行狀況 150

5.6.6 更多的文化之光 151

5.6.7 需要評估的12個領域 152

5.6.8 更廣闊的生態視野 154

5.7 反思和告知 155

 

第6章 商業模式與加速發展 157

6.1 如何出售自己捐贈的東西 158

6.2 是否存在“開源商業模式” 159

6.2.1 商業模式的類別 159

6.2.2 尋找平衡點 160

6.2.3 用免費軟件構建銷售漏鬥 162

6.2.4 這對開源意味著什麽 162

6.2.5 核心開源與開放源代碼 163

6.2.6 你是否從開源開發模式中獲益 165

6.3 採用“開源開發模式”的企業軟件 166

6.3.1 獨立軟件供應商的崛起 166

6.3.2 開源支持的出現 167

6.3.3 Linux發行版出現 168

6.3.4 訂閱——不僅僅是“支持” 169

6.3.5 專註於“核心競爭力” 170

6.3.6 訂閱與激勵相結合 171

6.3.7 雲服務帶來的轉變 172

6.4 從競爭到合作 172

6.4.1 合作競爭概念的產生 173

6.4.2 為什麽合作競爭不斷增長 174

6.4.3 開源——受益者和催化劑 175

6.4.4 合作競爭與標準 176

6.5 對速度的需要 177

6.5.1 從物理到虛擬 177

6.5.2 信息技術的消費化 178

6.6 DevOps的崛起 179

6.6.1 DevOps起源故事 179

6.6.2 DevOps——不僅僅是敏捷 181

6.6.3 將不同的關註概念進行抽象 181

6.6.4 站點可靠性工程師 182

6.7 開源和DevOps 183

6.7.1 平臺和工具 183

6.7.2 流程 185

6.8 無處不在的開源 191

 

第7章 目前開源面臨的問題 193

7.1 IT行業已經改變 193

7.1.1 “雲”的興起 194

7.1.2 AWS的故事 196

7.1.3 公有雲服務是唯一的未來嗎 198

7.1.4 將計算分佈到(許多)邊緣 199

7.1.5 為什麽要分佈式 200

7.1.6 混合雲 201

7.2 環境的改變對開源意味著什麽 202

7.3 用戶想要什麽 204

7.3.1 新的捆綁包 205

7.3.2 用戶需要便利 206

7.4 維持正反饋迴路 208

7.4.1 項目 209

7.4.2 產品和解決方案 210

7.4.3 利潤和更廣泛的價值 210

7.5 打破價值鏈 211

7.5.1 軟件正普遍貶值 211

7.5.2 這在開源領域一直是個大問題 212

7.5.3 重心轉移 213

7.5.4 軟件和服務怎麽辦 214

7.5.5 這是個問題嗎 214

7.5.6 精神食糧 216

7.5.7 生態系統很重要 217

7.6 這不僅僅是代碼的問題 220

 

第8章 開源的機遇和挑戰 221

8.1 開放數據 221

8.1.1 從數據中獲取價值 222

8.1.2 一份開放的地圖 223

8.1.3 通過數據實現透明度 224

8.1.4 數據的所有權 226

8.1.5 維護隱私 227

8.2 開放信息 229

8.2.1 可讀寫網絡 230

8.2.2 維基百科 230

8.2.3 獨立的貢獻 231

8.3 開放教育 232

8.3.1 先兆 232

8.3.2 麻省理工學院開放課程 233

8.3.3 慕課 234

8.3.4 協作與消費 236

8.4 開源硬件 238

8.4.1 RISC-V 238

8.4.2 火腿電台開啟創客文化 239

8.4.3 創客的變化 240

8.4.4 新創客 242

8.5 組織中的開源文化 244

8.5.1 組織到底為什麽存在 244

8.5.2 開放式組織 246

8.6 總結想法 249