初级程序员如何开始为开源项目做贡献
对于初级软件开发人员来说,要跟上工作中需要学习的所有知识就已经够让人望而生畏了。那么,当你刚刚开始软件开发生涯时,该如何入门开源软件呢?
嗯……我花了整整一年半的时间,终于做到了。我从 Hacktoberfest 开始,在那里我找到了一个很棒的社区,可以从中学习,参与一些真正有意义的项目,并找到了一种充实而有意义的消磨空闲时间的方式。
我做到了,你也可以。
克服最初的几个难关
除非你足够幸运,已经知道一个非常适合你的项目(如果是这样,你为什么还要读这篇文章?快去贡献代码吧!),否则你几乎肯定会花费大量时间在你永远不会开始贡献代码的仓库上。
并非所有项目都拥有完善的架构和良好的文档。我曾浪费数小时试图在本地运行项目,急于投入其中并着手解决他们遗留的问题,结果却碰壁。
有时候,安装说明中会缺少某些步骤。或者,项目使用了某些复杂的技术,而这些技术与你的系统不兼容。又或者,维护者假定每个人都是专家,知道如何调试所有可能遇到的兼容性问题。
做好心理准备,不要放弃。如果你真心想为某个项目做贡献,但遇到了这类问题,请务必告知维护者!你或许能帮助他们改进文档。一旦找到适合自己的项目,一切付出都将是值得的。
但什么是“合适的项目”呢?
可能是一个符合以下部分或全部标准的仓库:
- 它的维护者很活跃,并与贡献者互动。
- 文档尚可(如有需要,提供贡献指南、设置说明和测试凭据),但仍有改进空间。
- 这些未决问题看起来并不像完全不知所云;它们提供了足够的细节,说明了需要做什么,你甚至可能已经找到了一个可以着手解决的问题。
- 你熟悉这套技术栈,或者能够快速掌握它。
- 你觉得这很有趣!
克服你的恐惧
别理会脑海里那些告诉你“你做不到”的声音。以下是我曾经最害怕的三件事,它们一度阻碍了我做出贡献。但事实证明,这些担心都是多余的。
- “我没有足够的经验做出有价值的贡献。”
胡说!市面上有很多项目需要完成各种大小任务。如果你找不到这类项目,第一步就是搜索这类项目beginner-friendly或good first issue相关的标签。
- “我不能贸然进入一个陌生的代码库!”
当然可以!你在工作中已经这么做过了。而且,如果你找到一个好项目,需要帮助的时候肯定会有人帮忙的。
- 人们会讨厌我的代码,并对我评头论足。
除非你碰巧遇到一个管理极其糟糕、一团糟的项目,否则这种说法绝对不成立。如果你的代码需要改进(代码通常都需要改进),你会获得宝贵的反馈,从而提升代码质量,并在过程中学习到很多东西。
参与贡献
好了,你已经完成了准备工作,也得到了鼓励,现在终于可以贡献力量了。以下是一些最后的建议:
- 请务必阅读贡献指南。这会让你的工作更轻松,也能让你的 PR 更快被合并。
- 维护者们非常忙碌,请尊重他们的时间。在等待 PR 反馈时,请耐心等待。
- 先尝试解决尚未解决的问题。尊重项目的优先级。
- 不要害怕提问!
Hacktoberfest 是个不错的入门方式,但开源项目全年都需要帮助。如果你已经考虑了一段时间但还没付诸行动,那就找一个你感兴趣的项目,从今天(或者尽快)开始贡献吧。作为一名初级开发者,你一定会从中受益匪浅。
文章来源:https://dev.to/metamoni/how-to-start-contributing-to-open-source-as-a-junior-1c9l