开源时代:刘韧对话任旭东崔宝秋章文嵩蒋涛
刘韧:现在进入第二轮问题。开源从以前的理想主义小团体,慢慢就像蒋涛说的,到 2013 年以后,商业化得到了很大发展,很多的商业公司也进入这个领域。竞争是资金的竞争和人才的竞争,更激烈,规模也变得越来越大。我想问任老师,华为对开源的投入有哪些成果?投入的规模如何?未来,华为在开源上又有什么计划? 任旭东:就像我刚才回忆的,大概从 2015 、 16 年,因为电信网络的软件定义这个概念的引入,我们慢慢地去加大对开源的投入。 但说回开源这件事儿本身,我们公司一开始对标准专利的尊重和投入,一直是很大的,过去二三十年的投入,我相信大家也知道,在很长一段时间,我估计到今天为止,依然是国内最大的专利的贡献者,在全球也是这样子。 作为软件领域的事实的标准,开源我们的引入和参与,大概可以到回顾到 2010 年前后。在那个时候我们已经是 Linux 基金会的最早的一批会员,而且把 Jim Zemlin 等人介入介入到介绍到国内。 甚至在后来像蒋涛老师刚才提到的,因为有了 Open Stack ,有了一系列云原生的技术之后,然后在当年在另一次基金会,我们也参与发起了 CNCF 的基金会。这是大概在 2015 年之前,我们参与的时候都是在比较小范围的,在基金会的治理、参与方面。 但一开始我们参与的手法都超出了原来的个人主义,从公司的战略和和商业的角度来考虑的,所以我们在基金会的帮助下,也是借鉴了国外的像 IBM 等等公司,当年为什么要把 Linux 社区搞起来这些模式。 很早在公司就成立了一些开源的类似于办公室,开源的一些战略的小组,驱动商业团队去做一些开源,那更不用说到 2015 年之后网络层面的开源,以及在 2017 、 18 年开始,我们在 IT 业务上的加大投入以后,像众所周知的,我们后来也是参与发起了国内的原子基金会,这两年在国内发布的欧拉 (EulerOS) 操作系统,鸿蒙操作系统等等,这些基础软件层面的开源,当然也有数据库高斯 (GaussDB) 的开源等等。 这些方面都代表的是我们在后端有非常多的投入,应该说从 github 上去看,或者加上具体的统计,都是公开的去可以看得到的数据,持续的投入,月度活跃在这些上面的贡献者都在三四千人以上。 因为有战略驱动和商业的闭环的逻辑,所以开源在我们公司确实是一个比较慎重,比较重大的事。当然这也是我们希望后期跟开源文化更好结合的一个点,既要自上而下的,要有战略驱动,业务驱动的决策跟商业的闭环。同时也希望有自下而上的,这种程序员驱动的一些更好的社区的互动。 但不管怎么说,于公司而言现在企业参与开源过程中,最大的就是怎么能持续的让程序员在社区去参与贡献。因为我们在前期接触到的,很多开源在一开始如果商业上不是想得很清楚的话,程序员通过个人兴趣去参加开源,我觉得至少在中国还达不到一批长期的极客,靠个人兴趣能长期存在,所以怎么能长期去贡献。 如果说商业上最后的决策不支撑开源的项目的话,它最后因为工作岗位的变化,其实我在社区看到的社区确实有魅力。如果说好的,就像刚才章文嵩老师说的,如果程序不断的精益求精,打造极致,简化的架构,极高的性能,很好的体验的话,它传播生命力是非常强的,长大的可能性也是很大的。 当然我们更谨慎地看到是他少量的明星的社区背后是有更多的社区,它当然这个是淘汰或者是大浪淘沙的机制,这也很自然,但是更多的我们看到社区要长大,他是要幸运加能力加各种因素凑在一起。 所以我看到的很多社区,因为架构、商业、程序员的投入都会有一个难以为继的状态,所以这也是我们在今天企业参与社区以后,一定一开始在战略上要很好的去思考清楚,然后把自己的优质的技术程序员,企业的雇员,以这种很重的资源的方式投下去,然后让他长期的发展,而且今天的程序,特别我们在公司参与的,我们更加呼吁的,或者跟我们业务相关的都是比较大型的基础软件。 这些软件无论是从代码的规模和需要孵化的生态的规模都是巨大的,确实不是几十个人的程序员社区就能支撑的。我们需要的都是几百上千人,当然今天我们在欧拉和鸿蒙的投入都有这个量级,但其实在我看来,从战略上都还远远不够。 我们希望看到的是,在国内应该有上万人、几十万人的,最后能从高校、各种伙伴的程序员都能投进来,目前看还是在路上。所以说回来,我也没有说,完完全全仔细把一个准确的数字统计出来,但大概都在三四千人的平均月贡献,然后一些大型的项目,像鸿蒙我们有一两千人在做,欧拉更是一两千人的规模。当然,我们从全面的参与 Linux 基金会上游社区,本身就有我们统计了一下,在整个社区,每个层面都有一两百个席位,是我们程序员持续地在社区参与社区治理和共建,在社区写代码的都是几千人的量级。 我们今天慢慢地,希望长期去继续把开源文化引入到我们公司内部,是因为我们的软件程序员内部统计大概有 10 万人的规模,所以我们希望更进一步。 这些程序员我们知道,肯定基本上八九成都在用开源。但我们始终严格地认为,你没有去社区参与活动,至少要有非常基本的回馈社区的活动和参与的话,我们都没有把它算进来。 回到刘韧老师的问题,就是真正我们认为还没有达到一个全员更广泛的参与到开源共治共创的地步。但我们从业务上看,从必要性上看,我觉得都有必要朝着这个方向去努力。 刘韧:华为有 10 万程序员,按照你的标准,有贡献的大概有多少?有 1 万人或者是有 1/10 了? 任旭东:应该有 1/10 以上。 刘韧:这个空间还是很大的。 任旭东:对我们来说,我们已经取得了很大的成绩,进步的空间依然很大。 刘韧:阻力是什么?是认识不足?还是和商业化的冲突?或者有其他原因? 任旭东:其实严格意义上,我们经常内部一讨论,在开源界特别热衷的,这是不是我们的软件文化开源文化导致的。 但我觉得对这个问题浅显的理解,就到了这个答案就为止了。我们要有激情,要有热心,要有要有这个极客精神,要有工程师文化,但其实当你在开源办公室,我在集团负责这个建设时间长了以后,深入下去跟各个我们的业务条块的 leader ,我们内部称之为商业线的总裁们去碰,以后发现,如果简单的归结于开源文化或者是简单的软件文化,第一,它是个看起来无比正确,但是几乎做不了太多事的一个答案。 所以深层次的还是回到业务上的需要、本质。比如说你在云原生领域,或者是现在从事 AI 。它的本质就不是你简单的去通过专利,通过竞争就能简单完成商业上的成功。 它发展生态,它去超出企业的边界,去跟不不仅仅是自己的客户,要在早期开始一些共创,我觉得这都是必须的。就像我们做了手机以后,也是要去除了我们擅长的面向 to b 的客户以外,我们也要去搞考虑我们 to c 业务的体验一样。 在我们从事了一些对于比如说云,对于计算产业,做芯片,做这些服务器,这些生意以后,发现它不仅仅是你把产品的竞争力能做好,它就能带来商业成功。它是从业务的本质上,从第一性原理上推导,你就要在你的产品边界之外,孵化出一批应用的生态或者是伙伴。 这些伙伴你不能只在签了商业合同之后才开始进行互动,你必须在早期在社区进行共创。有那样的需求的多元性,也拓展了我们对商业的更大的理解,商业的边界也是我们也不断的去探索。也在这个基础上,我的理解,还不能说是阻力,核心就是我们随着我们的业务一块块的拓展出来,一个个产业我们进入,如果我们在里面想有所追求,我们就得按这个产业的规律办。 最后就是你按产业规律办的时候,如果他原来注重的是专利,那就去把专利做强。 现在看我们进入的除了通信领域之外的很多行业,它在开源上对于软件本身,软件对开源的一些本质上的需要就导致我们也是越来越重视肯定,所以这是一个必然的过程。 因为我们的其他业务还在成长中,我觉得这是一个非常自然的,很快成长起来的,所以我们现在内部的内源文化也很注重。我们内源文化当然本身就是共享,因为团队之间的共享,在一个有 10 万人程序员的里面本身就是一件很有意义的事,对于企业来说价值也很大,所以我们现在在内部有内源社区。 开源文化跟内源社区的对接以后,下一步很自然的内源社区里面就有很多好的技术,好的中间件的东西就会需要跟外部进行更好的协作,也会自然而然的走到外面去。 刘韧:好的,崔老师。同样的问题,在小米投入的规模有多大?下一步会怎么走? 崔秋实:这个问题我还不知道怎么回答,因为拥抱开源在小米也很深了,但是现在没有一个具体的量化的投入指标,我个人觉得在开源上的贡献还是靠代码来说话。 我要讲的是,今天,开源文化在小米已经根深蒂固,比如刘韧老师刚刚提到的,大家都很熟悉的 MIUI ,我们也不停地往安卓社区回馈一些贡献。 再到云计算、大数据,和今天特别火的 AI ,再包括小米云原生,也是无处不在,再到机器人,包括智能制造领域。雷总对机器人领域方面的技术非常重视,也一直在讲,从我们机器狗铁蛋发布第一天起,就说要用开源这个模式,一起打造机器人领域的技术。 基于这些,我觉得开源在小米这家比较有代表性的企业里面真的无处不在,小米也有专门的开源委员会来能够协调全集团工程师的开源力量,统一步调,一起来打。 所以我个人觉得,如同小米在前些年在 Hbase 上的投入一样的,我们成为一个最大的贡献者团队。 再到后来像今天的 NuttX ,小米也是贡献了 1/3 ,当然还有其他的一些科研项目,小米还是本着一种比较纯粹极致的开源理念,一起共建参与,同时共建回馈社区,一起来在享受开源的红利的同时,积极的回馈社区,积极和开发社区一起共建,一起推动各个领域的技术进步。 所以,我个人的一些理念,今天上午我发言里面也讲到了,我说,开源是目前人类技术进步的最佳平台与模式。如果大家真正能够抱着开放、共享、平等,然后协同创新,这种开源的本质来开源的话,我觉得整个社区会起来,我们也会解决很多所谓的卡脖子问题。 小米在未来开源的布局上,我觉得还是没有一个上限的,我们会多参与,在用开源技术的同时,帮助开源技术成长。 刘韧:崔老师,我想知道,小米的 MIUI 项目,对安卓的贡献有多少?其他的安卓手机可以用到 MIUI 的程序吗?用量有多少? 崔秋实:我还没有具体的数字。首先, MIUI 是基于安卓的,安卓是基于 Apache License 开源的,小米的 MIUI 本身是不开源的, MIUI 本身一些核心技术它没有开源,这也是符合 Apache 协议的规定的。 但是小米在一些核心的安卓领域,我们会回馈到谷歌团队或者安卓社区。这里面这些量我还不太清楚,但是小米的安卓开发团队非常大,如果有值得共享给社区的,我们肯定会共享。 刘韧:章文嵩老师好,我上次采访你时,你还在一个基金,当时是从企业去了基金,现在自己开始做 LVS ,我觉得都是给开源做贡献。我想知道,你在阿里、滴滴、基金,还有 LVS , 各种角色都参与了,这些角色之间有什么不一样的吗? 章文嵩:我自己一直非常认同开源。 无论在哪,因为我自己从开源的受益特别多,所以我觉得开源对这个世界是很美好的事情。 我还是尽我自己的能力,包括我的时间,尽量为开源做点事情。 因为开源还是整个互联网行业的基石,几乎所有的互联网公司都是基于开源软件做底层的基础软件的,所以开源给整个行业带来变化特别大。 我在阿里的时候,做基础软件这一块,我们团队的同学们特别喜欢开源,所以在阿里,实际上开源了很多项目。我从 09 年待到 16 年,走之前大概已经开源了 200 个左右的项目。当然,现在项目更多了,可能有上千个,阿里的同学们在开源投入很大,也做得非常好。 因为阿里底层的软件,基本上都是开源加上自主开发,实际上是为阿里的整体效率、成本提高是很大的。而且 2011 年去 IOE 之后,阿里定下来的规矩,在生产系统业务系统上面,任何黑盒子的软件,是不被接受的。 因为出了问题要第一时间解决,而且通过开源,展示自己的能力、开放性,可以吸引更多的人才进来,更多的人才对阿里未来的云计算发展帮助挺大。 我觉得很多企业都受益于开源,也拥抱开源,回馈开源。我相信企业如果做开源,对自己的技术能力成长的帮助,是非常大的。当然,我也看到国内越来越多的企业对开源做贡献,国内开源的力量,我觉得有可能已经站在世界第二位,因为我们有大量的程序员,实际上是在人上面,有巨大的资源,对开源也有了越来越多的贡献。 我觉得,国内开源还有提升空间的地方,就是多家公司怎么围绕一个开源项目,可以进行协作。刚刚崔总已经提到 MIUI ,华为这边有 EMUI , OPPO 那边有 ColorOS ,背后的种种问题,需要比较纯粹的开源组织,能把三家公司或者更多公司凝聚起来的还没有。所以各家都以自己商业化的角度思考,都选择了闭源。在开源的产品基础上,做闭源的产品,实际上力量很分散。 但这不是一个例子,我们服务器 CentOS 停更之后,服务器的操作系统发新版,能不能形成合力?现在有很多家也没形成合力。国内的 AI 芯片创业公司,大概有四五十家,这在全世界绝无仅有。他们的软件工程师比硬件工程师还要多,有可能是 2 到 3 倍,大量的人力在做扩大兼容,怎么适配 PyTorch 、 TesorFlow 。大家做的软件工作,其实都是一样的。 目前没看到一个开源项目,把 AI 的底层的中间层给做掉,每家公司各做各的,对我们国家来说,人力浪费是巨大的。你想,四五十家公司,各做各的,做的却是类似的事情。所以我们在开源的治理上面,怎么样对开源的认识、理念,尤其是商业公司怎么样更加开放,可能还有很长的路要走。 刘韧:时间到了,真是意犹未尽,今后找机会再采访各位老师,谢谢大家。 刘韧商业写作通识