简介:不管初衷是什么,Flink都非常欢迎大家一起建设和完善社区。在开始具体的贡献步骤之前,我们先简要介绍一下参与贡献的几种途径,以及Clarify关于开源贡献的一些固有印象。作者:伍翀(云邪),ApacheFlinkPMC,阿里巴巴技术专家整理者:陈婧敏(清樾)本文整理自ApacheFlinkPMC伍翀(云邪)直播分享,旨在为具备一定大数据基础、对Flink社区发展感兴趣的同学提供参与贡献的一些经验和流程。为什么要参与开源社区作为ApacheFlinkPMCmember的云邪根据自身经历总结了参与开源社区发展的三个主要原因。1.开源精神「自由」可谓是开源精神的核心,自由意味着世界范围内无拘无束的交流分享与思维的碰撞。云邪自述“拿我个人来说,我在大学阶段正好经历了Hadoop、Spark大火的阶段,那时候就特别憧憬做开源,特别崇拜能熟读源码的大神,特别希望自己有一天也能够写很多开源代码,让自己写的代码被上万的用户使用。所以对于我来说,参与开源就像是一个爱好一样,愿意为之付出时间和努力。我也很幸运地在毕业后就接触上了开源社区。”2.技术成长参与开源是提升个人代码质量的好方法。开源社区对于代码和设计要求非常高,不像一些内部项目相对随意。对于设计,Flink社区有一套专门的FLIP机制,任何重大的贡献都会经过公开和细致的讨论。对于代码,FlinkCTO亲自写了26页的Codestyle指南,此外每次提交PR后也会收到Committers的Review建议,所以持续地在开源社区里贡献代码,对于个人的系统思维能力和代码能力都有很大提升。3.职业规划如果你在准备跳槽或是公司内部晋升,除了现有的Title外,参与开源社区的经历绝对是一个加分项,因为开源产品本身就带有网红的标签,而参与其中则有助于提高自身的影响力结识同行业的大牛们。开源贡献除了能直接地反映你的代码能力外,成为Committer甚至PMCmember更能证明你的热情毅力沟通协作方面的Softskills(因为这需要你持续完成高质量的贡献,与社区其它成员共同协作,在有意见分歧的时候保持开放友好的态度_etc_.)。如何成为Contributor1.贡献途径不管初衷是什么,Flink都非常欢迎大家一起建设和完善社区。在开始具体的贡献步骤之前,我们先简要介绍一下参与贡献的几种途径,以及Clarify关于开源贡献的一些固有印象。说起开源贡献可能大家的直观反应就是贡献代码。不过在Flink社区中有非常多的参与贡献的方式,包括文档、翻译、答疑、测试、以及代码等,并且社区将文档贡献放在第一位,代码贡献放在最后。因为Apache社区对于代码贡献的态度是CommunityOverCode,FlinkCTO更是亲自发推说明代码贡献的“不重要性”。为什么呢?因为开源项目的良性发展并不是简单地依靠狂怼代码,没有社区的开源项目,其源码会一直停留在「孤芳自赏」阶段。“我有一个想法,这是我的代码”可能是最糟糕的贡献方式,因为在没有任何文档的情况下Committers不得不通过代码去尝试理解贡献者的意图,这种反向推导往往会耗费Committers和贡献者本人额外的时间精力,导致非常高的沟通成本和更久的代码合并周期。另一方面,缺少严格的代码审查机制和规范的PullRequst流程会导致开源代码的质量大幅降低,这就是为何小到发现typo、简单的bugfix都需要有一套完整的机制,而大到一个模块的重构、feature的新增更需要提供详细的设计文档、发起投票。这部分工作所占的比重非常高,所以真正到写代码的阶段是自然而然水到渠成的。而完善详尽的文档、及时准确的答疑、百花齐放的技术博客才能打造优质的社区生态,吸引更多的用户参与使用,进而反哺社区。拿最近成为Committer的Konstantin和Seth来说,他们提名的主要贡献就是文档,这也可以看出FlinkPMC委员会对于文档贡献的认可和重视,特别是贡献中文文档(翻译)的门槛相对较低,只要有一定英语基础文字表达能力即可,属于最适合初学者开始开源贡献的起步选择。Flink社区目前正在招募翻译者,下面也会详细介绍翻译的具体流程。2.准备工作订阅邮件列表Flink社区讨论主要通过邮件完成,所以参与贡献的第一步是加入到邮件列表获取最新的讨论信息。主要的邮件列表有用户邮件列表(_userflink.apache.orguser-zhflink.apache.org)和开发者邮件列表(devflink.apache.org)。关于邮件列表的更多信息可以参考
转载请注明:http://www.aierlanlan.com/rzgz/7404.html