如何成为一名committer,你真的需要它吗?

你好! 我的名字是德米特里·巴甫洛夫,我在 网格增益,也是 Apache Ignite 的提交者和 PMC 参与者以及 Apache Training 的贡献者。 我最近在 Sberbank 开源聚会上介绍了一位提交者的工作。 随着开源社区的发展,越来越多的人开始产生疑问:如何成为committer,承担哪些任务,需要编写多少行代码才能获得这个角色。 当我们想到提交者时,我们立即想到的是无所不能、无所不知的人,头上戴着王冠,拿着一本《干净代码》而不是权杖。 是这样吗? 在我的帖子中,我将尝试回答有关提交者的所有重要问题,以便您了解您是否真的需要它。

如何成为一名committer,你真的需要它吗?

所有开源社区的新人都认为他们永远不会成为提交者。 毕竟,对于许多人来说,这是一个享有盛誉的角色,只有通过编写大量代码才能获得特殊的功绩。 但事情没那么简单。 让我们从社区的角度来看看committer。

谁是提交者?为什么需要提交者?

当我们创建一个新的开源产品时,我们总是允许用户使用和探索它,以及修改和分发修改后的副本。 但是,当发生带有更改的软件副本不受控制的分发时,我们不会收到对主代码库的贡献,项目也不会开发。 这就是需要提交者的地方,提交者有权收集用户对项目的贡献。

为什么要成为一名提交者?

让我们从这样一个事实开始:承诺对于简历来说是一个加分项,对于编程领域的初学者来说,这是一个更大的加分项,因为在申请工作时他们通常会要求提供代码示例。

提交的第二个毫无疑问的优势是有机会与顶级专家进行交流,并将一些很酷的想法从开源中引入到您的项目中。 另外,如果你很了解某个开源产品,你就可以在支持或使用它的公司找到一份工作。 甚至有一种观点认为,如果不参与开源,就无法获得较高的职业职位。

除了事业和就业方面的好处之外,承诺本身也是令人愉快的。 您受到专业界的认可,您清楚地看到自己的工作成果。 与某些公司开发不同,有时您甚至不明白为什么要在 XML 中来回移动字段。

在开源社区中,您可以遇到 Linus Torvalds 等顶级专家。 但如果你不是这样,你就不应该认为那里没有什么可做的——有不同级别的任务。

嗯,还有额外的好处:例如,Apache 提交者可以获得免费的 IntelliJ Idea Ultimate 许可证(尽管有一些限制)。

怎样才能成为一名提交者?

这很简单——你只需要承诺。

如何成为一名committer,你真的需要它吗?

如果您认为项目中没有任务给您,那您就错了。 只需加入您感兴趣的社区并做它需要做的事情即可。 Apache 软件基金会有一个单独的 海德 对提交者有要求。

你需要解决什么问题?

种类最多——从开发到编写测试和文档。 是的,是的,社区中测试人员和文档人员的贡献与开发人员的贡献受到同等重视。 有一些非标准任务 - 例如,运行 YouTube 频道并告诉其他用户您如何使用开源产品。 例如,Apache 软件基金会有一个单独的 страница,其中指示需要什么帮助。  

我需要编写一个大功能才能成为提交者吗?

不。 这完全没有必要。 提交者不必编写大量代码。 但如果你写了一个大功能,项目管理委员会会更容易评估你。 对社区的贡献不仅仅是功能、编程和测试。 如果你写信谈论一个问题,提供一个合理的解决方案——这也是一种贡献。

重要的是要明白,承诺与信任有关。 是否让你成为提交者是由像你这样的人根据他们对你作为一个给产品带来好处的人的看法来决定的。 因此,您需要通过您在社区中的行动和行为赢得这种信任。

如何表现?

要有建设性、积极、礼貌和耐心。 请记住,在开源中,每个人都是志愿者,没有人欠任何人任何东西。 他们不会回答您 - 等待并在 3-4 天内提醒您问题。 他们并不总是回答你——好吧,开源是自愿的。

如何成为一名committer,你真的需要它吗?

不要要求别人为你或为你做某事。 经验丰富的社区成员对此类“乞丐”有一种本能,并立即对那些想把工作推给他们的人过敏。

如果你得到帮助,那很好,但不要滥用它。 你不应该写:“伙计们,解决这个问题,否则我将失去年度奖金。” 最好询问您下一步应该去哪里,并告诉我们您已经发现了有关此错误的内容。 而且如果你承诺根据解决问题的结果更新 wiki,那么他们回答你的可能性就会大大增加。

最后,阅读 行为准则 并学习 去问问题.

如果你不是committer,如何贡献?

项目通常使用 RTC 方案,首先对所有内容进行审查,然后将更改合并到主版本中。 通过这个计划,绝对每个人都会接受审查,甚至提交者也是如此。 因此,您无需成为提交者即可成功为项目做出贡献。 为了更容易被选为新的提交者,您可以指导新的参与者、分享知识并创建新材料。

多样性——好处还是坏处?

多样性——根据 Apache 软件基金会的理解,这尤其是指由多家公司参与的开源项目的参与者的从属关系。 如果每个人都只隶属于一个组织,那么随着对项目失去兴趣,所有参与者都会很快逃离它。 多样性提供了长期、稳定的项目、参与者的多样化经验和广泛的意见。

为了爱情还是为了方便?

在开源项目中,有两种类型的人:在为该产品做出贡献的组织中工作的人,以及为爱而在这里工作的人,即志愿者。 哪一个更有生产力? 通常,支持来自贡献组织的产品的参与者。 他们只是有更多的时间和明确的动机来探究真相,他们专注于任务并更接近用户。

那些“出于爱”而这样做的人也有动力,但方式不同——他们渴望研究这个项目,让世界变得更美好。 而恰恰是这样的参与者更加稳定、更加长远,因为那些主动来到社区的人不太可能有一天离开社区。

如何在生产力和稳定性之间找到平衡点? 有两种选择。 第一种选择:当参与者在正式参与该开源项目的公司工作时,并出于自己的兴趣在其中做一些额外的事情 - 例如,支持新人。 第二种选择是已经进行开源转型的公司。 例如,当员工每周四天从事主要业务项目时,其余时间则从事开源工作。

提交者——存在还是不存在?

如何成为一名committer,你真的需要它吗?

提交是一个很好且有用的主题,但您不应该专门努力成为一名提交者。 该角色不是基于代码的角色,并且不会展示您的知识。 唯一重要的是专业知识,即你通过研究项目、钻研项目、帮助别人解决问题而获得的知识和经验。

来源: habr.com

添加评论