diff --git "a/\347\254\254\344\272\224\347\253\240 \345\274\200\346\272\220\347\244\276\345\214\272\345\217\221\345\261\225\347\216\260\347\212\266.md" "b/\347\254\254\344\272\224\347\253\240 \345\274\200\346\272\220\347\244\276\345\214\272\345\217\221\345\261\225\347\216\260\347\212\266.md" index 2e72b73dd40b241807a5206db42d86b61557b3a1..a9180eacab36cecb408898ab7dcd06405ceb27fa 100644 --- "a/\347\254\254\344\272\224\347\253\240 \345\274\200\346\272\220\347\244\276\345\214\272\345\217\221\345\261\225\347\216\260\347\212\266.md" +++ "b/\347\254\254\344\272\224\347\253\240 \345\274\200\346\272\220\347\244\276\345\214\272\345\217\221\345\261\225\347\216\260\347\212\266.md" @@ -120,3 +120,78 @@ GitCode,Gitee,Gitea,Gitlink,Coding 简介:Coding是深圳市腾云扣钉科技有限公司推出的产品,其重点面向团队和企业的代码协作开发服务。Coding的项目管理包含任务、讨论、文件等功能,支持多成员协作,并且深度集成了代码仓库的操作与状态。 ## 4.3 中国开源社区发展的挑战和趋势 + + + + + +## 第五章:开源社区发展的现状 + +开源社区是开源发展过程中非常重要的一环,其能够将开源项目和开发者连接起来,通过打造良好的开发者环境,让开发者参与到开源项目的发展中,诸如引导开发者使用开源项目,并反馈在使用过程中遇到的问题;指导开发者进行文档、代码级别的贡献。开发者的积极参与能够推动开源项目的快速发展,构建起强大的生态,因此开源社区也是很多开源项目、企业/组织投入精力进行建设的领域。 + +伴随着近些年开源在国内的火热,国内开源社区取得了一定的发展。从社区的类型、数量、运营方式等方面都有所反映。 + +## 开源社区的类型 + +国内的开源社区目前大体分为以下几类: + +- 以开源项目为支撑,开源企业为背书的社区 +随着开源热潮在国内的蔓延,加上政策的支持,近些年国内涌现出了大量的开源项目。而且大部分开源项目都聚焦在基础软件领域,比如操作系统层面的鸿蒙和欧拉,中间件层面的 TiDB、Apache Pulsar,应用交付层面的极狐GitLab、KubeSphere 等。其中有些项目捐赠给了基金会,比如开放原子基金会、CNCF(根据 CNCF 统计,目前有大约 25% 的开源项目由中国企业主导并捐赠)、LFAI & DATA 等。这些项目背后都有对应的社区,也有对应的企业做支撑。 + +这类社区的共同点是,希望通过社区运营的一些手段,聚集更多的开发者,和开发者一起将项目打造成顶级开源项目。 + +- 以热门技术为重点,众多爱好者为支撑的社区 +这类社区不以具体公司为背书,主要由来自各个领域的开发者组成,主要目的是推广某些最新的技术和理念。典型的如 DevOps 社区、云原生社区等。这类社区的共同点是核心组织成员往往是比较早接触这一类技术和理念的人员,具有很高的热情,而且在这一领域通过一定的积累,具备了一定的声望。前期依靠自身努力做推广工作,陆续聚集了一批志同道合的爱好者,最后逐渐演变为社区。 + +- 以行业诉求为目的,众多企业参与的社区 +这类社区是想通过众多企业的参与,来打造一个中立的组织,大家协同达成行业的某些共识,比如 Open Island 社区。 + +## 开源社区的运营现状 + +目前各类开源社区,都会通过一些运营手段来推广开源项目、建设开发者生态,而且以企业为背书的开源社区还有全职的运营人员。目前可见的运营手段有: + +- 举办活动 +这是最常见的一类运营手段。通过活动来搭建与开发者直接交流的平台,能够让开发者了解开源项目的最新发展、最佳实践,同时也能够吸引到一些对此开源项目感兴趣的开发者或企业,参与到开源项目的具体研发中,通过代码贡献来推动开源项目的发展。 + +活动分为纯线下、纯线上或者线下线上相互结合这几类。这类活动主要是围绕某一个特定主题进行话题分享,以讲师分享、观众聆听为主。比较常见的如 Meetup、Days 或者 Summit 等。时间可能是半天、一天或者数天,参与人员从几十到成百上千。 + +- 内容共创 +通过文章征集的方式来吸引开发者撰写与对应开源项目有关的文章。文章大多聚焦在开源项目的具体使用或与其他产品的集成方面。开发者撰写的文章往往与实际场景使用有关,对于开源项目来讲能够扩大使用场景,帮助到更多的开发者。 + +比如极狐GitLab 101 活动,就是一个较长周期的与开发者内容共创的活动。 + +- 工作坊 +工作坊强调的是动手实践。目的是希望参与者能够通过亲自动手实践来对于项目功能有一个更加深刻的认知。对于此类活动活动组织者往往会提前设定工作坊的主题、流程,参与者需要根据提前设定的流程,动手完成整个实践。相比于主题分享(讲师讲、观众听),工作坊的受众更加聚焦,基本是对于项目更感兴趣或者已经再用的开发者,当然这种活动对于参会者的要求比较高,参会者需要具备一定的技能。 + +- 黑客松 +黑客松是一种难度非常大的活动。通常是围绕给定的主题范围,在规定的时间内(通常可能是 72h),参与者需要通过编码来打造一款可运行的产品。这类活动对于参会者的技能要求是顶级的,不仅需要参会者熟悉与设定主题相关的领域,此外还需要具备一定的编码技能,因此此类活动往往是团队作战,多人组成一个团队,通过分工、协作,在参赛时间内完成作品。 + +黑客松活动的产出有可能是一款真实可运行的产品,后续可以继续孵化打磨,成为优秀的产品。 + +## 开源社区面临的挑战 + +目前,大多数开源社区都配备专职的运营人员,通过一些运营手段,来维护和开发者的关系。但是运营充满挑战。具体表现为: + +- 社区地位尴尬,并未得到重视 +按照 Community Over Code 的理念,社区在开源项目的发展中起着至关重要的作用。但是目前看,国内的开源社区在公司内部的位置略显尴尬。社区通常隶属于市场部,用市场部的惯常思维进行管理。仅仅将社区作为一个对外发声的通道,通过组织一些常规活动来向外展示项目相关的内容,属于“单向输出”,很难让开发者在社区找到归属感,并且参与建设。 + +- 主要聚焦国内,并未走向国际 +目前国内的开源社区主要聚焦在国内发展,围绕国内开发者进行项目推进与生态建设,并没有发展成为连接全球开发者的桥梁。项目的文档是中文,没有英文版本,项目的 Issue、PR 也都以中文为主,和开发者沟通的渠道是微信群,不是 Slack 等。这些手段无法让国外开发者了解、熟悉开源项目,进一步阻碍了开源项目的全球化。 + +- 将开发者社区作为商业获客手段 +以传统运营模式、运营思维进行社区的运营。将开发者当作潜在客户,将开发者活动当作商业获客的一种方式,以获客为导向来设置活动举办城市、活动主题、讲师邀请等,活动中容易演变为客户站台、自身产品的推介会。此外,还存在过分收集参会者的个人信息的现象,通过这些信息描述潜在客户信息,并且通过电话、邮件方式进行产品营销。 + +- 运营手段雷同,难以破圈 +绝大多数运营手段都以活动举办、内容共创为主。而且活动基本围绕北上广深杭等一线、新一线城市展开。每个社区的运营方式都很类似,并没有特别亮眼的模式来进一步吸引开发者参与。 + +- 存在不合理的 KPI 设置 +以 KPI 的方式衡量运营的成果,这就导致了极容易设置一些不合理的 KPI,比如在发起一些活动时,会要求参与者在 GitHub 上对既定项目进行 Star、Fork 等操作,甚至通过发送项目周边或者其他小礼物的方式来引诱参会者进行 Issue 的创建等,进而造成一种开源项目繁荣发展的假象。 + +- 口号大,行动少 +社区运营的口号大多围绕“开源共建”,期望通过开发者的参与(代码贡献、文档贡献等)来共同打造开源项目,但是却缺少对应的流程,诸如完整的贡献指导文档,帮助开发者了解贡献的路径;详细的项目文档,帮助开发者更深入的了解项目。流程的缺失让开发者参与的门槛大大提高,共建变成了难以落地的口号。 + +- 开源专业运营人才的缺失 +开源专业运营人员,除了需要具备运营能力(活动策划、组织),更重要的需要对于开源、开发者、项目本身、行业发展都有较为深刻的认识,既能够和开发者有共同语言,理解开发者的话术,又能够围绕项目本身的特点、发展方向策划合适的活动,来让开发者和项目在“双向奔赴”中达到双赢局面。目前看,这类型的人才是极度缺乏的。 + + +