你可以为开源项目做的 6 种非代码贡献

目前还没有读者喜欢这篇文章。
Open in sky

Nasjonalbiblioteket。由 Opensource.com 修改。CC BY-SA 4.0

为开源做贡献吧!这将为你的简历增色!这是一项令人欣慰的工作!

你可能在职业生涯中多次听到人们说过这些或类似的话。他们没有错——为开源做贡献在多个方面都是一项有益的努力——但是,当软件工程师建议其他软件工程师为开源做贡献时,他们通常指的是代码贡献。这是一个合理的假设,但现实情况是,有很多机会在不编写一行代码的情况下为开源做贡献。

如何做到呢?让我们来看看一些为开源做贡献的非代码机会。

布道/宣传

为开源做贡献的非代码方式通常包括为项目进行宣传。如果你喜欢最新的 JavaScript 绘图库,并将其用于所有数据可视化需求,请考虑在技术讲座中分享你的专业知识。这是建立个人声誉和吸引更多用户加入项目的好方法。

报告错误

更多用户意味着更多错误报告。更多错误报告意味着更多错误修复。更多错误修复意味着更好的软件。没错!你现在已经间接但有意义地为软件的改进做出了贡献,而没有编写一行代码。

指导

有时,这些错误报告可能有点...嗯,缺乏相关信息。项目的核心开发人员可能需要很长时间才能与错误报告的作者合作,才能充分理解问题的范围。这些宝贵的时间可以用来专注于项目的开发。这就是你可以发挥作用的地方!指导首次提交错误报告的作者完成编写良好错误报告的过程是一个有价值且细致入微的过程,可以为任何开源项目的核心团队节省很多麻烦。这可能涉及到你编写少量代码,但理想情况下,你应该指导另一位开发人员完成整个过程。

写作

现在,如果你不喜欢公开演讲,也不喜欢错误(我不能责怪你),你可以以开源的名义写文字,而不是代码。关于特定项目的 informative 博客文章很有用,并且再次吸引更多用户加入项目(以及随之而来的所有好处)。如果博客文章对你来说工作量太大,请考虑在邮件列表、StackOverflow 或 Twitter 上回答有关该技术的问题。这不仅是发展你自身技术知识的好方法,也有助于回馈关于该技术的集体信息库。

组织线下聚会

如果你像我一样是一位外向且痴迷的项目经理,你可能会考虑围绕特定的开源工具举办研讨会或在你所在的城镇发起 Meetup。这让你有机会围绕项目建立非数字社区。这些社区对于那些无法一直在线的人(是的,他们存在,是的,他们很重要)以及那些在与他人交流软件时更喜欢面对面交流的个人来说非常有价值。

提高安全性

最后,在一些开源项目中经常被忽视的是安全性。如果你有网络安全或安全测试方面的经验,请考虑贡献你的技能来改进项目。查找并修复安全漏洞是改进软件和项目用户体验的直接方法。

结论

我从不喜欢“开源”这个词,因为它迫使开发人员在字节、比特和 80 个字符宽的行的狭隘范围内思考。开源远不止于此。它关乎开放知识、开放共享、开放成长、开放学习、开放辩论和不断向前推进。大多数伟大的软件都不是在电脑前创造出来的,你没有理由通过文本编辑器和键盘来限制你为开源做贡献的能力。

User profile image.
Safia 是一位充满活力的软件工程师,对用于社会公益的数据科学、智能界面和优质咖啡感兴趣。在 Twitter 上关注她。她是 dsfa 的创始人兼无畏的领导者,dsfa 是一家旨在为小型企业提供数据科学服务的专业服务创业公司。

6 条评论

嗯,我可能带有偏见,但我喜欢“开源”这个词——是不是很令人震惊!

我认为最让我沮丧的术语是“开发人员”。在软件社区中,“开发人员”最常与软件开发联系在一起,但“开发”实际上在其他领域也很常用,并且包括直接适用于开源社区的角色。

想要帮助项目找到新成员并促进参与...
社区发展:“社区成员齐心协力,采取集体行动并为共同问题提出解决方案的过程。” - 联合国 (http://unterm.un.org/DGAACS/unterm.nsf/8fa942046ff7601c85256983007ca4d8…)。

你项目/社区中的人们是否尽可能地协同工作...
组织发展:“致力于扩展人们的知识和效能,以实现更成功的组织变革和绩效。” - 维基百科 (https://en.wikipedia.org/wiki/Organization_development)

开源项目也需要资金...
发展(筹款):“随着时间的推移,在捐赠者/慈善家与我们代表的组织或事业之间建立持续、强大和终生的联系。” - Campbell & Company (http://www.campbellcompany.com/news/bid/105288/Fundraising-vs-Developme…)。

认为你的项目和专有选项一样好...
品牌发展:“改进品牌或提升客户对品牌的知识和看法的过程” - 剑桥词典 (http://dictionary.cambridge.org/us/dictionary/english/brand-development)。

寻求寻找商业合作伙伴...
业务发展:“从客户、市场和关系中为组织创造长期价值。” - 福布斯 (http://www.forbes.com/sites/scottpollack/2012/03/21/what-exactly-is-bus…)

想要帮助你的程序员或用户更多地了解该项目...
培训和发展:“关注旨在提高组织环境中个人和群体绩效的组织活动。” - 维基百科 (https://en.wikipedia.org/wiki/Training_and_development)

所有这些角色在推动项目发展中都发挥着重要作用,应该像编写软件的人员所做的有价值的工作一样受到重视。因此,我始终努力认可和拥抱 *所有* 创建开源软件的开发人员。

谢谢,
Patrick

我个人正在努力进入编写代码和编程的世界。我下载了一些书(pdf 格式!),我从头到尾都读完了,但我仍然不知道如何“编码”!现在我都开始怀疑,是不是因为我 44 岁了,所以年纪太大了,不适合编码?...要么就是我必须找到一些实际的课程来教我我想学的东西(Ruby...Python...SQL...也许还有 HTML5?...我真的不确定...)我真正想要的?...是有一个机会为某个程序或应用程序做出贡献,并有所作为...(更不用说我听说开发人员和程序员短缺...所以可能能赚到不少钱?...)

我总是从视频课程中比从书中获得更多。也许可以尝试一下视频课程。

回复 ,作者:Eddie G. (未验证)

嗨 Safia,

我非常喜欢你文章的结论。我想对此做一个简短的评论。你说你从不喜欢“开源”这个词,这让我想起了... Richard Stallman ;) 自由软件运动之父。我为什么要进行这种比较呢?因为这就是这篇文章中实际缺失的内容:请说“自由软件”来强调自由和社区的重要性。自由软件是一场社会运动;它是一个为计算领域的自由而奋斗的人们组成的社区。是的,我们也有开发人员 :)

恕我直言,开源是朝着正确方向迈出的一步,但远未达到最终目标,即自由软件。

回复 ,作者:Konrad Talik (未验证)

不使用“非代码”这个术语怎么样?有没有觉得这种语言不够包容?它传达了贡献代码是最高级别的贡献,而其他一切都是次要的。不如直接说“你可以做的 6 种贡献...”?

Creative Commons License本作品采用知识共享署名-相同方式共享 4.0 国际许可协议进行许可。
© . All rights reserved.