Contributor License Agreement 浅析

什么是CLA,CLA的主要作用 在开源项目中通常存在三个角色围绕在整个项目的生命周期,在他们之间使用不同的协议约束之间的关系。 所有者 开源项目所有者的角色比较复杂,有可能是一个独立开发者个体,也可能是多个开发者组成的小团体或是一家商业公司。他们共同的特点是对这个开源项目具有控制权,拥有代码写入的权限和修改许可证的权利。 贡献者 是指所有者之外的向开源项目贡献代码的开发者。有些开发者向开源项目贡献代码是出于个人意愿或者兴趣,我们可以称呼他们为独立贡献者,这些具有贡献精神的独立开发者是值得大家敬佩的,也是各种开源项目去努力吸引的;也有很多开发者是受雇于公司为开源项目贡献代码,大多数情况是因为工作中使用了某些开源项目,出于工作的需要贡献代码进行 Bug 的修复和新增功能,也有一些公司是有全职的开源开发者,专职在项目中贡献代码,这是一份让人非常羡慕的工作。 用户 开源项目的用户是非常复杂的角色。用户可能是指使用在其它开源项目中使用这个开源项目的开发者,或是在商业项目开发中使用这个开源项目的开发者,也有可能是指使用这个开源项目开发的软件的用户,角色的切换随着场景在变化。 Open Source License ,在中文中我们通常讲为开源许可证,是约束开源项目和用户之间的行为。开发者、用户或者是下游开源或商业项目是都有可能受开源项目的许可证约束,而且许可证的种类繁多,内容纷繁复杂,如果稍有不慎就会陷入法律纠纷的麻烦中。所以在目前开源合规方面的很多都是针对许可证合规的研究。 CLA 是 Contributor License Agreement 的缩写,一般翻译为贡献者许可协议,开发者向开源项目贡献的时候通常被要求需要签署 CLA 协议(或类似协议)。CLA 是约束开源项目和贡献者之间的关系,通常是要求贡献者在代码和专利做出声明或者承诺。CLA … More

开源社区运营指标的设计探索

前言 开源社区的运营过程,是扩大开源项目用户群体和开发者群体的过程。如何确定开发者群体的变化、如何确定贡献者转化比率是我们一直希望从数字化运营中获取的关键的信息。本文根据 openEuler 运营的实战经验,设计了对于开源社区贡献者的分层定义,希望通过数据维度为社区的健康状况提供一个新的维度可供观测。 介绍 – 漏斗模型 运营视角通常依据对开源项目的贡献程度,对代码托管平台 ( github.com 或 gitee.com )在项目上留下数字足迹的开发者进行划分,对不同的开发者实施不同的运营策略。由于操作系统开源社区的特殊性,在 openEuler 项目的实践过程中,发现从 openEuler 官网的开发者、操作系统下载安装的开发者、日常进行软件包更新的开发者在以上操作过程中不需要账号,无法进行身份的确认造成无法进行追踪,在运营过程中针对这部分开发者都只进行数据统计。所以 openEuler 社区的开发者目前限定指在代码托管平台和 openEuler … More

Why Open Source?

No Open Source, No Ecosystem. No Ecosystem, Business Is Nothing.

DevOps Is Philosophy

DevOps is an operational philosophy that promotes better communication between development and operations as more elements of operations become programmable. … More

《Go 并发编程实战》第二版 – 序

收到郝林邀约为《Go 并发编程实战》第二版写一篇序的时候,正好在湾区参加 Google NEXT 2017 大会。偶遇到《Go In Action》一书的中文译者李兆海从慕尼黑到湾区出差,他从七牛加入到 Google 已接近一年的时间。遂约他在 Google 的腹地 Mountain View 小聚,想听听他从国内 Golang 语言重度使用的公司跳槽到 Golang 语言发源的公司之间的经历和感受。 然而席间讨论最多的不是 … More