成功打造一个开源软件的秘诀在于开源社区

指针潮汐
• 阅读 3661

成功打造一个开源软件的秘诀在于开源社区

健康的开源软件项目不能一蹴而就,应该慢慢培养。而培养的秘诀就在于开源社区的建设,如何吸引开源开发者?如何留住开源开发者?如何规避和解决与开源开发者的冲突?如何保持社区发展?以上这些问题是建设开源社区时不得不面对的,

Joe Brockmeier(红帽)在LinuxCon北美大会上分享了丰富的实践智慧值得我们学习。

包容是关键

社区这个词出现的频率不断升高,很多人对它只有一个模糊的概念:「构建社区是一件好事」。

但它到底意味着什么呢?Brockmeier 说:「我与许多不同的公司和项目合作过,他们经常表达出想要一个社区」,当我问道:「你想要什么样的社区?哪类人是你的目标人群?谁对你很重要?社区努力的方向是什么?」他们又往往不能回答。

所以我认为我们需要明确知道项目目标是什么,因为对于不同的项目,目标往往差距很大。比如,有些公司真的不是那么在意在公司之外保留一个核心贡献者社区,但他们非常在意拥有很多用户。如果你建立一个社区是为了吸引用户,那和建立一个吸引核心贡献者的社区完全不一样。

任何软件项目,无论它多么小,也需要专门的贡献者来补充编码以外角色。如代码审查员、文档编写者、Bug发现者、Bug修复者、社区问题解答者、代码打包者、系统管理员和营销人员,也许还需要一些艺术家。

总的来说吸引和留住贡献者并不难,只要认真执行一些计划,比如,有导师为新贡献者铺平道路,认可所有贡献者的所有贡献,确保所有的沟通和决策对所有人开放,就能让社区快速发展。

Brockmeier还强调包容很关键,他最喜欢Apache软件基金会的做法,大家必须公开的计划行事,不能在私下里做出影响整个项目的决定。

认可也是必不可少的,你需要不遗余力地去承认人们的贡献。不管是市场部或问题回答者都很重要,要确保你认可他们的贡献,没有人是可以缺少的。

完整演讲传送门:

https://youtu.be/62MD7Kj3LQ4

成功打造一个开源软件的秘诀在于开源社区

点赞
收藏
评论区
推荐文章
Oracle 分组与拼接字符串同时使用
SELECTT.,ROWNUMIDFROM(SELECTT.EMPLID,T.NAME,T.BU,T.REALDEPART,T.FORMATDATE,SUM(T.S0)S0,MAX(UPDATETIME)CREATETIME,LISTAGG(TOCHAR(
Wesley13 Wesley13
4年前
MySQL部分从库上面因为大量的临时表tmp_table造成慢查询
背景描述Time:20190124T00:08:14.70572408:00User@Host:@Id:Schema:sentrymetaLast_errno:0Killed:0Query_time:0.315758Lock_
Stella981 Stella981
4年前
Rancher开源Harvester:基于K8s的超融合基础架构软件
2020年12月17日,业界应用最为广泛的Kubernetes管理平台创建者RancherLabs(以下简称Rancher)宣布推出全新开源软件Harvester,一个通过Kubernetes构建的超融合基础架构(HCI)软件。!图片(https://img.rwimg.top/7592_5649bc00e54d4b30a1419db9c4
Stella981 Stella981
4年前
Elasticsearch和Kibana变更开源许可协议;Facebook利用AI增强为视障人士描述照片能力
\_开发者社区技术周刊\_又和大家见面了,快来看看这周有哪些值得我们开发者关注的重要新闻吧。!(https://static001.geekbang.org/infoq/0e/0ef0749d6a02848951b542a9d8828656.webp)京东科技主导的开源项目ShardingSphere荣登国人主导开源项目活跃度第五
Wesley13 Wesley13
4年前
2019 年 CNCF 中国云原生调查报告
!头图.jpg(https://ucc.alicdn.com/pic/developerecology/6db0c465111b4d9a96eb1ffe85c00e7a.jpg)中国72%的受访者生产中使用Kubernetes在CNCF,为更好地了解开源和云原生技术的使用,我们定期调查社区。这是第三次中国云原生调查,以中文进行
Wesley13 Wesley13
4年前
FLV文件格式
1.        FLV文件对齐方式FLV文件以大端对齐方式存放多字节整型。如存放数字无符号16位的数字300(0x012C),那么在FLV文件中存放的顺序是:|0x01|0x2C|。如果是无符号32位数字300(0x0000012C),那么在FLV文件中的存放顺序是:|0x00|0x00|0x00|0x01|0x2C。2.  
Stella981 Stella981
4年前
Jenkins 中文社区携手 KubeSphere,共建 DevOps 技术生态
!(https://oscimg.oschina.net/oscnet/54abc0a046b84f114af65d731da9da3f23f.png)1重磅!!!官宣来了今天,Jenkins中文社区与KubeSphere开源社区联合官宣,两大开源社区开始正式合作,携手共建DevOps技术生态
Wesley13 Wesley13
4年前
mysql设置时区
mysql设置时区mysql\_query("SETtime\_zone'8:00'")ordie('时区设置失败,请联系管理员!');中国在东8区所以加8方法二:selectcount(user\_id)asdevice,CONVERT\_TZ(FROM\_UNIXTIME(reg\_time),'08:00','0
Easter79 Easter79
4年前
Tiny官网的变迁
开源交互社区建设的变迁Tiny框架开源也快5年了,做开源其实也是在做社区,那么一个开源社区怎么样构建实际上也是一个非常重要的问题,不同的交互方式,可能直接导致最终开源社区的成熟度如何。最早的Tiny开源框架采用QQ群的方式进行交互,博客相关的内容在开源中国来进行展示。!(https://static.oschina.n
Stella981 Stella981
4年前
Flutter Dojo设计之道——利用Github打造完善的开源项目
FlutterDojo从最开始就准备打造成一个专业的GitHub开源项目。一个好的GitHub开源项目,不仅仅是一个开发者专业技术的体现,更是一个自我展示的平台,专业的GitHub开源项目,可以吸引更多的开发者参与到项目的协同开发中来,让项目能够健康持续的发展。下面我将根据FlutterDojo的开发经历,来讲下如何借助GitHub打造完善的开源
陈哥聊测试 陈哥聊测试
1年前
5W1H聊开源之What——开源协议有哪些?
开源许可协议是指开源社区为了维护作者和贡献者的合法权利,保证软件不被一些商业机构或个人窃取,影响软件的发展而开发的协议。