健康的开源软件项目不能一蹴而就,应该慢慢培养。而培养的秘诀就在于开源社区的建设,如何吸引开源开发者?如何留住开源开发者?如何规避和解决与开源开发者的冲突?如何保持社区发展?以上这些问题是建设开源社区时不得不面对的,
Joe Brockmeier(红帽)在LinuxCon北美大会上分享了丰富的实践智慧值得我们学习。
包容是关键
社区这个词出现的频率不断升高,很多人对它只有一个模糊的概念:「构建社区是一件好事」。
但它到底意味着什么呢?Brockmeier 说:「我与许多不同的公司和项目合作过,他们经常表达出想要一个社区」,当我问道:「你想要什么样的社区?哪类人是你的目标人群?谁对你很重要?社区努力的方向是什么?」他们又往往不能回答。
所以我认为我们需要明确知道项目目标是什么,因为对于不同的项目,目标往往差距很大。比如,有些公司真的不是那么在意在公司之外保留一个核心贡献者社区,但他们非常在意拥有很多用户。如果你建立一个社区是为了吸引用户,那和建立一个吸引核心贡献者的社区完全不一样。
任何软件项目,无论它多么小,也需要专门的贡献者来补充编码以外角色。如代码审查员、文档编写者、Bug发现者、Bug修复者、社区问题解答者、代码打包者、系统管理员和营销人员,也许还需要一些艺术家。
总的来说吸引和留住贡献者并不难,只要认真执行一些计划,比如,有导师为新贡献者铺平道路,认可所有贡献者的所有贡献,确保所有的沟通和决策对所有人开放,就能让社区快速发展。
Brockmeier还强调包容很关键,他最喜欢Apache软件基金会的做法,大家必须公开的计划行事,不能在私下里做出影响整个项目的决定。
认可也是必不可少的,你需要不遗余力地去承认人们的贡献。不管是市场部或问题回答者都很重要,要确保你认可他们的贡献,没有人是可以缺少的。
完整演讲传送门: