过去一年云厂商在开发者生态上的争夺开始变得激烈,为什么会出现这样的现象呢,是不是开发者生态,已经成为了云这场战争的胜负手呢?这篇文章就来探讨下这个话题。
事件
我们先看看在过去一年发生的几起重要的开发者生态的事件:
微软 75 亿美金收购 Github,Google 领投 1 亿美金 Gitlab,使得 Gitlab 估值突破 10 亿美金;
Coding 获腾讯云一亿元战略融资;
开源厂商 vs. 云厂商;
开源厂商和云厂商在 2018 年发生了非常多的状况,关系在开始变得微妙,有几种现象出现:
1) MongoDB、Kafka、Redis 纷纷修改开源协议,限制云厂商,Neo4j 企业版不再提供免费下载;
2) 微软在 2018 年非常明显的加大了在开源的投入,上面说到的收购 github,还有例如加入 OIN,开源的 VS Code 在 2018 年是 github 上吸引到最多 contributor 的项目;
3) Pivotal、ElasticSearch 上市,目前的市值都超过 50 亿美金,Confluent (主要产品 Kafka)、Databricks (主要产品 Spark) 宣布完成新一轮融合,市值均突破 25 亿美金,国内的话主要是 Pingcap 完成的新一轮 5kw 美金的融资,致敬下,作为技术人员对在国内能创办出 Pingcap 这样的技术产品公司无比佩服;
4) 阿里巴巴 9kw 欧元收购 Flink 母公司,微软收购开源公司 CitusData(PostgreSQL 商业化的 Startup);
海外三家云厂商的观点
再来看看海外几家云厂商自己在开发者生态这块传达的信号:
AWS
「大概 12 年之前,我们深知云将给软件带来翻天覆地的变化,我们创造了 AWS。一直以来 AWS 希望与软件开发者密切合作,打造出一个现代化的软件开发框架。而不是告诉客户,你们需要什么工具。在 AWS 的信念中,我们认为真正知道软件应该如何开发的只有一个人,就是客户本人。」
这是 AWS CTO 在去年中国的 AWS Summit 上讲的,其实在其他很多场合,尤其是每年的 AWS:reInvent 上也都会不断的表达这个观点,就是 AWS 和软件开发者是在一起的,AWS 的会议吸引了无数优秀开发者参加和关注,毕竟里面讲的很多都是未来的软件发展趋势。
尽管 Amazon 给人的感觉在开源上贡献不大,但在技术发展上我觉得还是起到了不小的作用的,在开发者群体中的认可度也足够高。
微软
微软作为一家操作系统起家的公司,在开发者生态上一直就非常重视,而随着云的发展,感觉更进一步了,除了上面的 github 收购外,微软也开始非常大力的加大在开源上的投入,可以说,微软对开源的贡献是非常有助于推进这个世界技术的发展的,微软之前的形象开始有了不少的扭转。
Google 早期通过发表论文,在开发者群体中得到了非常高的认可,同时也非常切实的影响了世界的技术发展,例如大数据领域。
近几年 Google 通过各种开源,更是形成了不错的开发者生态,无论是 K8S、TensorFlow,都对世界技术的发展起到了很大的推进作用。
Google Cloud 的 CEO 最近还公开的讲「谷歌云:我们对开源的态度与 AWS 不同」来怼 AWS,讲的核心的一段是「一直以来,谷歌云采取与开源社区合作的方式,而不是在自己的云平台中使用并销售开源技术」,结合上面的开源厂商 Vs 云厂商的一些事件来看这段就更明白了。
关于开发者生态,我的观点
从上面的这些内容可以看到的现象是,各家云厂商都在通过开源、收购等方式加强对开发者生态的投入,拥有众多开发者用户的开源软件厂商在资本市场得到了很好的认可,开源厂商和云厂商由于利益上的冲突,关系尚待理清。
开发者生态为什么会发展到今天的这个局面,必须说说云的发展趋势。
最早用户对云的使用基本是纯粹的使用机器资源,和以前的虚拟主机等其实没有太大的区别,而发展到今天,几个大的云厂商强大的资源集约形成的规模效应,更是让用云的机器资源这件事成为了不需要再纠结的点,尤其是对初创公司而言。
随着对云机器资源的使用后,慢慢的开始有了用户开始使用更多的云的软件服务,例如存储、数据库等,在美国这个趋势非常明显,越来越多的公司画的技术栈中有越来越多的云软件产品的出现,下面这张图是 Next Platform 上对于 AWS 中计算、存储、网络和软件收入的分析:
可以明显看到软件这块越来越高,意味着越来越多的用户除了使用云机器资源外,开始使用云软件服务。
从对客户的价值上来说,越多的使用云软件服务,也就意味着自己在这方面投入的人员可以大幅减少,更加专注在自己的业务上,这一点随着经济形势的变化会更加的重要,而站在云厂商角度呢,客户使用越来越多的产品当然是更好,所以从趋势上来说,越来越多的使用云软件服务会加速。
而从技术趋势上,看到非常明显的两点:
通过 PaaS 屏蔽 IaaS,对客户价值而言这是非常有益的,同时对云厂商来说也意味着 IaaS 层拥有了巨大的创新机会,以及不透明后带来的利益机会;
No Lock-in,由于越来越多的使用云软件服务,客户心里上会非常担心 Lock-in 的问题,尽管我认为不会有多少客户真的同时部署在多家云上,但一定会需要具备这个能力,就是可以很简单的进行切换。
从这些趋势来看,也就意味着云的竞争进入云软件竞争的时代,云软件的用户群体是开发者(当然,有另外一种观点是通过强有力的 SaaS 软件直接服务最终用户,但我认为那样覆盖的面始终是有限的,云厂商自己很难去做好各种 SaaS,只能是构建好一个平台,让上面有更多的 SaaS 厂商),并且软件和其他很多产品不一样,尤其是那些渗透到代码中的 API,通常来说切换的代价很高,例如开发框架用了 Spring,要想切换成别的很复杂,所以这层的竞争非常重要的一点就是谁能拥有对应最核心的非标准化领域的最多的开发者用户,也就是开发者生态。
要想获得开发者用户,和 2C 的很多产品竞争完全不同,这个领域基本不是靠砸钱就能获得用户的,很重要的三点是:
开源触达
通过开源,让更多的开发者用户能即使不使用云软件服务的时候也能接触到,从而培养大量会用的开发者。
同时借助开源,也可以更好的吸收各行各业的需求,使得产品更加的具备通用化的能力,覆盖更大的规模和更广的场景。
怎么做好开源,对中国的公司是很大的挑战,这里面的套路非常的深。
成功的开源软件因为在相应领域覆盖了大量的开发者用户,当在云上推出相应的商业服务时也会自然的收获用户,但由于目前这些利益基本都被云厂商拿走,这让相对应的开源厂商的努力得不到回报,导致产生矛盾。
关于云厂商和开源厂商的关系,我觉得在 2019 应该会进一步明晰,一方面云厂商自己会加强在核心领域的开源,触达更多的开发者用户,另一方面会通过收购去补强核心领域的能力,很多人可能觉得这样不好,但我还是坚定的认为正因为有商业利益的诉求,这样的开源反而才能更为持续、健康快速的发展,对这个社会的发展而言是更有利的。
开源对这个世界的技术发展、业务创新是起到了很大的帮助的,真心希望这个世界越来越多的开源,而不是越来越封闭。
技术领先
在开源界中,同技术领域同质的产品基本只会留下一个,必须保持持续的技术领先,否则就算一个阶段领先,也很容易在下一轮技术迭代中格局被改变。
工具触达
触达开发者用户的另一个很好的方法是工具,开发者用户群体较大公约数的工具是 IDE,这大家就很容易看懂为什么微软开源 vs code,并且那么重视,另外一个方面的工具就是开发流程方面的,代码是整个开发流程流转的核心产物,这也是 Github 巨大的价值。
综合来说,我认为开发者生态是未来云的胜负手的关键,从上面也可以看出,要做好开发者生态并不简单的是一件运营的事,而是产品规划、技术创新、社区建设、工具建设、运营等一起的事,这也是为什么我们看到海外的几家云公司是把这个上升到非常高的高度的原因。
对于中国做这块的创业公司而言,我认为以下的两个方向是非常好的时机点:
社区
一个优秀的开发者社区对形成繁荣的开发者生态是至关重要的,无论是问题、讨论、线下活动等,国内现在好像已经基本没有优质的开发者社区了,前几年还是有几个的,可惜当年做社区的同学都太难获得利润,导致很难运转下去,但到了今天这个局面下,我觉得会很有机会,不过要做起一个社区必须有长时间投入的打算。
开源技术产品
技术领域需要的产品其实是非常多的,即使是云厂商自己,也很难去全部覆盖,因此这个方向的机会空间还是不错的,首先需要的是对相应有一定规模的技术领域的洞察,影响力,同时需要长时间的投入和经营。
衷心希望看到国内在为程序员这个行业群体服务的创业越来越繁荣,那样一定会让中国在 IT 技术层面逐渐对世界产生越来越大的影响力,更好的推进世界技术的发展。