构建可持续开源贡献习惯的实用指南

本文详细介绍了如何建立可持续的开源贡献习惯,包括目标设定、项目选择、时间管理、社区互动和工具使用等实用策略,帮助开发者系统性地参与开源项目并建立长期贡献机制。

如何构建可持续的开源贡献习惯

贡献开源项目听起来很有趣,直到生活琐事缠身。你会变得忙碌,忘记或者不知道从哪里重新开始。这就是为什么建立常规如此重要。不仅仅是为了打勾完成任务,而是因为一致性有着巨大效果:一个拉取请求会引发另一个,一条评论会变成对话,一次贡献会创造机会。让我们谈谈如何建立真正持久的贡献习惯。

以下是我们将涵盖的内容:

1. 定义你的动机和目标

在编写第一行代码或修复第一个拼写错误之前,先问自己:我为什么要这样做?

人们贡献开源项目有多种原因。有些人找到了新工作,建立了企业,或与大公司建立了合作伙伴关系。其他人赢得了奖项,获得了认可,或者只是享受成为协作社区的一部分。

例如,我的朋友Param参加了MLH Fellowship,通过与导师和同行一起工作来成长为软件工程师。从那时起,他的职业生涯开始腾飞。

也许你想提升技术技能,寻找导师指导,或者回馈一个帮助你成长的项目。无论你的原因是什么,把它写下来并明确它。

写下你的原因可以给你方向并保持动力。然后,将这个"为什么"转化为可衡量的目标:

  • 每周做一次贡献
  • 熟悉Python测试
  • 每月参加一次社区电话会议

明确的目标帮助你跟踪进度并专注于你的目标。

2. 选择合适的项目

从小处着手通常更好。与其向大型复杂项目提交第一个拉取请求,不如从修复拼写错误或改进文档等简单任务开始。

这种方法帮助你理解贡献过程,并给你信心以后处理更复杂的问题。

但随着时间的推移,手动检查每个GitHub结果以寻找合适的问题可能会变得 overwhelming。为了避免倦怠并节省时间,尝试使用First Contributions、Up For Grabs或CodeTriage等平台。这些平台帮助你发现正在积极寻找像你这样的贡献者的项目。

以下是每个平台的使用方法:

平台 使用方法
First Contributions 浏览主页上的项目库,选择带有你偏好语言标签的项目,开始贡献
Up For Grabs 浏览项目库,使用标签过滤项目,开始贡献
CodeTriage 在CodeTriage上注册,按语言过滤项目,访问项目GitHub页面并开始贡献

给初学者的一些建议:

  • 选择你真正感兴趣的东西。如果项目符合你的热情或长期目标,你更有可能保持参与并克服挑战。

  • 选择适合你当前水平但仍提供成长空间的项目。最佳点是你在不被压垮的情况下受到足够挑战来学习。

  • 寻找欢迎新手的项目。探索维护者如何回应问题和拉取请求。评论中友好、建设性的语气是他们重视和支持新贡献者的好迹象。

3. 创建一致的时间表

开源不必占用你的夜晚或周末。它只需要一个适合你日常生活的专用时间段,无论是晚餐后的30分钟、周六早上的咖啡时间,还是每周日晚上的一个任务。

即使你在处理一个大问题,也不必一次性花几个小时处理它。只需跟踪它并按自己的节奏进行。根据你找到问题的方式,可能还有截止日期。

使用时间阻塞或番茄工作法在那段时间保持专注。使用清单、GitHub活动图或Notion板跟踪进度。可见的连续记录可以保持你的动力强劲,并帮助你建立持久的势头。

4. 与社区互动

归根结底,从维护者到贡献者,是人类在运营开源项目。你互动越多,导航项目和找到有意义的贡献方式就越容易。

加入项目的Discord、Slack或邮件列表以保持更新并感受团队文化。评论问题,即使只是要求澄清或感谢某人的工作。尽可能参加社区电话会议或同步会议。

你还可以加入一般的开源社区,如Reddit上的r/opensource或The Programmer’s Hangout。

你不需要成为最响亮的声音。保持存在、尊重和好奇通常足以建立信任。如果你遇到困难,就问。许多维护者愿意指导那些表现出主动性和学习意愿的贡献者。

请求咖啡聊天,与专家联系并在通话中学习他们的经验。关注机会频道,获取工作、奖学金和功能机会。

如果你每周有两次咖啡聊天,那就是一个小时。每天增加15分钟用于发信息或帮助他人,总共150分钟。总的来说,你每周花大约2小时45分钟在社区建设上,这种小小的努力可以创造有意义的联系。

以下是你可以发送给在社区中互动过的人进行咖啡聊天的示例消息:

1
2
3
嗨[姓名],

我真的很喜欢你在[社区/项目名称]讨论中的见解,我想了解更多关于你的开源之旅。你这周或下周有时间进行15-20分钟的虚拟咖啡聊天吗?

5. 利用工具

无论你从事什么任务,工具都能让你的生活更轻松。幸运的是,这些工具大多是免费的,可以充当你的助手。

以下是一些真正有帮助的好工具(和一点自动化)。

跟踪

GitHub的贡献图和Notion清单等工具帮助你保持组织,避免丢失正在处理的内容。你可以创建一个简单的问题列表并随时更新状态,如"PR已创建"、“PR已审核"或"已合并”。看着列表增长给你清晰的进步感,即使步骤感觉很小。

如果你的时间表一致,在日历上安排定期的"开源时间",并将其链接到你的活动项目列表。这样,你总是知道下一步该做什么,而不必再三思考。

跳过设置麻烦

每次设置开发环境都感觉像是一件琐事,特别是如果你在项目之间切换或在轻量级机器上工作。像GitPod和Codespaces这样的工具通过在浏览器中启动一个即用型编码环境使这变得更容易。无需安装,没有混乱的配置。只需点击并开始。

在没有标签过载的情况下保持更新

跟上更新日志、发布说明和博客更新很快就会变得混乱。与其在标签之间跳转,不如使用像Feedly这样的RSS阅读器。它将所有内容拉入一个干净的feed中,这样你就可以在没有噪音的情况下保持循环。

用自己的开发空间升级

如果你要深入开源并需要托管贡献的测试版本,拥有自己的环境会使事情变得更容易。VPS(虚拟专用服务器)为你提供一个干净、灵活的空间,你可以:

  • 托管你正在贡献的项目的测试版本
  • 在不影响本地设置的情况下重现错误
  • 设置自己的CI管道或预览环境
  • 运行仪表板、webhook监听器或静态站点

你不需要任何花哨的东西来开始。一些最经济实惠和可靠的VPS选项包括InstanceHost、OVH和Hostinger。它们提供可靠的性能而不会烧钱。还有很多其他选择,但我个人使用过这三个并可以担保它们。

6. 通过结构化计划提升到新水平

如果你感到有动力并准备好承担更大的目标,考虑申请提供指导、结构和实际经验的开源计划。像OnlyDust、Outreachy、MLH Fellowship、Season of KDE和FOSSASIA Codeheat这样的计划帮助你在有经验的导师指导下从事有意义的项目,成长为贡献者。

这些机会通常会导致全职角色。许多参与者通过展示在这些计划中建立的技能和贡献,在顶级科技公司找到了工作。

以下是每个计划的工作方式:

  • OnlyDust: OnlyDust的"Wave"是一个月度计划,连接数千名开发者与精选的开源项目。随着你的贡献被合并,你获得认可,攀登排行榜,并建立你的声誉。
  • Hacktoberfest: 每年十月举行的为期一个月的开源庆祝活动。它鼓励首次贡献者进行有意义的拉取请求,同时与全球开源社区互动。
  • Outreachy: 针对科技界代表性不足背景的人的带薪远程实习。你在密切指导下为开源项目工作约三个月。
  • MLH Fellowship: 一个为期12周的远程计划,你与其他研究员在开源项目上合作。像Meta、GitHub和Amazon这样的合作伙伴公司通常赞助团队。
  • Season of KDE: 一个专注于为KDE项目贡献的指导计划。你与KDE开发者合作几个月,同时构建真实功能并获得反馈。
  • FOSSASIA Codeheat: 一个全球竞赛,贡献者在FOSSASIA项目上工作。它对所有人开放,包括指导、认可,有时还有工作推荐。

出现的长期价值

开源贡献起初可能看起来像免费工作,但从长远来看,它们可以打开成功职业生涯的大门。它帮助你在公共场合增长技能、建立网络并展示你的能力。有了正确的常规,你小而一致的努力可以带来大成果。

comments powered by Disqus
使用 Hugo 构建
主题 StackJimmy 设计