根据SayanChowdhury的说法,以下是人们在开始开源之旅时会问的常见问题:我如何开始我的开源之旅?我知道语言x、y、z,我应该参与哪个项目?如何筛选与我的技能水平相匹配的项目?在这篇文章中,我将尝试以非常简洁的方式回答这些问题。我还将提供一些资源,可以帮助您开始为您的第一个开源项目做贡献。1.什么是开源软件(OSS)?开源软件,顾名思义,源代码是公开的,所有人都可以修改和添加。这些软件是在各种许可证下发布的,例如BSD、MIT等。阅读优秀程序员编写的几行代码自然会提高您的编码知识,并可以帮助您了解良好的编码实践。2.开源JavaScript组件你可以选择从为开源社区做小贡献开始(不是一个完整的项目)。例如,从小型、独立的、公开可用的JavaScript组件开始。它们可以是纯JS/NodeJS或使用React、VueJS、Angular或任何其他流行的库/框架构建的基于框架的组件。Bit.dev是一个流行的组件中心,拥有超过34,000个开源JS组件。这是从小型开源项目开始并逐渐增加您的开源贡献的好方法。它使组件的消费者可以自由使用特定组件而不是整个库。每当您构建一个值得共享的可重用组件(可能作为私人项目的一部分)时,您都可以使用Bit将其发布并记录在您自己的组件集合中。探索Bit.dev中共享的React组件3.如何为开源软件做贡献?许多人认为为开源软件做贡献就是编码。不仅如此,你还可以参与开源项目的线上线下推广、修复项目文档、编写或翻译文档等,这些都是为开源软件做贡献的方式,可以帮助开源项目的完善。下图概述了您可以为Mozilla的开源项目做出贡献的一些方式。4.为什么要投稿?您需要了解为开源项目做贡献可以提高您的技术技能。初学者可以从小事做起,例如修复错误、发送拉取请求、编写软件文档等。它们还允许初学者学习编写“干净的代码”,一种更具可读性和可维护性的代码。对于编程来说,有很多不同的标准可以遵循,不同的团队可能遵循不同的标准。当您从事开源项目时,您应该遵守该项目的规范。参与开源贡献的另一个好处是共同构建社区。您有机会成为志趣相投的社区的一员。如果您是自由职业者并且是活跃的社区贡献者,那么您很有可能会被潜在老板注意到。5.做出贡献之前要考虑的事情Maryna认为,在做出贡献之前,您应该记住三件事。编程语言:你应该选择一种编程语言来寻找开源项目,确保它符合你的技能和品味。项目类型:一旦你选择了你想要使用的语言,你应该关注你想要贡献的项目类型。所有的Github项目都根据Topic分类到不同的文件夹中。主题的一些示例是“安全”、“虚拟现实”、“文本编辑器”和“CSS预处理器”等。您可以滚动类别并选择您感兴趣的主题。项目的大小:需要注意项目的大小,比如VLC这样的项目因为非常大,不适合初学者,刚开始的时候建议不要使用大型的开源项目。一定要注意项目标签,尤其是那些标有“仅限新手”、“初学者”、“简单”的标签。6.我准备好了,接下来做什么?现在您已经了解了为开源软件做贡献的基础知识,让我帮助您开始使用一些资源,这些资源可以指导您使用您最喜欢的编程语言开发对初学者友好的项目。FirstTimersOnly(仅限新手)站点该站点托管了许多被认为“对新手友好”的开源项目,并提供教程以帮助您熟悉GitHub上的贡献工作流程。它还提供了许多小的附加功能,这些功能将帮助您在开源贡献中迈出令人满意的第一步。我们在Twitter上询问了人们第一次为开源项目做出贡献时的感受。答案是:是的,这很可怕。但非常值得!网站OpenSource.com包含一个“适合初学者”的开源项目列表,您可以从中选择开始。它还提供更多资源,例如OpenHatch,您可以在其中找到更多适合初学者的项目。https://opensource.com/life/1...TwitterProfiles有许多推特机器人,旨在转发带有“仅限新手”和“仅限新手”等标签的推文。这些机器人非常适合让这些推文定期出现在您的主页上,因此您可以在浏览Twitter提要时决定要为哪些项目做出贡献。这里有两个常见的twitter资源:YourFirstPR,first-timers-onlyGithubGithub有很多开源项目,目前有一些项目可以解决初学者友好的问题。它们要么按编程语言排序,要么按难度级别排序:AwesomeFirstPROpportunitiesBeginnerProjects一旦你确定了你想要贡献的项目,就可以开始了。这里有两个资源:为GitHub项目做贡献的初学者指南,仅供初学者使用有几个组织举办了激励您为开源做出贡献的竞赛,例如Hacktoberfest和Hacktitude。Hacktoberfest是由DigitalOcean和DEV举办的为期一个月的开源软件庆典。Hacktoberfest向全球社区的所有人开放。完成4次PR提交后,您将收到T恤和其他商品作为奖品。相信看完文章后,你已经有了一定的准备。希望你以后能为开源项目做贡献,为社区尽一份力。
