在今年的北美 DrupalCon 上,EPAM 解决方案架构师 John Picozzi 发表了关于非代码贡献重要性的演讲。他谈到每个人可以参与非代码贡献,以及为什么他认为这个话题很重要。本文是 John 演讲的文本改编;在下方可以找到在 DrupalCon 上完整演讲视频的链接。
【资料图】
什么是非代码贡献?我问了谷歌这个问题并得到了以下答案:“任何有助于开源项目但不涉及编写代码的贡献。”谷歌,听我说谢谢你,但这点我早就懂了。如果你要我深入挖掘,我会说非代码贡献意味着你提供个人的时间、技能和资源来使项目受益。
谁能成为开源贡献者?早期,“贡献”意味着编写代码。 最初,Drupal 的运行模式是“由开发者构建,为开发者服务”。然而,多年来,Drupal 社区已经转变了这种思维方式。我们的社区已经学会像重视代码一样重视非代码贡献:任何贡献都是贡献。
开源是在聚会、训练营和大会中建立的;它是由社区建立的,建立于社区之中。事实上,这些活动中的大部分贡献都与编程无关。要举办这些活动,你需要的是参与者、演讲者、培训师和组织者。不要误会我的意思:当然,开源社区仍然需要编写代码的人,但这并不是唯一需要的东西。如果你参与社区,分享想法、提出问题或提供帮助——恭喜你,你已经在做出贡献了!
“贡献者”是自我称号(“我是贡献者”)还是社区赋予(“我们说你是贡献者”)?可以肯定地说,每个人都是贡献者:会议参加者、创建 UI 和模块徽标的设计师、帮助市场推广模块或活动的营销人员等等。不要等待别人给你那个称号。你可以参与其中,并自信地告诉其他人你是贡献者。
有很多方法可以激励别人(或你自己)做出贡献。金钱并不总是最重要的激励因素。但是,有时贡献可以是有偿工作。许多人做出贡献只是因为他们想回馈社区。
当被问及为什么做出贡献时,每个人可能会给出与同伴不同的答案,但以下是一些最常见的回答:
它让你感觉良好建立和提高技能职业发展建立人际关系/网络这个列表无穷无尽,并且与贡献者本身一样多样化。每个贡献者都有自己的理由,没有正确或错误的回答。
为开源做出贡献的原因
为什么非代码贡献对开源很重要?对于项目的健康运转,非代码贡献与编写代码一样有价值。它有助于让更多具有各种技能的人参与社区。每个人都可以提供一些东西,也可以分享一套独特的技能。
所有项目都有非代码要求,并不是每个人都是开发人员或编码人员。此外,不同的观点都应该得到表达。例如,营销人员可能与开发人员有不同的经验和观点。每一项努力都以某种方式推动开源向前发展——这就是为什么非代码贡献是必不可少的原因。
常见的挑战贡献的定义可能听起来很简单:只需分享你的知识、表达你的想法并帮助社区即可。然而,贡献者面临着一些挑战。最常见的一种是“冒名顶替综合症imposter syndrome”(自我怀疑情绪)。不太有经验的贡献者可能会担心他们的贡献没有价值或没有帮助。你可以通过专注于自己的特定技能和热情来克服这种感觉。例如,如果你有组织活动的经验,你可以利用这个经验专注于组织活动和在活动中帮忙。
为了克服这些消极的想法,你可以将贡献转化为一种积极的体验。工作/生活/贡献的平衡很重要。贡献应该是愉快的,而不只是另一份工作。如果可以,请把你的贡献成果用在你的日常工作中。 许多雇主鼓励你做出贡献并从中受益,你甚至有可能基于自己做出的贡献建立职业。
不要让自己筋疲力尽,不停在晚上和周末做出贡献。你只需要在一天的开始或结束时增加 30 分钟的贡献时间,或者如果可能的话,将贡献纳入你日常工作中即可。
如何做出你的第一个非代码贡献?看到这里,我希望你已经开始思考,“好的,我准备好了。我要做些什么?” 你该如何参与?去做就对了!你只需要开始:例如,开始在 Drupal 社区中做出贡献,去问题队列或Drupal 聊天那儿提问,或者联系活动组织者寻求建议。整个社区都在等着支持你呢。
一张幻灯片,上面展示了许多 Drupal 社区项目徽标,包括区域性 Drupal 聚会、Drupal 咖啡、Drupal 人才和教育, 表明参与社区项目有着大量和广泛的机会。
请记住遵从自己的技能和兴趣。你已经拥有了技能和兴趣,请用它们来激发你的贡献。你的兴趣可能和你的技能不同:有些事情可能你几乎没有经验但却一直想了解更多,你也可以决定为此做出贡献。单纯地与人交谈、分享知识、提出问题、参加聚会或线下见面,并做出贡献。
我想引用玛格丽特·米德(美国人类学家)的话来结束对我的开源贡献的完美描述:“永远不要怀疑一小群有思想、有奉献精神的公民可以改变世界。事实上,世界的改变只能依靠这个了。” 米德博士并没有说“一小群代码编写者或开发人员”。 她说,这是一群有思想、有奉献精神的公民——他们有着极大的热情和许多不同的技能。这就是开源的动力,也是 Drupal 的动力。
完整视频可以在YouTube上观看。
(题图:MJ/2d680e28-3cb4-4644-896b-a406ba3b596e)