- 提升整个组织的研发活力,是目标
- 手段分为两个层面:过程与结果
- 按照开源社区的模式,实施开放过程
- 按照开源社区的惯例,公开研发结果
- 借鉴开源的研发过程,几个要点
- 以Code Review为核心的代码提交过程
- 通过质量看护,提升代码质量,防止架构腐化
- 通过social coding的过程,实现内部人才培养,能力传递
- 通过自组织学习,提升个人与团队的研发能力
- 以Committer为核心的研发组织结构
- 尊重技术,尊重代码,建立更加合理的基层人才晋升通道
- 关注结果与效率的轻量级开发管理
- 快速发布,允许犯错,减少质量成本
- 更好的适配DevOps研发模式
- 研发结果的公开
- 内部公开的开发过程
- issue公开,方便上下游协作,降低信息沟通成本
- 及时发布最新版本,方便下游调测
- 内部公开的源代码
- 更多的人能够看到,对于coder有更多的社交压力
- 内部代码共享,降低重复研发成本
- 为今后对外开源,建立基础
- 对外宣传之后
- 有利于招聘
- 有利于改善企业形象(雇主品牌、技术品牌、客户品牌)
- 有利于留住人才
- 对外开源之后
- 公司内部有更多能够直接参与开源的内行
- 更懂社区,更会运营
- 最大的风险,就是有名无实,追求形式,忽略实质。只做表面功夫,不懂持续改进
- 企业推行内部开源,最怕强推,一声令下,全员投入
- 意识跟不上:假内源,搞形式主义
- 技能根本上:不会用,耽误自己的功夫
- 发现没有收益,最后草草收场
- 更好的推进方法(时机),是螺旋式推广
- 选择小规模的试点团队
- 逐步验证,逐步扩大,逐步推广
- 在试点团队中,注意培养更多的积极布道者
- 选择试点团队的要点
- 有足够的求新求变的主动性
- 进度压力不要太大
- 个人技能与学习能力,在平均线之上
- 好的中层主管,能够顶住压力