译言最近几天挂了,把原来翻译的一篇文章挪过来
-----------------------------------------------------
简介
开源项目在国外已经成为了一股热潮,已经开始影响到日常生活的方方面面,可是在中国,开源项目的使用者不少,贡献者却寥寥无几,但同时有很多人想要参加开源项目,却总是不得其门而入,此篇文章是一个开源项目的开发者所著,通过这篇文章,详尽地告诉我们,参与开源并不是那么难,通过很简单的方法,我们就能找到参与开源项目的钥匙。同时,借这篇文章,希望国内的人能够更多地参与到开源的活动当中来,你们的贡献,将为这个世界增添更多美好。
有时我跟一些人聊天,经常听到这样的声音:“我喜欢开源,特别是XX项目,我非常想为它做些贡献,可是我不知道怎么去做”。还有一些其他的说法,比如:“我不是一个程序员”,“我不理解这些代码,它们太庞大了”,“我不知道如何提交那些修改”等等。
为了帮助这些人,我决定写一个小系列文章(总共3篇,本文是第一篇),来谈一谈如何为开源项目做贡献。希望这个举措能够帮到更多的人,让他们意识到,小小的努力也能为开源做出大贡献。
我想谈一谈以下的几个主题:
怎样做到不写任何代码也能为开源项目作出贡献
怎样做到不了解开源项目的内部机制也能为其贡献代码
怎样为开源项目贡献代码 - 报告bug以及创建代码补丁
这系列文章将包含非常多的实际的东西让你开始参与开源。这个主题本身可以延展的很广,甚至人们可以就这个话题写本书,但为什么还要浪费时间来写书呢,有非常多伟大的开源项目等待你尽快参与。
所以,当你找到一个非常喜欢的开源项目,可能它能帮你节省许多时间,或是将许多不快从你的生活带走,或者帮你省钱,你可能尊敬并且感谢这些贡献自己业余时间的人,以至于你可以享有这些成果。你感到你应该偿还他们,或是偿还整个社区,但你并不想或是不能完成看起来是最重要的事情,例如修复bug或是增加新组件等等任务,于是你选择了不参与这个项目。但你应该知道,撰写代码并非是回馈开源项目的唯一方法。甚至,无须写一行代码,你也能为整个项目做出很大的贡献,而这也只需消耗你小量的时间。
反馈
给予反馈,这是非常细小的事情,但同样可以给开源项目以巨大的帮助。每一个开源项目,要想良好地运行下去,都需要用户的反馈。你希望新组件如何工作?你觉得现有的组件怎么样?在下一版本中,你最想看到什么样的新组件、新特性?项目怎样才会让你觉得逻辑性更强?开发者经常向社区提出这类问题,说出你的想法,你就能帮他们做出正确的决策。
有些项目在uservoice.com上建有专门的网站,使用uservoice.com来提供反馈是非常简单的,只需要你点击即可表态。在google讨论组或是项目的博客上,可以提出更深入的问题讨论。占用你一小刻的时间,写一些反馈,可能会让你的观点大放光芒。反馈看起来事小,但却是最重要的事情,因为它保证了项目在朝着正确的方向努力。
帮助他人
商业软件的背后往往是一些大的公司,他们雇佣了一些人员,针对产品撰写一些文稿。例如写文档,在杂志上发表相应的文章,通过写博客进行宣传,或是在会议上发言,写书,在论坛上答疑等等。可开源项目常常只有少量志愿者撰写代码,文档,写博,回答问题,而且他们往往是利用工作时间之余来做这些事情。
所以,你可以贡献你的一些时间,接手一些非编码的任务。例如订阅该项目的google讨论组,或者去一些你常去的Q&A网站解答别人对于该项目的一些疑问。如果有些问题,恰巧你知道答案,那么请回答那些提问者,而这也不会浪费你太多的时间,同时提问者会非常感谢你的帮助。通过说出来你所知、所想的,你将会更好地理解该项目,这同时会巩固你的专业知识,在社区中你也会赢得更多的赞同与尊敬。像StackOverflow.com这样的站点,如果你的回答被提问者采纳,你还将获赠分数(类似百度知道)。
撰写文档
如果你发现该项目某些方面使用起来比较费劲,而文档又不足以帮助你克服问题,你可以帮忙改善该项目的文档。许多项目以wiki的方式来撰写文档,这也意味着给你开放了编辑以改善它的权限。要记住,文档是人们产生问题时第一个会求助的对象。如果你写博客,你可以在博客中记录问题的解决方法,再将你博客中的相关部分增加到文档中,保证你撰写的方式与文档规范一致,并保持文档跟得上项目的进度,你会发现,改进文档是如此轻松简单。
不仅仅是代码
开源项目不仅仅是编码和文档,而是有很多事情等待你去做,比如,改善该项目网站的视觉效果,设计站标,这都是重要的工作,当然,大家也经常忽视这些问题。
写博,在用户讨论组会议中发言
如果你拥有博客,请写一写与项目相关的文章,一些微不足道的问题,也请你写上具体的解决方案,如果解决这个问题花了超过15分钟,那么将它写出来就有价值,因为会有非常多的人碰上与你相同的问题。
如果你喜欢这个项目,请帮忙做做宣传,让其他的人也加入。在你加入的用户讨论组中发表相关的话题,向人们解释这个项目哪些地方让你喜欢,它帮助你做了些什么事情,为什么你喜欢它。支持并宣传优秀的项目,会让更多的人参与进来,随着社区的扩大,会有更多的人了解它,使用它,并为它做出贡献。
捐款
开源项目往往都是免费的,但是开发并维护它们可是非常耗费钱和精力的。很多人没有意识到,捐款能非常有效地帮助项目取得进展。如果你帮忙解决部分服务器主机托管与空间费用,硬件以及宽带费用,会让项目的维护者有更大的作为。
往往,开发免费的项目,而使用的开发软件不是免费的。你希望X项目发展Z功能的Y版本?那么请捐款让开发者可以购买Z的许可,这是最好的贡献。在许多与微软的软件相关的开源项目中,开源项目由非常多非开源项目组成,这种情况是非常常见的。
捐款同时能让一些开发者全职进行开源项目的开发,最著名的例子是IMeta公司,该公司捐助了他们最优秀的开发者中的一位,让其全职在一个开源项目上工作了数月,以让LINQ支持NHibernate。
分享到:
相关推荐
内容总体上为开源做出贡献-DigitalOcean的教程,可指导您在GitHub上为成功做出贡献。 用于通过标签和语言搜索GitHub问题的工具。 -另一个非常不错的工具,用于查找流行的存储库和按语言过滤的问题。 一个GitHub存储...
一个资料库,鼓励初学者为开源做贡献,并鼓励所有贡献者查看他们的...有助于开发人员社区的统计信息有助于开放式问题和挑战该信息库包含开放式问题,鼓励初学者迈出第一步为开放源代码做出贡献。 如果您有任何想法
因此,我们希望本文对于那些希望找到方法为开源软件生态系统做出贡献的人来说,具有一般意义。 重要的是要注意,我们不是第一个处理有关为开源做出贡献的问题的人。 埃里克·雷蒙德(Eric S. Raymond)的经典著作...
开源贡献指南 什么是开源软件? 开源软件是社区维护的一个编程项目。 好奇的人可以自由地访问代码,设计和文档。 贡献开源软件意味着什么? 开源软件主要由志愿者维护。...如何为Calagator做出贡献 贡献于Pyl
对开源做出贡献可能是一种学习,教授和积累几乎可以想象到的任何技能的有益方式。 :rocket: 快速开始 这是我们的快速入门指南。 分叉和克隆仓库 git clone https://github.com/CodeTrophs/Backend.git 安装节点...
我们希望开源社区能够为这个项目做出贡献。欢迎拉取请求。设置代码库并在景观数据集上训练无条件模型。在景观数据集上进行text2video实验。在 video2text 数据集上训练 1080p 模型。具有更多条件的控制模型。
Code Relay是一个用于贡献开源代码的平台。 使代码中继独特的原因是,您无需编写完整的错误修复程序,而是进行渐进式进度,然后将其传递给下一个贡献者。 就像您只在接力赛中参加部分比赛,然后将接力棒传递给下一...
基于最初的贡献第一次做某事总是很困难。 尤其是当您与其他人一起工作时,因为犯错误并不容易。 但是,开源的思想是基于合作的。 我们希望轻松地教会新程序员如何将他们的第一个更改上载到国外项目。 阅读文章和观看...
3.拨号器:自定义的简单拨号盘,方便老人直接拨打电话项目特点个人偏向使用原生技术,所以在开发过程中倾向于自己写实现过程,当然也有使用到一些第三方库和控件(在此感谢那些为开源做出贡献的先驱者们,站在前人的...
请确保您为开源做出了有效的贡献。 享受编码并继续为开源做贡献。 (PS-以[Your_Name](Your_Profile_Link)格式将您的姓名添加到contributors.md) 贡献一些好的代码,不要提交HelloWorld程序,否则您的贡献将被...
IBM 开源的一个 DIY 纸板机器人:TJBot ,召集世界各地的 ... 不论你是想写出一个具有「big idea」的代码,还是完成课业的某个课题,都可以参与 TJ Bot 的开源项目中来。 部分内容转载自机器之心 标签:TJBot
在内部使用过程中,大家一致反映不错,我们就希望把这个产品开源,希望分享给更多的人,也希望更多的人来贡献代码,来共建中国前端开源生态环境。在最近几个月,我们投入人力将这个项目整理成一个开源产品。目前有2...
在2020年10月的整个月中,您要做的就是为任何开源项目做出贡献,并至少打开4个拉取请求。 是的,任何项目和任何形式的贡献。 它可以是一个错误修复,改进,甚至是文档更改! 并赢得T恤和超赞贴纸。 如果您以前从未...
程序是我在2007年利用每个周末写的,由于现在不从事ASP.NET方面的工作,而且比较懒,放着也是浪费,所以希望有兴趣的朋友为这个软件添砖加瓦,为广大程序员作出贡献,谢谢。 这是一个未完成版本,不过核心代码都...
从您的第一个请求请求到主要项目的工作,Leapcode可以帮助您为开源项目做出贡献 :rocket:快速开始 要开始对该项目进行首次PR,请阅读完整的文档,并在注册。请注意,这是第一次供稿。 并且,如果您是第一个PR项目的...
2019年,悟空CRM会继续秉承“拥抱开放、合作共赢、创造价值”的理念,在开源的道路上继续砥砺前行,和更多的社区开发者一起为国内外开源做出积极贡献。 官网: 官网: 论坛: 演示地址:(帐号:18888888888 密码:...
为解决一个问题而引入的代码很容易产生超出其解决范围的问题,因此对于维护人员而言,仔细查看错误报告和代码贡献很重要。 不幸的是,随着项目规模的增长,对维护者的需求也在增长。 这意味着他们被迫在花费大量...
该信息库包含开放问题,鼓励初学者迈出第一步为开放源代码做出贡献。 如果您对挑战,建议或反馈有任何犹豫,可以提出一些问题。 引发问题时,请务必通读说明并按照步骤操作,并确保PR中的所有构建均成功。 最常见...
现在您已经熟悉了Git和GitHub的基础知识,将您的知识应用于实践并开始做出贡献并帮助其发展。 别客气! ^ _ ^ 如果您是一位经验丰富的程序员/用户,请您为此回购贡献有用的学习资源,并为初学者提供指导。 请参阅...
该存储库的目的是帮助某人学习,参与Hacktober并贡献其代码。 支持任何语言的任何程序。 如果您可以通过提交代码来解释代码,那么对于初学者来说更好。 这是共享代码的平台。 因此,分享它。 要求 必须有一个github...