如何为开源项目做市场

世界在前进,开源在崛起,在当下,开源项目并不罕见,而是稀松平常,如果你“曲高和寡”,认为酒香不怕巷子深,那么很快就被庞大的潮流所淹没,开源的人群似乎是固定的,拥抱开源的公司在一定的时间段内也是屈指可数的,那么被这些人忽略的话,你所开源的项目只有一个结局:优雅的关闭!

概要

本文是根据Deirdré Straughan北美开源峰会2017会上的演讲整理而成,演示文稿可到slideshare下载

Deirdré Straughan 是一位经验丰富、精力充沛的女士,她目前在亚马逊云计算(AWS)的开源部门工作,但是此次分享并不是代表AWS,而仅仅是代表其本人。她过去曾经在爱立信、甲骨文、Joyent等公司工作,最近几年一直在云计算和开源领域。

Deirdré 对自己的职业生涯的总结是:”通过各种市场和社区活动来帮助技术野蛮成长!”,本文堪称是Deirdré 的精髓,尤其是她所解释的市场手段,以及这些手段为什么对于开源是非常重要的。

为什么你必须推销免费的东西

那么,什么算是市场了呢?其最基本的概念,所谓的市场就是聚集人们用钱来交换所需要的物品与服务的地方,那么作为工程师的你可能就会想:“市场是关于销售,而开源往往是免费的,而我并不算兜售什么,那么我需要市场为我做什么?”

但是,我们作为市场人员可不是这么思考的,尽管在开源的生态里,并没有销售软件本身,但是它依然在兜售着一些东西。例如,开源是在兜售想法,又或者说,利用市场来换取非常有价值的内容,尤其是人们的时间和注意力。这可能让人一时半会难以理解,有违直觉的。因为人们常常以为开源就是给予这个世界,但是开源不仅于此,它确实是有实质性的内容的,而且是有价值的。事实上,人们所贡献的时间、金钱、才华以及努力都是非常有价值的。但是,所有的这些,都需要一些前提:

  • 人们能够知道并了解你的项目
  • 了解项目的价值

可想而知,没有这两个前提,开源项目无疑成了空中楼阁。

另外,目前的商业,竞争是异常激烈的。想要在开源中取得成功,必须去和大约2550万个其他的开源项目竞争,以获得关注和支持。因此,开源的市场是在非常拥挤的环境中争取非常稀缺的关注和资源。所以对于吸引人才和其它资源到开源项目中,是一件很困难的事情。

Deirdré 声称,开源项目中非常重要的资源——人本身,以及他们的时间和努力,这些人可能是项目的用户,也可能是贡献者。在贡献者当中,有一部分人可能是独立的个体,他在利用自己的业余时间去做一些贡献;也有一部分人是其雇主所安排的;更有甚至,有些特定的人们是专门被雇佣而从事特定的开源项目。最后这种情况越来越普遍了。

在某些情况下,可能人们会考虑到钱的问题,是的,没错,我们都希望相信纯粹的技术善良会得到回报,我们不应该考虑金钱。但是,现实却很残酷,我们都需要一定的钱来生存。

所幸的是现在的企业越来越多的开始支持开源了,但是很多企业却不能够确定到底哪些项目值得去投入。要想从残酷的”红海”中脱颖而出,你所开源的项目需要超越人群,不仅要吸引独立的贡献者,还要吸引可以提供物质支持的公司。

为开源项目做市场常见的陷阱

虽然上面的道理大家都懂,但是为开源项目做市场也是没有被人们所认识的,一个常见的原因是很多科技界人士并不认同市场活动。但是,作为开源项目的从业者,不应该仅仅因为提到市场而主动的逃避,因为如果想让开源项目良性的发展下去的话,就必须去做市场。如果在拥抱做市场之前,认为它是比较俗的话,那么将会是非常困难的历程。

有时对市场的抵制来自于那些热衷于口水仗的人们,这些人会错误的认为做市场是一些软的技能,专门给女士们所保留的职位,而不是(男性)的“男人”编码工作。它被视为地位较低的角色(直到你达到VP或CMO的级别)。缺乏市场营销的其他原因包括缺乏资金,或者仅仅是没有人在项目上工作,却碰巧知道如何去做。

在最理想的情况下,市场可以帮助人们来了解技术是用来干什么的,以及如何使用它。它是一种信息量丰富,真实可信,甚至鼓舞人心的沟通形式。

市场营销工具

其实有很多现成的市场工具。其中首当其冲的,也是最为重要的,那就是 代码。GitHub 就是项目的简历。项目的代码均是明确的架构后的产出,并提供模块化的能力,以便新手入门的门槛相当低。其必须是有很好的代码风格,并提供工具来帮助人们学习使用和贡献项目。

第二就是关于文档,但是文档是常常被忽略的。很多公司都对这个不怎么重视,其实文档对于吸引人们参与到项目非常的有帮助。文档通常解释了所有的命令和参数以及输出的含义。这些信息是必要的,但是远远不够。开源项目需要其他类型的文档:白皮书、博客、视频、音频、以及研讨会的讨论等等。

一旦创建了上述这些内容,那么就需要在某个地方存放它们,并能够让所有人访问到。显而易见的是,GitHub的仓库是不够的,还需要创建官网、维基百科等。

项目能够被很容易的发现是非常之重要的。及时你创建了上述所有的内容,如果用户访问不到,那么就没有任何的意义。为此,你要将项目的名称重视起来。举例来说,如果开源项目所命名的名称太过稀松平常,那么被搜索引擎搜到的概率就会低很多。为了最大限度地提高搜索引擎的搜索结果,您可以使用关键字标签和类别来帮助人们找到您的项目。

搜索引擎优化是一门神秘的艺术。处于关键字搜索结果的第一页非常有价值。出于这个原因,“SEO最佳实践经常变化,因为搜索引擎正在与想要游戏搜索结果的黑帽人士进行军备竞赛,你可以很容易地找到最近的提示和技巧,如何提高你的排名。但是,搜索引擎排名通常需要一年左右的时间才能取得实质性进展。你也需要十足的耐心。”

社区

市场可以和客户保持所有的联系。这里来举个例子,让我们考虑一下航空业,关于航空公司体验的一切都会影响消费者对航空公司的看法:从购买机票、办理登机手续、登机过程、乘坐飞机和体验、再到机场的气氛、及时的离港和抵达、行李是否准时到达,以及向家人报平安等,所有的这些流程和经验都会影响塑造到消费者对品牌的看法。

其实,IT 技术和上述的航空公司例子没有什么差别,更尤其实开源的社区和项目,有人在你的项目中经历的所有事情 - 无论好坏 - 都会影响他们对该项目的看法,以及他们是否想参与其中。

所以,社区是非常之重要的。社区文化和多样性一样重要。请精心培育你的社区,如果您的开源社区不是多元化的,那么就要认真的问问你自己:”为什么”?,找出错误并纠正,然后要持续的考虑如何吸引更广泛的参与。

多样性也意味着贡献的多样性。除了代码之外,您的项目是否认可并重视其它的贡献?这里在重申一次,是你在请求人们去帮助你完成一些工作,所以一定要确保人们是认同你的。

保持友好

请尝试近距离的观察一下新手们的入门过程,将他们吸引到你的项目中经历了什么?尤其要想想那些成长的痛苦。开源项目,和创业公司一样,往往会有一个关键的转折点,那就是在取得一定的快速增长的某个节点,往往就会转而急剧而下,这是因为没有足够的人手对变化做出快速的反应。

总而言之,做市场并不是一件邪恶的事情,或许你已经开始这么做了,只是你没有意识到罢了。

做市场,尤其是开源项目做市场,是毋须提到方法论的高度的,因为它从起源就是这么做的,或许你已经开始这么做了,至少应该知道怎么去做。哪里有很多愿意帮忙的人们都在等待着,他们只是希望被问到而已!

关于原作者

Deirdré Straughan 目前任职于AWS的开源社区参与团队,职位是内容的领导者,如AWS 的开源博客和Twitter账号@AWSOpen。她个人的Twitter账号是:@deirdres