第一部分 准备开源
第1章 什么是开源,为什么要开源
1.1 什么是开源
1.2 开源简史
1.2.1 将开源的根源追溯到大型机社群
1.2.2 自由软件的出现
1.2.3 开源作为一个术语被创造出来
1.2.4 为开源提供一个供应商中立的家园
1.3 运用开源
1.3.1 爱好者之间的信息分享
1.3.2 基础技术
1.3.3 构建技术生态系统
1.3.4 提供高质量的免费软件
1.4 开源项目及开源的原因
1.4.1 PHP
1.4.2 Blender
1.4.3 Zowe
1.4.4 PiSCSI
1.5 小结
第2章 什么造就了好的开源项目
2.1 开源项目的核心特征
2.1.1 用户是开发过程的一部分
2.1.2 早发布,常发布
2.1.3 透明和动态的决策
2.2 发布开源代码与创建开源项目
2.2.1 智能代码转储
2.2.2 开放核心
2.2.3 以开源方式发布代码时的期望
2.3 成功的开源项目的模式和反模式
2.3.1 开放式沟通(和过度沟通)
2.3.2 仁慈独裁与委员会领导
2.3.3 分支
2.3.4 过度治理
2.3.5 欢迎竞争对手
2.3.6 把一切都写下来
2.3.7 拥抱你的社群
2.3.8 关注你的优势,利用工具和其他资源来弥补你的劣势
2.4 小结
第3章 开源许可证和知识产权管理
3.1 宽松许可证与非宽松许可证
3.1.1 宽松许可证
3.1.2 非宽松许可证或copyleft
3.1.3 哪种类型的许可证对项目有意义
3.2 版权和贡献签署
3.2.1 CLA
3.2.2 DCO
3.3 品牌和标志管理
3.3.1 确定项目的名称
3.3.2 品牌一致性
3.3.3 保护品牌
3.3.4 让其他人使用你的品牌
3.4 小结
第4章 向公司展示开源项目所带来的商业价值
4.1 为什么公司要将代码开源
4.1.1 降低开发成本
4.1.2 为客户添加新的特性或功能
4.1.3 更快推向市场
4.1.4 能够集中投资
4.2 在内部获得对代码开源的支持
4.2.1 回顾已经存在的项目
4.2.2 构建商业案例
4.2.3 获得盟友
4.2.4 设定预期
4.3 开源项目或代码仓库的检查清单
4.3.1 法律审查
4.3.2 技术审查
4.4 衡量组织在开源方面是否成功
4.4.1 设定(合理)目标
4.4.2 识别和展示组织所作的贡献
4.5 小结
第5章 治理和托管模式
5.1 什么是开源治理
5.1.1 行动至上
5.1.2 BDFL
5.1.3 技术委员会
5.1.4 选举
5.1.5 单一供应商
5.1.6 供应商中立的基金会
5.2 开源项目中的角色
5.2.1 用户
5.2.2 贡献者
5.2.3 维护者
5.2.4 领导者
5.3 记录开源项目的治理结构
5.3.1 可发现性
5.3.2 简单性
5.3.3 灵活性
5.4 开源项目的财务支持
5.4.1 小费
5.4.2 众筹
5.4.3 单一组织资助
5.4.4 基金会
5.5 小结
第二部分 运营开源项目
第6章 让你的项目备受欢迎
6.1 为新人设置项目
6.1.1 设置项目的基础设施
6.1.2 创建入门指南
6.1.3 欢迎新贡献者
6.1.4 当新人产生影响时,要认可他们
6.2 有效支持最终用户
6.2.1 管理问题
6.2.2 社群和开发者管理
6.2.3 商业支持
6.3 参与到对话中去
6.3.1 在线论坛和社交媒体
6.3.2 区域聚会和活动
6.4 小结
第7章 将贡献者发展为维护者
7.1 将贡献者发展为维护者的重要性
7.1.1 减轻当前维护者的压力
7.1.2 为项目带来新的想法和能量
7.1.3 使当前维护者退居幕后
7.2 寻找贡献者并成为导师
7.2.1 未来维护者的品质
7.2.2 利用导师制度引入新的贡献者
7.3 贡献者何时准备好成为维护者
7.3.1 导师指导进展顺利的迹象
7.3.2 如果贡献者从未准备好成为维护者怎么办
7.4 小结
第8章 处理冲突
8.1 理解人及其动机
8.1.1 人类的大脑
8.1.2 文化和生活经历
8.1.3 开源项目中的互动示例
8.2 包容性决策
8.2.1 开放的沟通和协作
8.2.2 决策的方法论
8.2.3 做出决策
8.3 纠正有害行为
8.4 小结
第9章 应对增长
9.1 衡量增长
9.1.1 增加项目的认知度
9.1.2 项目采用度
9.1.3 项目的多样性
9.2 评估和补救低增长的领域
9.2.1 提交记录/提交者
9.2.2 项目使用度
9.2.3 多样性
9.3 增强和扩展项目的领导力
9.3.1 从项目通才到项目专家
展开