大中型科技企业开源战略制定与落地
企业开源战略定义
海量开源组件如何使用才能安全、合规、高效?
如何利用开源建设内部的研发文化,让内部协同更流畅,减少重复造轮子,加速创新?
每个企业都会用到大量开源项目,重点投入的项目是哪些?为什么?怎么投?如何衡量?
是否要对外开源自己的项目,为什么要开?怎么开?持续运营方向是什么?
一个统一的、连贯的企业开源战略有助于明确企业内的优先级
企业开源战略可以指导企业内开源运营,并向员工提供清晰一致的导向
开源软件管理的流程和政策需要更高层的上位法
双 License(代表:MySQL、X264)
Open—Core(代表:Kafka,Elastic)
Service(代表:RedHat,IBM)
SaaS(代表:AWS、腾讯、阿里)
利他 + 利己
竞争 + 合作
开放 + 透明 + 协作的价值观
驱动力 3.0
FSF 起诉思科 关于 Linksys WRT54G
X264 向某大厂索赔数千万美金
VirtualApp 判例:GPL 是合同
Heartbleed
Log4Shell
不同 OpenSSL 版本导致集成后 Core dump
Fastjson hang 导致多个业务受损
衡量软件企业供应链管理能力
当一个常用开源软件发现高危 CVE bug 和 fix 之后,多长时间内能在该企业内部定位和修复?
当该企业对外输出软件时候,是否快速输出高质量的 SBOM(软件组件清单)和 Notes,满足合规要求?
组建跨部门多功能小团队,包括法务、安全、工具团队
使用工具尽可能自动化
需要大规模多层次的培训和宣导
提升代码质量
提升人员的能力
提高员工的满意度
打破部门墙
减少重复造轮子
激励创新
构建事实标准,提供开源实现能更快推进标准
打击竞争对手,例如企业与某厂商是竞争对手,业务侧重点不同,将对手企业的侧重点实现并开源,就是对竞争对手的打击
竞争差异性,例如 Mozilla 与 IE 的竞争,IE 选择预装,而 Mozilla 则直接选择开源,实现竞争的差异性
建立生态系统推广,例如 Android
雇主品牌和技术口碑,例如 LinkedIn 开源 Kafka
降低支持成本,客户自行维护,例如各种云厂商的云 SDK
甩包袱,不想维护的项目交给社区
内部不想增加人员,想找免费劳动力
内部工程师或部门的 KPI
纯 PR 无后续支持计划
法务 Review:项目采用什么样的 License、采用什么样的条款、是否存在法律风险
技术 Review:项目有没有安全漏洞,有没有合录一些不需要的代码
市场 Review:项目使用什么 branding,市场竞争的策略是什么
治理模式 review:采用独立发展模式还是托管到基金会,亦或是成为基金会的孵化项目
清晰向内外沟通公司的开源策略
贯彻并监督开源战略执行
促进企业内有效和安全的使用开源软件
维护开源许可合规的审查和监督
确保代码向开源社区的高质高频发布
与开发者社区合作,促进公司对其他项目的有效贡献
在组织内部形成开源文化
第一种,将 OSPO 设立在在法务部门之下,侧重解决知识产权问题,例如硬件的公司都会把 OSPO 挂在法务部门。
第二种则是将 OSPO 设立在研发部门,主要支持工程师使用开源软件,适合软件公司。
第三种,将 OSPO 设立在市场 / 开发者关系团队,偏重 PR 去影响销售。
腾讯:研发管理部
阿里:隶属于 CTO office
百度:技术管理部
蚂蚁:隶属于 CTO office
微众:属于公司项目管理部
滴滴:属于开源委员会(虚拟)
往期推荐
一周热点 | 2022.12.20-2022.12.26
Win 11记事本标签页功能意外曝光
Firefox 启用 “新架构”,速度成倍提升
点这里 ↓↓↓ 记得 关注✔ 标星⭐ 哦~
微信扫码关注该文公众号作者