Bigbluebutton CEO Fred Dixon曾说过:”创建一个成功的公司不容易,但同时创建一个成功的公司,成功的开源项目和成功的生态系统就是难上加难了。“.
Bigbluebutton项目的背后就有这个Blindside networks这样一家公司,这家公司主要是提供收费的Bigbluebutton相关的技术支持和咨询服务。Fred的理想很远大,但要实现这个理想,前提是必须有一个成功的开源项目,否则是不可能有任何的公司能在这个生态系统上存活,企业家们往往会有远大的理想,认定自己做的会是”the next big thing”,但他们也会活在当下,确保有着可行的商业模式和充足的现金流。Blindside network也是这样,提供优秀的开源会议系统的解决方案,靠提供商业付费技术支持来提供现金流,并逐渐提供一些私有的辅助产品和服务,但作为一个开源项目的支持者,也需要平衡商业活动和社区活动。如果一个开源项目成功了,它会拥有非常多的用户和开发者,并且会成为一个很健康的生态系统,反过来也会促进开源项目的发展,并且为开源项目的支持公司提供更多的商业机会。
如果想以Open Source Business方式去运营一家公司,必然会面对如下的一些问题:
-
主导一个能解决实际问题的开源项目。
-
为项目营造一个健康的生态系统,吸引其他人为项目做贡献,包括用户和开发者等。
-
构建一个可行的商业模式来支撑生态系统的运作,其他的开发者也可以采用同样的商业模式去盈利,这样就可以吸引更多的开发者加入。
以这种方式去运作有两个层面,一个是商业的运营,另一个是社区的运营。
商业的运营有如下需要注意的:
-
关注细分市场。可以看到Bigbluebutton的主页上很清楚的写明了,这个项目是为了解决远程教育的问题,虽然大家都知道其实bigbluebutton就是一个开源的视频会议解决方案,也有很多的公司找到Blindside network并不是为了解决远程教育。他们这样做主要是出于两方面的考虑,首先集中精力在细分市场容易满足这类特定客户的需求,容易形成口碑(具体参考“cross the chasm”),在这类客户基础上再去发展另外的客户;其次,留下来的空缺市场也利于整个生态系统的发展,为其他公司提供了机会。不求唯一,只求最好。
-
为开源项目提供一流的社区支持。这个看似和提供付费的商业技术支持相矛盾,但实际上,开源项目的成功在于其普及的应用,而这个也就需要用户能够很方便的去试用和测试。越普及,那么用户越多,越有更多的机会去接触潜在的客户。这个就好比如果你想有橘子大丰收,就必须先去播种,去种树一样。
-
公开你的商业模式。你必须清楚的让客户知道你卖的是什么(服务),能提供给他们什么(快速的部署,减少使用开源软件的风险等)。
-
清楚哪些事情不会做。之前很多人在邮件列表里面要求替换bigbluebutton的logo,这样做就删除了对开源项目的引用,不利于开源项目的普及和推广,并且还相当于浪费社区成员的时间做一些不利于社区发展的事情,之后核心开发者在邮件列表里面公开声明不再提供类似的技术支持。但他们并不反对用户替换logo,也不反对其他的商业公司提供类似的技术支持。
-
雇佣一个好的设计师。Google在创建的初期因为没有设计师,只能做一个很简单的主页,之后这种简洁变成了他们的品牌。Bigbluebutton也类似,项目组的成员都不懂设计,项目主页和bigbluebutton客户端也都很简洁。但实际上,公司的创始人的组合最好有如下三类技能:开发,销售和设计。如果看看其他的startup,如heroku或者github,很明显他们有优秀的设计师。如果我们当初能有设计师能帮忙,那么应该会有一个更有视觉冲击力的logo(而不是现在的一个b)。
-
通过合适的问题来鉴别潜在的客户。有很多人会打电话或者发邮件来咨询,但并非每个人都能成为你的客户,因此你需要一种方法来鉴别到底哪些人最有可能成为你的客户。Blindside networks总结出一套方法,通过问一些问题来寻求答案:
1) 之前有没有和其他的开源服务提供商合作的经验?
如果有那么最好,如果没有,那么要看他们是不是认为开源软件等同于廉价的技术支持和服务,如果是,往往他们使用bigbluebutton并没有商业模式的支撑,即他们并不会盈利,这样他们应该去寻求一些社区的支持。
2) 使用Bigbluebutton的商业模式是什么样的?
如果是基于成本消减(cost reduction),那是最好的,意味着他们能接受短期内的支出来换取长期的成本节约。如果是营收产生(Revenue generation),也要分情况,如果是基于bigbluebutton可以直接盈利,那么最好,但如果是先集成到现有产品,但依赖以后用户群的增长来盈利的,那么每次额外技术支持所产生的费用往往被认为不划算,毕竟人家还没有盈利。
3) 之前接受专业服务的收费情况如何?
这个主要是看他们是否能够承受价格,如果客户常和印度公司合作,那么他们的付费一般不会高。如果是这样,建议他们花更多的精力去弄清楚使用bigbluebutton怎么才能有更多的营收,这样能降低他们投入的风险。
开源项目运营需要注意的:
-
每次的版本发布都当作一个产品发布。应为每个版本发布,都会有大量的用户使用(包括付费用户),而不仅仅是开发者,如果仅仅是开发者。所以会牺牲一些开发新特性的时间来换取更稳定的版本,每个版本发布前,会留至少4周的时间来做测试并解决问题。只有这样,产品才能被广泛使用。
-
以开发者的身份参加社区讨论。虽然公司要盈利,但作为开发者的身份加入社区讨论,去解决问题,获取更多的想法,对开源社区的发展是很有帮助的。
-
尽早的确定使用哪种开源许可证。Bigbluebutton采用LGPL开放源码。但最开始并不是使用的这种,因为最开始整合了Xuggler,就使用了和Xuggler一样的AGPL,AGPL要求即便产品提供运营的服务也需要开放源码,而LGPL允许商业软件通过类库引用(link)方式使用LGPL类库而不需要开源商业软件的代码。AGPL限制了其他的公司使用bigbluebutton,不利于开源社区的发展。
-
一开始就要提供FAQ。最开始的时候,看到有用户渐渐多了,和想每个问题都亲自回答并解决,但渐渐人多了,精力就不够了,有了FAQ,在解决用户疑问的同时,自己也省事。