如何在 GitHub 上贡献开源项目如何盈利

中国领先的IT技术网站
51CTO旗下网站
确保开源项目在GitHub上取得成功的五个关键
社区驱动的软件开发正成为品牌和项目同时成功的新途径。有人忠告你要注意这个涌动的潮流:由于目前GitHub上,有2700多万个项目,社区驱动的开发越来越受到欢迎,由此可见一斑。本文作者借鉴日常的工作实践,列出了五个具体的方法来帮助大家确保自己的项目在GitHub上取得成功。
作者:布加迪编译来源:| 09:31
【快译】社区驱动的软件开发正成为品牌和项目同时成功的新途径。有人忠告你要注意这个涌动的潮流:由于目前GitHub上,有2700多万个项目,社区驱动的开发越来越受到欢迎,由此可见一斑。
那么,你如何才能加入这股席卷全球的大潮呢?
作为RethinkDB的创始人之一,我对此倒有几点想法。RethinkDB是一种可扩展的开源JSON数据库,为实时互联网而设计。我和我的团队与数千名自愿贡献者一道开发了GitHub上表现最出色的数据库。GitHub上的开放沟通渠道帮助我们交付最佳解决方案,并开发出众多行业的公司在使用的一款产品,其中包括几家《财富》500强公司。
我列出了五个具体的方法,你也可以拿来确保自己的项目在GitHub上取得成功,关键在于吸引社区。
1.重视社区
开源关注的不仅仅是许可证和软件开发模式,它更关注的是人员。鼓励用户和维护人员相互合作,推动新想法的传播。你会发现,最抢眼的项目会借助邮件列表、GitHub项目及/或IRC
/Slack频道,建立起广大贡献者参与的社区。
2.欢迎新的贡献者
开始一个新项目时,贡献者常常会有畏难情绪,还怕难为情。提供一套贡献代码方面的准则,并使用问题追踪系统(issue
tracker),重点突出新贡献者很容易处理的故障排除方法,帮助他们打消顾虑,让他们活跃起来。做好必要的基础工作是确保项目成功的关键。比如说,我们推出RethinkDB时,还发布了GitHub问题礼仪指南,帮助用户。
3.感谢贡献者的工作
所有为RethinkDB做贡献的人都是共同开发者,对其在每个项目上的工作拥有所有权。在RethinkDB,我们以多种方式感谢每个贡献者给出的意见。简单而又有效的做法包括:提名表扬、写感谢信或者发些奖品,比如T恤。贡献者帮助我们以多种方式构建RethinkDB,无论是在GitHub上提交合并请求,还是测试新功能或另一项任务;他们每个人理应得到我们的感谢。
4.利用艺术呈现你的想法
艺术能够有效地传达想法,比如就像软件。充分利用图形设计来给你的项目打品牌。(我们聘请了一名专职开发人员来帮忙。)可以考虑设计一个友好的吉祥物(比如GitHub章鱼猫或RethinkDB思想家),帮助你的项目和社区脱颖而出。此外,利用艺术来阐明和传授复杂的想法和指示说明。通过将艺术融入到你的项目,还可以鼓励新的贡献者做出艺术方面的贡献。
5.编制说明文档,防止出现问题
事无巨细地记录项目过程可以避免潜在的问题和困惑。完备的说明文档包括常见问题解答(FAQ)部分、针对常见模式的一套说明以及一组例子。你甚至可以让从事你项目的那些人献计献策,让说明文档成为开源文档。
要加快吸引自愿软件开发人员组成的社区,为此让他们觉得受到欢迎,给他们分派清晰的任务,并明确完成这些任务的具体方法。最重要的是,贡献者帮助你时,记得要感谢对方。那样,你的项目会因此而蓬勃发展起来。
标题:5 keys to project success on GitHub,作者:5 keys to project success on GitHub
【51CTO译稿,合作站点转载请注明原文译者和出处为】
【编辑推荐】
【责任编辑: TEL:(010)】
大家都在看猜你喜欢
头条头条外电头条外电
24H热文一周话题本月最赞
讲师:0人学习过
讲师:0人学习过
讲师:7人学习过
精选博文论坛热帖下载排行
本书是一本真正意义上的网络系统设计图书,从网络系统设计角度全面介绍了整个网络系统设计的思路和方法,而不是像传统网络集成类图书那样主...
订阅51CTO邮刊点击阅读原文
Github开源项目贡献指南-找到你的用户
5月11日 发布,来源:
推广你的项目
当你建立一个项目之后,没有说你一定要去推广他,即使是这个项目并不是很流行,仍然可以找到很多理由让你在这个项目上花时间。但是如果你希望别人能发现并且使用你的项目,那么这个时候您就需要把你辛苦工作的成果告知世人!
找出你的卖点
在你开始推广你的项目之前,你应该能够解释你的项目是做什么的,为什么大家需要他?
是什么让你的项目变得不同或者有趣,在自己心中问这些问题会让你更容易说服别人。
牢记一件事情,别人之所以使用你的项目,甚至是为你的项目做贡献,是因为你的项目解决了他们的问题。所以你要找出他们需要什么,然后把他当成你项目的卖点或者说价值所在。
举个例子,@用代码实例来清晰的阐述为什么他的项目是有用的。
如果你想深入了解如何挖掘项目的“卖点”,看一下Mozilla的,练习如何建立用户的形象。
帮助人们发现然后关注你的项目
你最好有一个唯一的“主页”链接用来推广,引导人们关注你的项目。你不需要找一个炫酷的模板或者域名,但是你的项目确实需要一个入口。
— Peter Cooper & Robert Nyman,
通过引导他们到一个唯一的地址来帮助人们发现和记住你的项目。
要有一个推广的主阵地。一个Twitter账号,Github链接,或者IRC频道是引导人们查看你们项目的一个简单的方式。这些方式也给你日益增长的社区一个讨论的好地方。
如果你目前还不想给你的项目搞这么多乱七八糟的东西,而且还要在有机会的时候推广你的Twitter账户和Github账户。举个例子,如果你某一个讨论会或者活动上发言要保证在你的简历或者幻灯片上包含这些信息。只有这样人们才会知道怎么找到你或者关注你的工作。
我之前犯过的一个错误就是没有给项目开一个Twitter账户。Twitter是一个让人们知晓项目进展的好渠道,也可以让人们持续的接触到你的项目。
— @nathanmarz,
考虑给你的项目做一个网站 。一个网站可以让你的项目更加友好,而且更加容易浏览,更重要的是附上清晰的文档和教程。这也是象征着你的项目还是活跃的,这会让你的用户使用你项目的时候感觉更放心。可以用一些例子告诉人们如何使用的项目。
@, Django的协作者说,我们给Django做的网站可以说是“在早期开发Django的时候做的最好的一件事情了”。
如果你的项目是托管在GitHub上的,你可以用GitHub Pages简单的创建一个网站。, , and 是一些优秀的内容详尽的网站的
现在你的项目有了“卖点”,和让人们很容易发现你项目的渠道,接下来我们谈谈如何和你的用户交流吧!
到你项目的受众在的地方去(线上)
网上拓展是分享和快速宣传项目的一个好方法。借助一些网上的渠道,你有可能找到一大批受众。
利用好已有的线上社区和平台去找你的受众。如果你的开源项目是一个软件项目,你可能会在, , , 或者。找到你觉得人们会最有可能从你的项目中受益或者对你项目感兴趣的渠道。
每个程序都会有那么一些方法只有一部分人才会用到,所以不要想着去打扰每一个人,把你的力气用在可能会从你项目受益的社区就好。
— @pazdera,
来看看下面的一些方法吧,也许推广你的项目的时候用得着。
快找找有没有相关的开源项目和社区。有时候,你不需要直接的推广你的项目。如果你的项目对使用Python的数据科学家来说是无可挑剔的,那么就去找Python数据科学的社区。等他们知道你的项目之后,很自然的就会谈论然后分享你的工作成果。
如果你项目尝试解决某些问题,那么找到会遇到这些问题的人。想象你的项目受众会在哪些论坛,然后搜索这些论坛,回答他们的问题,然后找一个合适的实际,向他们建议使用你的项目来作为一种解决方案。
寻求反馈。给一个可能会用到你项目的人介绍你自己和你做的工作。对哪些人会从你的项目受益要很明确。尝试完善一下下面这句话:“我觉得我的项目能够帮助A,那些尝试做B的人”。听取和回复别人的反馈,而不是简单的推广。
一般来说,在你索取什么回报之前先把精力放在帮助别人上。因为在网上推广一个项目对任何人都是一个不难的事情,所以有很多人和坐着一样的事。告诉人们你是谁,而不是你想要什么,这样才能从众多推广者中脱颖而出。
如果没有人对你的推广感兴趣,不要灰心!大部分的项目的开展都是一个要花费数月和数年的反复过程。如果你第一次没收到反应,尝试换一种策略,或者找办法给别人的项目做做贡献。这都是些需要时间和奉献精神的事情。
到你项目受众在的地方去(线下)
线下活动是一个推广项目流行的方式。这是一个接触某个忠实听众和建立深层次的联系的好方式,特别是如果你对到场的开发者感兴趣的话。
如果你还是个,从寻找一个和你项目使用的语言或者生态系统相关的当地的聚会开始吧。
我去Pycon的时候非常紧张。我要发表一个演讲,在那儿我就认识几个人,还在那儿呆了整个周。但是其实我不应该焦虑的。Pycon真是太他妈吊了!每个人都是超级友好外向,以至于我没有找到时间和人们讲话。
— @jhamrick,
如果你从来没在公共场合讲过话,感觉紧张那就太正常啦!记住你的听众就在哪儿,因为他们都是真正的想听你介绍你的项目。
当你在写你的演讲稿的时候,把重点放在你的听众会感兴趣而且能获取价值的事情上。保证你的语言要友好和和蔼可亲。笑一笑,深呼吸,幽默一点儿。
当你开始写你的演讲稿的时候,不管你的主题是什么,如果你能把你的演讲当成是给别人讲故事的话,效果会更更好。
等你准备好了,考虑一下在某个会议上发言的时候推广你的项目研讨会可以帮助你接触更多人,有时候是来自全世界各地的人。
我非常认真的给JSConf的人写了一封信,然后求他们给我一点时间让我JSConf上展示我的项目。同时我又非常担心,这个项目我做了六个月,要是大家不认可怎么办。那时候我就一直在想,我的天,我他妈在这里是干吗?
除了上面提到的策略之外,邀请人们分享和支持你的项目的最好办法就是分享和支持他们的项目。
帮助新手,分享资源,给别人的项目认真的做贡献会帮助你建立起良好的声誉。然后他们就很有可能知道你的项目而且更有可能关注和分享你在做的事情。
有时候,这些关系还会进一步发展成更广阔的生态系统中的官方合作伙伴(意思即使你有可能成为那些有名社区的成员)
urllib3之所以是现在最流行的Python第三方库的唯一原因就是大家都需要它。
— @shazow,
种一棵树最好的时候是十年前,其次是现在。所以啥时候开始建立你的声望都不晚。即使是你早就已经建立了自己的项目,还是要继续找办法帮助别人。建立用户群没有一蹴而就的方法。获取别人的新人和尊重需要时间,同样,建立声望的过程也永远不会停止。
PhantomJS公开第一个版本的时候实在2011年初。我也就是用一些常规的方法来推广:发Twitter,写博客告诉别人可以用它来做什么,在各种各样的聚会上我都提到过它。当2014年他已经广为人知的时候。我才开始做关于它的演讲。
— @ariya,
一如既往的坚持!
有时候,让人么注意你的开源项目会话费很多事件。但是关系!现在很多流行的项目都是花了很多年才有今天的活跃度。把重点放在建立声望上而不是企图一夜成名。耐心一点,一如既往的和那些可能会从中受益的人们分享你的项目。
明天提醒我
我要该,理由是:
关闭理由:
删除理由:
忽略理由:
推广(招聘、广告、SEO 等)方面的内容
与已有问题重复(请编辑该提问指向已有相同问题)
答非所问,不符合答题要求
宜作评论而非答案
带有人身攻击、辱骂、仇恨等违反条款的内容
无法获得确切结果的问题
非开发直接相关的问题
非技术提问的讨论型问题
其他原因(请补充说明)
扫扫下载 App

我要回帖

更多关于 开源项目如何生存 的文章

 

随机推荐