学生如何开始贡献开源软件

暂无读者喜欢。
Doodles of the word open

Opensource.com

作为一名学生,参与开源是提高编程技能的好方法。根据我的经验,它甚至可以帮助你开启职业生涯。但是从哪里开始呢?又该如何参与呢?

我的开源之旅始于高中时代,那时我有很多空闲时间(并且常在 IRC 上)。通过那段经历,我学会了如何通过 IRC 和 Usenet 等通信媒体为开源做贡献。自那时以来,开源已经发展壮大,现在有更多正式的方式让学生参与开源。

面向大学生的项目

Google 暑期代码项目

Google 暑期代码项目 (GSOC) 是一个全球性项目,为学生提供津贴,用于为开源项目编写代码。学生参与者与开源项目导师配对,共同创建软件。除了获得报酬外,他们还在开源社区内建立联系。根据我的经验,这些联系可能会带来未来的就业机会。

有超过 100 个开源组织参与 GSOC,从 Apache 软件基金会Mozilla 等等。我认为这是学生开始参与开源的最佳项目之一。如果你有兴趣参与 GSOC,2016 年申请窗口将于 3 月 14 日开放。

Outreachy(前身为女性外展计划)

Outreachy 招募在自由和开源软件领域代表性不足的群体的人员,并指导他们完成首次贡献。该项目为初学者贡献者提供了一个支持性社区,并每年两次与许多自由软件组织合作提供重点实习机会。2016 年项目申请将于 2 月 9 日开放,3 月 22 日关闭。

Rails 暑期代码项目

Rails Girls 暑期代码项目 是一个全球性的奖学金项目,旨在为开源领域带来更多多样性。成功的女性申请者每月可获得津贴(7 月至 9 月),用于从事她们选择的开源项目。2015 年的项目 取得了巨大成功,共有 16 个团队参与。

Facebook 开放学院

Facebook 开放学院 (FOA) 项目旨在促进大学与开源组织之间的合作。FOA 在精神上与 GSOC 相似,但学生最终是通过参加普通的大学课程来参与。课程开始时会举办启动活动,所有参与方齐聚一堂,进行一个紧张的学习和黑客马拉松周末。启动活动结束后,学生们返回各自的大学,继续在虚拟团队中工作。导师在项目的剩余时间里继续为团队提供支持。每所大学的课程讲师定期与学生团队会面,审查进度。一些讲师会叠加一系列讲座,为学生提供进一步的学习机会。项目结束时,学生将获得评分。

大学俱乐部和项目

如果你在大学里,需要留意的一件事是看看是否有相关的开源俱乐部。例如,俄勒冈州立大学 (OSU) 设有 OSU 开源俱乐部,甚至还有一个 OSU 开源实验室;其他大学也可能有类似的俱乐部来帮助你参与开源。一些大学甚至正在将开源正式纳入辅修专业,例如,2014 年,RIT 推出了第一个开源软件 辅修学位

面向大学预科生的项目

Google 编程之夏大赛

对于年龄较小的群体,Google 编程之夏大赛 是一项年度编程竞赛,允许 13-17 岁的学生完成由各种开源组织指定的任务。这些开源组织包括 DrupalKDE,甚至 维基媒体基金会。在过去的五年里,来自 87 个国家的 2,233 名学生通过这项竞赛完成了 12,495 项开源任务。

完成一项任务的学生将获得证书,完成三项任务的学生将额外获得一件 T 恤。在比赛结束时,每个组织将选出两名学生作为特等奖获得者,他们将参观 Google 总部。

今年的 Google 编程之夏大赛已经开始,将于 1 月 25 日结束。

会议和旅行奖学金

参加与开源相关的会议是参与开源项目和社区的好方法。会议通常设有初学者入门环节,以帮助首次贡献者。你还有机会与提交者和社区成员建立联系。

不利的一面是,作为一名学生,经济状况很可能拮据。但从好的方面来说,有些会议为学生和代表性不足的群体提供旅行资助。PyCon,例如,有一个经济援助计划,StrangeLoop 有 机会资助。对于女性而言,Grace Hopper 大会每年都会提供你可以申请的 奖学金。如果你对 Linux 感兴趣,那么每届 LinuxCon 都会为学生提供大幅折扣的门票,并设有 多元化奖学金计划

这些只是我最喜欢的一些提供旅行资助或奖学金的会议。要获得更全面的列表,请参阅 OpenHatch wiki

寻找导师和初学者问题

参与开源的另一种方法是找到一位优秀的导师。在某些大型开源组织中,有正式的指导计划可以参与。例如,Fedora 项目有一个 导师列表,根据你的兴趣提供帮助。Mozilla 有一个很棒的网站,介绍了如何贡献和寻找导师以 参与其中。此外,Mozilla 还有一个很棒的 志愿者网站,供那些想要贡献设计或翻译技能(如果你不是程序员)的人使用。

还有一些开源项目将问题标记为对初学者友好。要找到它们,我强烈建议访问 OpenHatch 问题页面Up For Grabs 网站,或者在 issuehub.io 上搜索 GitHub 上的 初学者问题。作为奖励,请随时查看 24 Pull Requests 倡议,该倡议提供了在每年年底假期期间可以贡献的项目列表。

薪火相传

重要的是要记住,我们都曾是学生,每个人都在某个地方开始他们的开源之旅。如果你作为一名学生正在阅读本文,我希望你发现这些资源对入门很有用(请注意,还有比我列出的更多的项目)。如果你作为一名经验丰富的开源开发者正在阅读本文,请记住薪火相传,我们有责任花时间指导未来的开源开发者,并降低贡献的门槛。

标签
User profile image.
Chris Aniszczyk (@cra) 是一位开源主管和工程师,热衷于通过开放协作建设更美好的世界。他目前是 Linux 基金会的副总裁,专注于开发者关系,并负责运营开放容器倡议 (OCI) / 云原生计算基金会 (CNCF)。

9 条评论

初学者问题列表对于长期的开源用户/首次贡献者也很有帮助。感谢发布!

非常好的文章,感谢分享。我正在与教育技术朋友们重新分享。

作为一名学生,这篇文章非常有用,我一定会确保与我的朋友分享。

很棒的文章。感谢关于 outreachy 的信息。

太棒了,伙计。我正在将这篇文章加入书签,并与一些高中教师和学生分享——以及其他人。

感谢这篇文章,我是一名计算机科学专业的学生,我一直在搜索如何开始贡献开源。

© . All rights reserved.