从RethinkDB的倒闭,反思国内外开源项目

                                                                                                     

开源改变世界固然不错,但开源项目在开源和可持续盈利模式之间一直难以两全。RethinkDB的倒闭,对国内外开源项目有何警惕、借鉴之处?

编者注

从RethinkDB的倒闭,反思国内外开源项目

2016年10月5日,RethinkDB联合创始人Slava Akhmechet在官网上宣布RethinkDB破产倒闭。Slava Akhmechet称其已经尽了最大的努力,最终还是无法建立一个可持续的商业模式。接下来Stripe公司将接纳RethinkDB 公司,RethinkDB工程师团队将加入到Stripe。

在交接过程中RethinkDB公司下的RethinkDB和Horizon的开源项目不会关闭,这两个项目都将持续可用,rethinkdb.com 和 horizon.io网站上的一切都可正常访问。Slava Akhmechet也希望在广大社区贡献者的努力下,保持继续开放的开发进程。

RethinkDB是一款开源的分布式数据库,用于存储JSON文档,可以很容易地扩展到多台机器。它有一门令人愉快的查询语言,支持表连接和group等真正有用的查询,并且安装简单、易于学习。

RethinkDB的资深用户William Stein(SageMath及SageMathCloud创始人)就RethinkDB的倒闭对开源项目的可持续盈利的模式进行了反思。 

同时,我们也邀请了PingCAP联合创始人兼CEO刘奇先生和Kyligence联合创始人兼CEO韩卿先生,从这次倒闭事件中,反思中国国内的开源项目生态状况,以飨关心开源项目的读者。

反思开源项目可持续盈利模式

从RethinkDB的倒闭,反思国内外开源项目

by William Stein

三个星期前,2016年9月12日,我跟RethinkDB首席工程师Daniel Mewes讨论了一晚上。本来我已邀请联合创始人Slava和Michael,但他们当时忙于筹款,未能和我们一起讨论。整个晚上,我探讨了RethinkDB的实际商业模式是什么。昨天(是指写文章的时间),也就是2016年10月6日,RethinkDB宣布倒闭了。

风投公司Andreessen-Horowitz(A16Z)旗下一个基金的投资者曾经邀请我,让我阐释SageMath公司的商业化计划,因此我得以接触了一些RethinkDB的开发者。而RethinkDB正是A16Z投资的公司之一。

起初,我并没有参加A16Z会议的打算,因为我从来没有见过风险投资家,而且也不打算筹集风投。然而我的顾问劝我,即使我从来没有接受风投投资的打算,风投也很有帮助。于是我参加了会议。

注:Andreessen Horowitz(A16Z),是美国目前的顶级风投之一,与Accel、Benchmark、Greylock、Kleiner和Sequoia等齐名。A16Z创建于2009年,被外媒誉为“硅谷最牛的50个天使投资人”之一,先后在初期投资了Facebook、Twitter、Groupon、Skype、Instagram、Foursquare、Pinterest、Airbnb、Fab 和Zynga等众所周知的名字。是诸多硅谷新贵的创业导师。联合创始人是Marc Andreessen和Ben Horowitz。

在我给A16Z演示的幻灯片第一稿中,其中有一页提到的问题是:“为什么您资助那些没有明确商业模式的开源公司,如RethinkDB和CoreOS?是否出于慈善而支持开源软件生态系统?”在与Google和RethinkDB开发者交谈后,我删除了这个幻灯片,因为慈善显然不是答案(我不知道是否有一个比“偶然”更好的答案)。

我已经着力使用RethinkDB近两年,在某种意义上,我可能是他们最大的用户。我的SageMathCloud项目利用RethinkDB提供基于web的课程管理,如Python、R、Latex等。

例如,每次在实时同步文档中输入一些文本时,RethinkDB表都会插入一个条目。我的RethinkDB表有近1亿条记录。我曾在RethinkDB聚会上发表演讲,提交了许多错误报告,于是,我被称为“最不幸运的用户”。

总之,2015年,我在RethinkDB身上下了巨大的赌注,就像我启动SageMath项目时,打赌Python在2004年回归。这两年我访问旧金山的RethinkDB开发商时,我多次对他们说:“我有很好的既得利益,你们肯定会分得一杯羹。”我的SageMath公司也为RethinkDB的支持合同付款。

因为A16Z会议、公司董事会议即将召开,而我的想法是可持续的商业模式。SageMath公司的业务模式是通过订阅SageMathCloud(SMC,在Google Cloud Platform上托管)赚钱。当然,业务的运作已经根据客户的反馈改进了很多细节。

虽然我们的软件绝对是开源的,但我们销售的是便利性,易于访问和使用,我们通过托管数百个共享基础设施的项目来提供价值,所以它对大学而言,更廉价也更容易支付,而不是托管我们的软件本身(这也是相当容易)。

这就是我们的商业模式,我认为它是可用的;至少我们的月经常性收入(MRR)正在稳步增长,收入是我们托管成本的两倍(由于开发人员成本,我们目前仍然没有可观的现金流)。

我可以确定,RethinkDB的商业模式可以通过以下方式赚钱:

  • 向公司销售支持合同(我就买了一个)。 

  • 销售RethinkDB的闭源专有版本,具有企业感兴趣的额外功能(他们有一些这样的需求,例如审计日志的查询)。

  • Horizon将成为Firebase的云托管竞争对手,具有独特的优势,用户可以选择从云迁移到自己的私有数据中心,以及更多的可定制性。这个策略取决于用户从云迁移而不是迁移的趋势,RethinkDB的一些人认为这是一个真正的趋势(虽然我不同意这个观点)。

我不知道他们现在正在认真地努力做什么。RethinkDB的闭源专有版本似乎是一个刚刚开始的,也就是最近努力做成的事。也许它直接抵触成为一个纯开源公司的愿望?

足够多的用户能使商业模式更容易运行。我怀疑RethinkDB没有很多真正的用户。用户数量的趋向与邮件列表流量变化大致呈线性关系。并且与SageMath邮件列表相比,RethinkDB邮件列表的流量少了一个数量级,而SageMath有大约50,000个用户。

仅仅一年多前,他们还告诉人们不要认真使用RethinkDB,直到最近,RethinkDB才宣告可应用于生产环境。数据库技术的采用周期很慢——人们明智地等待Aphyr的测试,与类似技术的基准测试等。与众不同的是,我选择RethinkDB比大多数人更早,因为我非常喜欢RethinkDB的设计理念。这是我喜欢的第一个数据库,已经用了很多很多年了。

结论

RethinkDB并不能形成真正的商业模式,短时间内不会成气候。

RethinkDB作为一个开源项目,我很担心它的未来。我不知道开发人员是否有过一名开源社区志愿者的成长经验; 它的困难令人难以置信,我甚至不清楚他们是否会参与。至少,我认为他们必须切换到非常自由的许可证(Apache而不是AGPL),并使一切(例如自动化测试代码,文档等)开源。

对开源基础设施工作的支持是疯狂的——主要来自小政府补助金(用于研究软件)或公司员工(使用软件)的贡献。以公司友好的方式进行限制是至关重要的。

公司可以通过多种方式获得激励,包括:

  • 获得下一轮风险投资;

  • 找到可持续盈利模式,来自用户购买的收入大于企业支出; 

  • 先不顾成本抢占大量用户,再考虑如何赚钱。

SageMath是我在2004年开始的一个长期的开源项目。我努力使SageMathCloud周边业务取得成功,否则我会失败,因此我对风险的容忍度很低。失败不是我的选择,我不会寻找退路。对我来说,与我的价值观最匹配的策略是激励我的公司建立一个有利可图的业务,因为这是最有可能生存的,也给我们维护开源和纯数学软件的长期支持的自由。

因此对于我的公司来说,既不优化提高下一轮风险投资,也不考虑成本增长。你会惊讶有多少人认为我在这一点上完全错误。

Andreessen-Horowitz

我和RethinkDB公司的开发人员,促膝交谈,谈了足足一夜,他们对于公司未来的商业愿景,过分的自信让人非常担忧。就我所知,他们可能是对开源最友好的风投公司。风投的资金充足,这让我看到了一丝希望,在开源领域,建立一家成功的初创企业并不是没有可能的。于是,我为A16Z准备的会议删除了幻灯片中关于RethinkDB的部分内容。

我抵达A16Z时受到了令人难以置信的欢迎。当我进入房间时看到原子弹工艺品,感到诧异,然后进到一间漂亮的小办公室等待。

在会议上,我播放了幻灯片,并解释了商业模式、目标等。他们说,A16Z没有直接投资我商业计划的地方,因为我五年之内的计划不够雄心勃勃,而且我没有明确的退出计划。 他们也担心数学软件Mathematica和Matlab的总市值太小(只有几亿?)。

然而,他们还是慷慨地向我介绍了更多的潜在天使投资者。

我们认为我正在尝试建立公司对外来投资的价值。我希望得到一些与我公司感兴趣的投资组合公司的了解或介绍(例如Udacity,GitHub),但他们偏离了所有这些问题。还有一些困窘,因为我很清楚向他们展示了我在做什么,我不是要求钱,而这不是他们的习惯。

不管如何,我很感谢这次会议,它让我醒悟,他们很明白无误地认为我完全错了:我不是想尽一切可能吸收投资者更多的钱。

BaseCamp

在创建SageMath公司的第一年,我曾计划筹集一轮风投,并为此做一切准备。然后我读了一些DHH的关于Basecamp的书,并意识到许多观点适用于我的情况,给了我价值观。经过反思,我改变了主意。

我认为Basecamp本身主要是闭源,所以他们可能有建立业务的优势。 SageMathCloud和SageMath确实是100%的开源,而且构建一个完全开放源代码的业务可能更难。

投资者认为我们开源项目的知识产权毫无价值,一旦像RethinkDB这样倒闭,在投资者眼里就一文不值。就像开源项目RethinkDB一样,RethinkDB只是关闭,而Stripe只雇了RethinkDB的工程师。

注:Basecamp是37signals公司旗下的一款非常流行的基于云服务的项目管理软件。以简单易用和颠覆性的创新而出名。Basecamp提供了消息板,待办事宜,简单调度,协同写作,文件共享。而不是甘特图,炫丽的曲线图,和繁重的电子表格。目前,成千上万的人同意这是一种更好的方式。来自的Farhad Manjoo说:“Basecamp代表了Web软件的未来。”

在A16Z会议后的第二天,我和我的董事会,在几个小时内进行了充分的讨论。董事会一些成员也努力说服我,应该筹集更多的投资者的资金。

Will Poole:你已经注定失败

两个星期前,我遇到了Will Poole,是我朋友的朋友,我们谈到我的公司和计划。 我给他描述了我在做什么,一切都是开源的,我鼓励公司建立一个企业,而不是提高投资者的资金。他聆听了并问了很多后续问题,他很清楚的明白表示:建立一家公司的想法非常好。

但他的反馈令人沮丧。于是我说:“所以,你说我基本上注定失败了。”他回答道:“我并没有说你注定失败,但是通过你的方法,也许只能做一个小企业,长不大。我正在做的,绝对不会对孩子们的大学学费有任何帮助或者影响。”

如果这是一个随机的人的反馈,它可能没有那么令人不安,但那是Will Poole的反馈,他 1996年加入微软,负责运营微软数十亿美元的Windows业务。Will Poole是一位退役的四星上将,参与过一个成功的海外战争;他在附近转悠过几次,试图说服我尽可能立即将SageMathCloud(SMC)闭源,并试图说服我让用户在SMC中创建内容,这样我可以重用任何想要的内容。

我感到很震惊,并相信了他:我需要关闭SMC的部分,例如,我们花了一夏天实施的Kubernetes新后端。 (Will:如果你读这个,虽然这场讨论对我而言真的很不安,但我真的很感激和尊重你。)

为我介绍Will Poole以及其他人的朋友,将我描述为一个不想接受投资的、令人沮丧的企业家。他说,根据他在商学院的所学:良好的公司都是有很多债务的。我这样的情况让他感到惊讶,成了他一个有趣的例子。他补充说:“当然,我从来没有经营过这样一家公司。”

我结束了与Will的会晤,我相信,让SageMathCloud闭源,会使事情变得更加可靠。 然而,经过几天的思想斗争,并与公司其他人讨论,我决定不进行闭源。这只会使我们的工作更难、方式更难。 但我不会迫于恐惧做出任何决定。

我不在乎外人说什么,我坚信能把开源做成一门成功的生意,比如Wordpress即是一例。所以我不需要风险投资。

注:SageMath 是一个免费的、开源的数学软件系统,采用GPL协议。它整合了许多开源Python包,采用Python语言编写,但也支持其他语言。它的目标是创造一个可变的开源软件以替代Magma、Maple、Mathematica和Matlab。Sage不仅是一个软件,也是一个编程环境,提供命令行模式、笔记本模式,可以编写编译型程序和解释型程序。目前Sage支持Linux、Mac OS X、BSD、Solaris平台。

反思中国开源项目生态

从RethinkDB的倒闭,反思国内外开源项目

by  刘奇@PingCAP    

刘奇,知名的 Go 语言专家和 Redis 专家。 PingCAP 联合创始人兼CEO,先后创建了 Codis、TiDB 等知名开源项目。曾任豌豆荚、京东资深系统架构师。现从事开源的分布式 NewSQL 数据库 TiDB 开发。擅长高并发、大规模、分布式数据库系统架构设计。

国内开源软件生态系统的目前现状

RethinkDB 在本月初宣布关闭,应该是开源界一件令人惋惜的大事。我得到消息的时候正跟 RethinkDB 一起在荷兰的 Percona live 大会上,前一天 RethinkDB 刚刚上台做了talk,接着就发出了宣布关闭的消息。最近大家也都在就这个异动复盘探究,看法种种不一而足。

从 PingCAP 的角度来说,关于前辈的倒下的原因我就不展开讨论了,我关注的点是在这个消息的背后,作为日渐成为热点的软件开源模式,在现在的环境里是否到了全面发展的契机,尤其是有了硅谷生长的开源项目作为前车之鉴,在中国生长起来的开源项目可以借鉴的有哪些。 

硅谷作为开源的大本营和发源地,奠定了开源业态的基因。开源模式是一种很明确的以开放式 文化为基础,有效率及高质量的软件协同工作及分发方式,国内的开源软件近年来在逐步发展 壮大,从开发者、社区、企业、组织媒体等环节都在逐渐形成生态。开源软件生态系统从国内 来讲,确实与硅谷的原生状态有一些差异,比如发展阶段、文化基因、社区环境和商业环境等。

综述来讲,我认为国内的开源软件生态系统可能有如下几个特色。

1、开源项目日益增多,且分布越来越细化,或者说垂直。从开源项目的增长速度来看,可以 感觉到大环境对开源方向的信心:一方面,越来越多的大型企业开始拥抱开源,比如 Google、微软都在拥抱、推动开源,开源正在快速蚕食市场;另一方面,为数众多的小而美的开源创业团队保持指数增长,明星项目开始出现。 

2、项目呈现更加国际化的趋势。越来越多的国家参与开源,采购开源产品,其实从本质上来 说这应该是开源项目的基因所决定的,开源的协作和共享精神让开源项目从一开始就可以得到 全球智力资源的帮助,一个优秀的国内开源项目会获得全球范围开发者的贡献,在最大范围内公平自由生长。

以我们自己来说,最初 TiDB 在 GitHub 开源仅两周的时间,就得到了社区的积极反应,捷克的编译领域大牛 cznic 很快帮助解决了 S/R 冲突的问题;也第一时间得到了 beego、gogs、xorm 等知名项目的支持。

如今,PingCAP 项目在 GitHub 上开源一年有余, 已有上百名来自世界各地的程序贡献代码,单 TiDB 一个项目的 Star 数已近 5000,这说明 TiDB 在社区的共同努力下已经成长为国际级的明星项目。 

3、项目发展相对早期,尚处于共同探索阶段。目前来看成功商业化的项目还很少,一是太新 ,一种新的方式出现要经过教育市场的过程,市场认知和接纳需要一个过程;二是国内的开源 文化本身也处于形成阶段,有误区,也有争论。

大家都在凭借自己的感觉来慢慢摸索,在开源 协作共享的大精神之中形成各自的风格。PingCAP 目前也处于这样的形态,所以特别注重与 社区的融合和交流,力求建立系统化的精神内核。 

4、项目协作和依赖也更加明显,这也是生态系统的一种体现,举国内的例子来说,TiDB 就 依赖了 RocksDB、 etcd、 prometheus 等系统,跨项目、跨国家的协同开发/测试是常态,通常开源项目都需要构建自己的生态,而彼此协作就形成了大家的生态,同时各自得以保持专注, 这对项目的整体质量帮助是非常大的。 

开源是趋势,但一个新生态在形成过程中必然会经历种种不可推测的变化。有硅谷经验在先之 外,国内的开源从业者已经站在了风口浪尖,我们深知在大家都在观望的情景下,开源软件的每一步都会在放大镜下被放大,所以要谨慎走好每一步,大胆假设,小心求证。 

如何挖掘开源项目的实际商业模式和目标? 

商业化是开源软件不能规避的重要课题。目前国内业界大部分的普遍认知,仍停留在“开源如何赚钱”这个原生问题上。虽然开源模式的成功先例已经在硅谷越来越多的出现,实际也比较成熟了,本质上开源软件更多的是走 service 的路线,更新的思路是让 service 变成类似 SaaS 的模式,比如客户每年订阅厂商提供的升级、部署、咨询等服务,然后所有的事情交给厂商处理,这个和 SaaS 的模式就比较接近了。

但是作为互联网应用的超级大国,在国内相同的商业模式并不能依靠简单复制就可以成功。开源项目要获得持续发展,在商业化挖掘上我们 也在慢慢积累一些心得,跟大家共享。

1、需要进行大量实际业务场景的测试验证。我们发现社区版本的工程成功,如果不放在真实 业务场景下测试,就很难保证项目的真正成功。TiDB 目前在多个行业客户进行到 POC 阶段 ,真实行业场景的测试帮助我们快速发现了在工程条件下无法预判的问题。

2、持续在社区里保持开放和交流,吸引越来越多的企业团队,一方面可以获得高质量的代码 贡献,另一方面,企业团队会将大量业务场景带入,帮助项目完善,实现客户和项目的双赢。

3、选准进入商业化的时机。尤其对于 TiDB 这种基础设施类的很核心的项目,一定在尽可能稳定成熟的基础上进行商业版本的发布。在考量过社区版本的成熟度及 POC 后获得充分的业务场景信息后,再进一步进行商业化版本的设计,这需要整个开发团队具备了对行业场景深度研究,并对版本的稳定性有了充足信心。

4、在确定销售策略的基础上探讨商业目标。这应该是进入商业化挖掘更深层面的阶段了。一 个产品解决谁的痛点,如何解决痛点,在这个阶段都应该已经有了比较清晰的定位。一个开源项目从技术圈层向业务圈层的渗透,更是需要成熟的成功案例。团队在早期拿到的前几个商业化项目非常关键,可以印证预设与实际的误差值。

Slava Akhmechet 在 RethinkDB 的开发者博客上写到:“......RethinkDB......最终还是无法建 立可持续发展的业务。......我会撰文介绍汲取的教训,以便其他初创公司能够从我们犯的错误 当中得到启示。” 倒下之后的自我解剖,这就是开源精神的榜样。

如何吸引投资者

任何商业模式面对投资者都需要具备自身独特的吸引力。不过开源项目确实有一些特别的评价 指标,和其他商业项目有些差异。鉴于开源项目先天的特性,即所有的源码都开放出来的状态 ,有一些可以衡量的硬指标可以作为评价项目的标尺。

比如,如果在 github 上面托管的项目, 那么 star 数量、fork 数量、contributor 数量等都是比较重要的指标。看指标是第一步,也非常直观,可以直接判断出业界对这个开源项目是否有信心,是否健康。

还是用 PingCAP 举例 ,我们在直观指标方面是比较占便宜的,TiDB 在 GitHub 上开源一个月,star 数就超过 2700 ,这个数字在我们跟资本接触的初期非常强势的支撑了我们,也帮助资本面对一个全新的前沿 技术开源项目有了一个初步可靠的判断。 

当然,投资者本质上还是更关心商业前景,比如技术的领先程度,是否有比现有项目好十倍的用户体验、 市场规模、客户群体、带给客户的实际价值等。这些是任何一个优质项目都必须具备的特质,开源项目也必然需要遵循这个游戏规则。 

从RethinkDB的倒闭,反思国内外开源项目

by Kylin CEO 韩卿

Luke Han(韩卿),Kyligence联合创始人兼CEO,Apache Kylin联合创建者及项目委员会主席,首个来自国内的Apache软件基金会顶级项目VP,负责Kylin的战略规划,发展路线图及产品设计等,并致力于发展Apache Kylin全球社区,构建生态系统及推广等。

曾任eBay全球分析基础架构部大数据产品负责人,Actuate中国首席顾问,卓越动力华东区技术总监等职,在大数据,数据仓库,商业智能,可视化情报分析等领域拥有丰富的经验。

国内开源软件生态系统的目前现状

开发容易,开源不易。这次RethinkDB创业公司的倒闭给开源届带来了很多的疑惑,但其实这只是诸多开源项目中很正常的一个环节,任何项目都有生命周期,如果没有很好的运营,很好的商业支持,出现各种状况自然难免。比如最近的OpenOffice、NetBeans等等。

但这反过来,又是开源的一个好处,虽然背后的公司可能因为各种原因倒闭,或者放弃这个项目,但,使用者们、爱好者们可以继续推动该项目的进一步使用和发展。而如果没有开源,那肯定没有机会了。

今天,在国内,开源生态正在一个蓬勃发展的阶段,特别是这两年大数据、容器、云计算、前端等的飞速发展,越来越多的开发者、团队和公司都积极贡献到开源世界来。

据不完全统计和观察,分为三种类型,一种以国内开发者和用户为主,代码、论坛等都托管在国内的代码云服务上,也有很大一部分托管在Github上,使用中文交流,经常举办线上线下的活动。最近看到很多非常不错的项目,解决了非常多国内创业公司等的技术挑战,大大促进了相关业务的发展。

第二种是积极参与几大热门的开源社区和项目,比如大数据方面的Hadoop、Spark、容器Docker,云计算OpenStack,特别是很多以这些开源项目为基础的创业公司,一方面积极在国内布道,宣传相关的技术,另一方面,非常令人欣慰的是看到了很多高水平的作者正在不断成为相关项目的committer,华人在社区的影响力未来一定会很大。

第三种更加的国际化,甚至一开始都不太有人知道这是完全由中国人主导的开源项目,托管在Github上,全面使用英文,可以很快吸引来自国际上的参与者和开发者,特别今年,看到很多项目都被相关领域的国际大牛认可和点赞,非常令人兴奋。

从参与人来说,也分为三种。一种是个人的自发参与,相对来说都是兴趣使然,特别在一些工具、框架等方面,基本都是利用个人业余时间来贡献。这群人的追求相对比较单纯,以开源为乐,以兴趣为驱动力。

第二种为创业公司,包括基于开源项目的商业化落地以及有自己核心开源项目的创业公司,基本上在开源项目上会投入非常大的资源,特别是同质化比较严重的领域,需要投入非常大的技术力量以差异化,另外也在商业模式上不断突破。而拥有自己核心开源项目的创业公司,则几乎是全员参与开源了,该开源项目是否能够持续发展和不断创新,是未来发展的关键,商业化是这类型的驱动力。

第三种则是大公司参与的开源,更多的会通过fork分支等方式来运营相关的项目。一方面是由于业务的特殊性,一方面更多的可能是公司的战略考量。不过最近看到好的趋势是几个大公司都将相关的patch、拓展及新feature等提交给主干,意识到要和社区一起玩很重要。这个类型的驱动力来自公司的战略考量及布局。

总结一下,这里并没有评价好坏的意思,仅仅只是做一些简单的分类,从开源社区的角度来看,只要是有贡献,都是非常好的。

如何挖掘开源项目的实际商业模式和目标?

一个成功的开源项目必须不断地持续发展,而发展,离不开商业的支持。没有合适的商业模式及方法,最终项目都会慢慢冷掉,慢慢被淘汰。从商业的角度来看,开源是一种营销方式,使得以往封闭的、需要很长周期的技术验证等可以通过开源来快速的验证。甚至在技术尚未完善、成熟之时,就可以拥有早起用户,积极获得反馈,并一起将该项目发展的更好。开源项目很容易获得开发者的认同,但获得商业用户的认同确实是比较有挑战性的。

从我们Kylin的经验来看,找准切入点,切实解决行业、用户的痛点,并带来更大价值的时候,客户自然愿意付费。举个例子,Kylin所做的是将传统数据仓库、商业智能的能力在Hadoop等大数据平台上实现,而且有更好的性能,突破了以往的一些技术限制。

从用户角度来说,可以从传统的非常昂贵的一体机、商业数仓等迁移到非常廉价的大数据分析平台,我们有个客户之前的一体机需要2000多万的成本,而迁移之后只需要400多万的成本,这对于用户来说,带来的价值远超所付的费用,而且技术的突破,使得他们能够更好的服务业务用户和新的场景。

开源容易,创业不易,对有志于开源商业的朋友来说,首先要想清楚,如何帮助用户,以及如何为用户带来实际价值。不管是节省成本、创造利润还是提升效率,只有当用户深刻的感觉到中间的价值的时候,这样的开源项目才会不断持续的健康发展。

开源项目如何吸引投资者

创业容易,融资不易。即使你拥有很好的技术和用户群体,融资也绝不是件简单的事情,即使今天Kylin拥有国内外上百个大型用户,作为国内唯一的Apache 顶级开源项目,融资也并非易事,也是经过了很大努力后,获得了来自红点创投几百万美元的天使投资。 其中最大的原因在于绝大部分的投资人都是非技术出身,而开源项目往往都是技术范很强的群体。

这两个群体完全是两个世界,技术人更多强调技术的先进性,前瞻性,而投资人更多关注当下的业务,收入和未来的空间;技术人更希望描述技术的实现,牛逼之处,而投资人更多关注在用户付费的意愿,用户的类型等;

技术人更多的强调自己的技术能力、开放能力,而投资人更多的关注团队,搭配及互补;技术人很少有财务规划经验,而投资人总是希望能够有很好的财务预测和数字,等等,不一而足。而开源商业模式,在中国本来也是一个新兴的事物,需要对投资人进行不断的教育和引导。

那么,作为一个有创业想法的开源作者,如何去吸引投资人?首先,你需要有口碑,不管是项目、技术、团队还是用户。因为开源太容易了,github上push一堆代码就成了,但,投资人是最精明的群体,虽然他们看不懂代码,但却知道找合适的人来评价相关的项目,所以融资前,需要好好经营你的开源项目。

近一步融资,这里给出我的几点建议:

改变自己,让自己跳出技术的框框,从营销、销售、投资的角度去看待自己,去历练自己的能力,但这往往并不容易。

组团打怪,找到合适的合伙人,特别是和自己互补的,在业务或者营销上有专长的,一起组队,一起找到可以说服投资人的商业模式,但人和人,很多时候是缘分。

寻找天使,最近国内很多互联网公司的上市,诞生了很多的土豪,可以寻求做类似这方面的的朋友(特别是技术背景出身)的人进行天使投资,迅速组建团队并进行市场验证,在找到合适的突破口后再进行融资,当你有数字的时候,比你用PPT去融资要简单的多。

最后,作为技术人员,千万别去“只差一个CTO”,“就缺一个会写程序的”的创业团队,不靠谱的几率远远大于成功的概率:)

从RethinkDB的倒闭,反思国内外开源项目

你一直关注国内外哪些技术?国内阿里人工智能、腾讯毫秒响应系统还是百度第三代Spider?还是国外Operator研究的购物AI、Facebook的实时数据流处理或LinkedIn用Apache Helix构建的云系统?12月北京,敬请期待100+位技术专家的合力筹备!ArchSummit八折最后 3 天,点击“阅读原文”了解更多!

从RethinkDB的倒闭,反思国内外开源项目

从RethinkDB的倒闭,反思国内外开源项目

今日荐文

点击下方图片即可阅读

从RethinkDB的倒闭,反思国内外开源项目

Vue.js作者尤雨溪:

Vue 2.0——渐进式前端解决方案


喜欢我们的会点赞,爱我们的会分享!

从RethinkDB的倒闭,反思国内外开源项目



查看原文:http://www.zoues.com/2016/10/27/%e4%bb%8erethinkdb%e7%9a%84%e5%80%92%e9%97%ad%ef%bc%8c%e5%8f%8d%e6%80%9d%e5%9b%bd%e5%86%85%e5%a4%96%e5%bc%80%e6%ba%90%e9%a1%b9%e7%9b%ae/
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
RethinkDB 设计用来存储 JSON 文档的分布式数据库,可通过简单操作实现多机分布式存储。支持表的联合和分组查询。什么是RethinkDB?RethinkDB 是从头打造的第一个开源、可扩展的JSON数据库,用于搭建实时网页。全新的访问模型颠覆了传统的数据库结构:开发者只需告诉RethinkDB,实时连 续地将查询更新结果推送到应用就可以了,不用每次都去poll一遍。RethinkDB的实时推送结构为搭建可扩展实时应用节省了大量时间精力。除了为实时应用提供了全新的设计之外,RethinkDB 还提供了一种灵活的查询语言、直观的操作和监控API,安装学习起来也非常容易。你可以查看这篇 Advancing the realtime web 得到更多RethinkDB计划的技术细节。什么时候RethinkDB是一个好的选择?当你的应用很大程度上有赖于数据的实时反馈时,RethinkDB 就会成为一个很棒的选择。“查询-响应”式的数据库访问模型在web上的确很有用,它可以直接映射到HTTP的“请求-响应”。而现代应用则需要将数据直接实时地传送到客户端。能够最大化得益于RethinkDB实时推送架构的例子包括:协作网站和移动应用数据流分析应用多人在线游戏实时交易场所设备联机举个例子:在协作设计一个app的时候,其中一个用户改变了某个按钮的位置,服务器就必须在第一时间通知所有在完成同一项目的其他用户。网页浏览器 能够通过WebSockets和http持久连接来支持这一功能,但数据库系统要迎合实时需求仍然是一个大的工程难题。而RethinkDB作为第一个开 源、可扩展的数据库,就是特别为实时推送数据到应用而设计的。哪些人在用 RethinkDB?RethinkDB 的用户包括上百个科技创业公司、咨询工作室和世界五百强企业。这里是其中的一些:Jive Software 和 Mediafly 使用RethinkDB搭建强大的响应式网页和移动应用Pristine.io 和 Narrative Clip 使用RethinkDB搭建用于设备连接的云架构Platzi 和 Workshape.io 使用RethinkDB进行实时分析CMUNE 和 NodeCraft 使用RethinkDB构建大规模可扩展多人游戏RethinkDB 拥有超过十万开发者的活跃社区和上百个来自世界各地的代码贡献者。RethinkDB是基于现有技术的吗?高效实现实时推送架构需要重新设计绝大部分的数据库成分,包括查询执行引擎、分布式系统、超高速缓存子系统和存储引擎。因为架构影响到每一个数据库 组成部分,RethinkDB不得不从C 开始一步步写起来。RethinkDB 是由数据库专家组成的团队花了五年时间做出来的,还得到了来自世界各地上百个代码贡献者的帮助。RethinkDB和realtime sync不同在哪里?和Firebase, PubNub 或者Pusher 这类实时同步API相比,RethinkDB主要不同在以下三个方面:首先,实时同步API是云服务,而RethinkDB开源项目。RethinkDB也有云端,可以通过我们的合作伙伴 Compose.io 和 Amazon AWS获得。它还可以部署在你自己的架构中,没有任何限制。其次,同步实时API只局限于同步文档,而RethinkDB是一个有着更普遍应用范围的数据库系统。 在RethinkDB中你可以运行任意query,包括table joins, subqueries, geospatial queries, aggregation, 还有map-reduce。实时同步服务有更多查询功能上的限制。最后,实时同步API的设计是直接从浏览器访问。这使得基本的app能够快速地跑起来,然而一旦app扩展了,灵活性就会受到限制。 RethinkDB的设计是从应用服务器进行访问,这一点上更像是传统的数据库。可能会要多花一点设置代码,但拥有足够的灵活性去适应应用的成熟。RethinkDB和MongoDB又不同在哪里?RethinkDB所基于的架构和MongoDB非常不同。开发者只需告诉RethinkDB,实时连续地将查询更新结果推送到应用就可以了,不用 每次都去poll一遍。你同样可以在RethinkDB上用传统的“查询-响应”范式来书写应用。然后在你开始为app添加实时功能时再去订阅实时数据 流。举个例子,这是你让RethinkDB查询一个文件时的命令:r.table('users').get('coffeemug').run()然后这是你从RethinkDB订阅更新流时用到的语句,在任何时候文档发生了变化就会推送:r.table('users').get('coffeemug').changes().run()RethinkDB的实时架构可以和MongoDB的oplog相提并论,但前者提供了更高层次的抽象。RethinkDB的数据流与查询计算引擎无缝整合,并允许你订阅查询结果的变化,而不仅仅是把数据复制过来。这种架构大幅度地减少了搭建实时app所需的时间和精力。除了实时推送架构,RethinkDB 还有许多胜过 MongoDB的地方:一种高级的查询语言,能够支持table joins, subqueries 和大规模并行式分布计算。融合了查询语言的操作和监控API,大幅度降低了RethinkDB扩展的难度。简洁美观的UI 易于复制转发,拥有在线文档支持和查询语言建议。可以看看这篇 technical comparison of RethinkDB and MongoDB 里面的评论比较中立一些。想听听个人观点的,请看@coffeemug 的what makes RethinkDB different.什么时候RethinkDB是一个不好的选择?当你需要用到完整ACID支持或者更强大的架构实施,RethinkDB就不大好用了。在这种情况下你最好用一些传统的MySQL或者PostgreSQL数据库。如果你需要做深度、密集型计算分析的话,你最好用Hadoop或者类似于Verticaa的面向列的存储工具。在某些情况下RethinkDB会在一定程度上牺牲书写可用性(write availability)来保证数据一致性(data consistency)。如果高要求的书写可用性对你来讲很重要,那你也不要纠结了,像Riak这样的Dynamo式系统可能更适合你。想要更多地学习RethinkDB?阅读 ten-minute guide 开始学习RethinkDB。对于熟悉分布式系统的程序员可以直接阅读 architecture overview 。走捷径用 cookbook,你可以看到许多常用的 RethinkDB查询例子。 标签:分布式数据库
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值