新晋开源项目贡献者该如何打破现状?

简介:

作为一名开源项目新晋贡献者,我经常会感到迷失和沮丧。搞不明白不同的模块有什么区别,在体量巨大的代码库市场中也找不到方向。

我们中的很多人都经历过这个阶段,而这也是一个必然的阶段。我曾经挣扎无比。幸运的是,我最终还是走出来了。项目维护者们开始接受我的pull request。我也重新找回了自信。

我曾经写过一篇博客,里面描述了我的经历,并且鼓励其他刚刚成为开源项目贡献者的人们勇敢起来。这篇博客吸引了很多人的注意,他们也对我进行了回复。

很多人联系到我,说我的那篇文章成功的鼓励了他们开始(或是重新开始)为开源项目做贡献。还有几个项目维护人员甚至重新查看了我以前提交的一些pull request,并且通过了这些请求。能够得到这样的结果,我还能要求什么呢?

在思考了一段时间之后,我总结出,我的那篇博客之所以能够吸引那么多人的注意力,是因为很长时间以来,有关开源项目贡献的话题,都在围绕着一方:维护者。

维护者总是在发表各种文章,讨论贡献者可以参与到项目中来。他们付出了很多努力,让自己的项目对于初学者也显得很友好。他们还写了大量的指导文章,告诉我们如何为开源项目贡献力量,并且在Quora和其他一些问答平台上回复人们提出的各种问题。

但是,很少有新的贡献者写文章讲述他们为开源项目贡献力量的故事。我个人阅读过很多维护者写的指导文章,但是我觉得这些文章都不如贡献者的实际经验那样实用。

在交流的时候,如果只有一方在滔滔不绝,那么这个对话就很难实现平衡。我希望多读到点新晋贡献者所写的文章,讲述他们参与的项目,以及他们所遇到的各种困难和最终的解决办法。

因此,我想要鼓励所有新的贡献者们记录自己的经历,帮我们找回对话中的平衡。我保证,你完全值得花时间和精力去做这件事情。

记录参与开源项目的经过,能够给你带来很多种好处。当你在写作的时候,你会回忆起许多细节。写作会强迫你客观的理解你所做过的事情。写作还能帮你更好的总结做过的事情,例如何时开始、以及当前的进度。

你可能担心自己知道的东西不足以让你写出好文章。但是我想说的是,在写作的时候,你不需要让自己成为某一领域的专家。你只需要把你理解的写下来就好。

最坏的结果,无非就是你把一些东西写错了。而如果你真的出了错,很可能有人会指出来。这个人会帮你进步,填补你知识的空白。这是一个双赢的局面。

在其他开发者的博客中寻找启示

我的草稿箱中还有几篇文章没发。因为这些文章还不够好,还需要润色。

每当我有这样的想法的时候,我都会在互联网上寻找灵感和启示。有一天,我看到了A. Jesse Jiryu Davis写的文章《编写优秀的编程博文(Write An Excellent Programming Blog)》。在此之后,我会不断的重新阅读这篇文章,尤其是当我没有写作主题的时候,或是我觉得自己不够格就某一个话题撰写文章的时候。

另一个我经常去的寻找灵感的地方,就是Julia Evans的博客。她的博文店铺很短、很简单,但是读起来令人愉悦。几乎她的每一篇文章,都能让我学到一些什么。

我还会时不时的看一看Stack Overflow的联合创始人博客:Joel On Software and Coding Horror。这里有很多优秀的文章,主题涵盖了与科技相关的各个领域。

当你开始寻找灵感以后,你就会找到很多好的资源。每一天,都会有很多开发者在网上发布大量有见解的文章。

如何寻找写作主题

在刚开始写作科技博文的时候,你很可能会感到不自信,这是很正常的事情。但是慢慢的,你会习惯。最开始的时候,你写的东西可以仅仅是记录每一天所做的事情:

你是如何接触到你当前所参与的项目的?

这里的社区都是什么样的人?他们对于新加入的贡献者是否展现了欢迎?

你选择了哪个项目?为什么决定参与这个项目?

设定本地环境以及克隆项目repo是否非常困难?你在哪里遇到了问题?最终如何解决了这个问题?

你是否找到了要解决的第一个issue?

如果项目给你指派了一个导师,你和这个导师相处的怎么样?他为你提供了哪些帮助?

你以前觉得开源项目是什么样的?在真正参与之后,你现在觉得开源项目是什么样的?

在参与了一段时间之后,你能给未来的新人提供哪些建议?

在机构的IRC频道或是Gitter聊天室内,你要如何表现?要问哪些问题?

以上只是我现在能想到的一些主题。毫无疑问,在参与开源项目的过程中,你一定会想到其他一些更有意思的话题。

你不用特别给自己设定更新周期,有感觉了,想和其他人分享了就去写——无论是你克服了一个小困难,还是给项目做了巨大的贡献。

随着经验的不断丰富,你可以开始写一些技术性更强的文章。例如,你长时间研究的东西,也可以使你获取知识或是学习新语言/框架/库的过程。

你可能会觉得,你想些的话题,很多其他人都已经写过了,你可能想要写一些更具原创性的东西。

这么说吧,无论谁、写过多少类似的东西,这一点都不重要。对于同一件事情,每个人根据自己的理解,都会有不同的观点。你所写的每一篇文章,都折射出你自己的理解,而你对一件事情的理解,很可能与另外一个人大相径庭。

你的任务,就是记录下你对开源项目的贡献。在你学习的过程中不断的写作。结果就是,你的学习速度会更快,最终成为一名更好的开发者。

你能够为其他迷失的人提供帮助,让他们找到一条通往开源软件的通途。

相信我,得知你写的东西为其他人提供了帮助,会让你有一种无与伦比的满足感。
文章转载自 开源中国社区 [http://www.oschina.net]

相关文章
|
6月前
|
Cloud Native Linux Go
如何从开源项目中受益?
如何从开源项目中受益?
40 0
|
2月前
|
存储 人工智能 自然语言处理
开源和闭源一个争议已久而且持续几十年的话题
开源和闭源一个争议已久而且持续几十年的话题
31 0
|
11月前
|
敏捷开发 测试技术 API
【企业架构】Salesforce CTA 的持续学习:十本关于企业架构、战略和工程的好书
【企业架构】Salesforce CTA 的持续学习:十本关于企业架构、战略和工程的好书
|
Web App开发 Rust JavaScript
魏永明:都打着开源协作的名义要共建,却又是山头林立搞内卷
魏永明:都打着开源协作的名义要共建,却又是山头林立搞内卷
223 0
|
运维 Kubernetes Cloud Native
KusionStack 开源有感|历时两年,打破 “隔行如隔山” 困境
本文撰写于 KusionStack 开源前夕,作者有感而发,回顾了团队从 Kusion 项目开发之初到现今成功走上开源之路的艰辛历程。当中既描述了作者及其团队做 Kusion 项目的初心和项目发展至今的成果,也表达了作者自身对团队的由衷感激,字里行间都散发着真情实感。
KusionStack 开源有感|历时两年,打破 “隔行如隔山” 困境
开源项目也可以申请专利
开源项目也可以申请专利
710 0
|
消息中间件 Kubernetes Oracle
2022 年之后的开源愿景
  在开源领域工作了十多年之后,经历了从初创公司到世界上最大的开源公司,并推出了我的开源项目资助平台,我终于有了一个想法。“开源”一词并不足以涵盖现代开放软件所有可感知的价值,开源需要一个更广阔的视野,以及一个支持开放治理和开放资金的基础设施。   在过去,开源的价值在于源代码,我们可以从自由软件的自由度和开源定义的发布标准中感知到这一点。但现在情况不一样了。现如今,开源产品的生产速度很快,但腐烂和过时的速度更快。除了源代码提供的价值之外,开源项目还有其他重要的特征。开源的价值在于项目被采用,有时候一个项目会成为某种技术事实上的标准(比如用于消息传递的 Apache Kafka)。开源的价值
188 0
|
前端开发 架构师 数据库
互联网创业公司的技术团队构建
互联网创业公司的技术团队构建
190 0
|
存储 编解码 前端开发
如何参与医疗软件开源项目
作为一名软件开发人员,我觉得我可以产生巨大的影响。在某种程度上,我觉得帮助一家披萨连锁店提高在线销售额或帮助抵押贷款机构提高利润率是一种浪费。随着 COVID-19 大流行的全面爆发,我想要帮助一个与我息息相关的项目。
|
Web App开发 应用服务中间件 nginx
利用开源软件打造一个团队贡献平台
0x00 前言   最初的想法是打造一个团队内部社区,方便进行技术交流、沉淀、分享。在网络上,找到了一款开源系统,开源团队内部贡献平台Mooder,很大程度上满足了这样一个需求。Mooder的核心理念的“贡献知识“,是我最认可的地方,系统简约、强大,以及它的邀请码机制、奖励机制,一句话来说,就是很wooyun的样子。
1485 0