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

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

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

为开源做贡献!这会让你的简历看起来很棒!这是一项令人欣慰的工作!

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

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

布道

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

报告错误

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

指导

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

写作

现在,如果你不喜欢公开演讲,也不喜欢错误(我不能怪你),你可以以开源的名义写作,而不是编写代码。关于特定项目的 информативные 博客文章很有用,并且再次为项目吸引更多用户(以及随之而来的所有好处)。如果博客文章对你来说过于费力,请考虑在邮件列表、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本作品采用 Creative Commons Attribution-Share Alike 4.0 International License 许可。
© . All rights reserved.