- 美国持续对华的技术断供如何破局?
- 国产企业是否要打造独立的开源体系?
- 国内技术生态和社区如何实现初长成?
在刚刚过去的2020易观A10数据智能峰会及其开发者日上,大会立足于对复杂数据结构下技术环境的深入观察,现场集合众多数据技术大咖、开发者和爱好者,共同讨论面向用户的多维数据分析之道。
在主题为【正在觉醒的开源时代】的圆桌论坛上,Kyligence 技术合伙人兼产品负责人李栋、前 Greenplum 北京研发中心总经理/现北京四维纵横数据技术有限公司创始人姚延栋、易观 CTO 郭炜三位大咖进行了热烈讨论。
开源的契机与意义
技术的进步和新的解决方案,很多都与开源工具有很大关系,那企业决定做开源的契机是什么?企业投入开源的意义何在?
姚延栋首先发表了他的看法,他认为,企业要不要开源或者什么时候开源?可以分为三类,第一类是推的,即企业主动开源,在最初就下定了开源的决心。第二类是拉的,即企业被迫开源,因为错过了开源的最佳时期,所以这类项目的结果大都不是很好。第三类是半推半就的,例如Greenplum,为了适应公司数字化转型的战略,在2015年决定开源。当然,每种开源的方式没有绝对的优点。
李栋则从不同类型企业开源的意义角度出发分享了他的观点。互联网企业的开源,不是以卖软件盈利为目的,更多的是为了技术创新,提高自身的技术影响力。对于互联网企业而言,人才是企业最重要的生产力,他们可以解决最具挑战性的问题。同时,人才也需要更高的技术影响力来吸引他们加入,而开源就是企业向外界展示技术实力、打响技术品牌在社区中声量的关键一步。
对于商业软件企业来说,通过开源可以打开更多的市场,更重要的一点是,开源可以保持以技术驱动业务发展的活力。在开源盛行前,商业软件企业是以客户需求为驱动的,像解算术题一样通过寻找合适的技术来解决客户的实际需求;或者从行业分析角度出发,看当前行业需要哪些技术,这都是靠业务驱动技术发展,在这个体系下技术是满足于业务的。现在之所以开源,是因为企业发现技术可以领先于业务,可以降维打击式的满足当前业务上面临的挑战。
李栋说:“我认为做开源是保持技术初心,让技术驱动业务发展的很好的方式。”
郭炜认为,最初大多数的开源发迹者是理想派的。软件代码本身没有商业价值,软件代码本身附带的服务才具备商业价值。最初一批的开源者大都坚持着这样的精神,将可以盈利的软件开源出来。
现在这个时代与过去不同,使用场景才是企业最大的核心价值。技术人员通过开源的方式,直接接触到更多的用户使用场景,将这些使用场景沉淀下来,在基于这些使用场景衍生出的商业版本、商业服务来实现盈收,这才是现今开源的做法。特别是伴随着云原生时代的到来,代码本身没有意义,代码附带的服务、背后的使用场景以及维护的用户才是有意义的。
郭炜表示:“现在这个时代已经变成新的时代,已经不是过去的软件时代,而是开源成为主流的时代。”无论是半推半就的开源,还是理想主义者的主动开源,或是为了商业成功的被动开源,都是推动企业做开源的契机,都应该去支持。
开源是否有国界
受2020年全球经济政治的影响,开源界也有了一些新的变化。早期在开源社区,普遍的观点认为开源是无国界、是共享的。但最近出现了开源断供说、开源有国界等言论。对此,三位老师也都发表了自己的看法。
姚延栋表示,开源无国界,但开源的人是有国界的,这是本质问题。开源是否断供,要落实到具体项目上看,中国人已经能够完全驾驭的项目,就不存在断供说;但当项目的主要负责人来自美国时,如果美国选择断供,那我们只能拿到数据库里的snapshot,失去了继续创新的能力。
李栋对姚老师的观点表示认同,他认为,一个项目是否会受政治经济的影响,是取决于所有社区的用户在项目里是否有足够的创新力,是否愿意继续使用、支撑和维护被被封锁的项目。从另外一个角度看,开源断供目前还没有发生,不过经过多次的预演和讨论,已经为给国内的开源界带来了警示作用,并为之后社区的长期健康发展起到了很好的推动作用。
几年前,国内的开源项目是各自为战的状态。在现今这样的大环境下,很多社区以及大型企业,一方面在成立自己的开源组织和基金会,另一方面在开源协议上也有突破,包括华为的木兰协议等等层出不穷,国内开源的成熟度在今年开源断供的情况下得到了进一步发展。开源者、开源项目的抱团取暖,会让国家整个技术实力飞速发展。
李栋表示,“我们之所以担心政治经济对开源的影响,是因为我们更加关注开源协议背后的契约精神。今后,国内技术圈对开源协议会更尊重,同时也会着重思考如何用开源协议保护自己。”
Kyligence 技术合伙人兼产品负责人 李栋
郭炜则发表了不一样的看法,他认为断供不会在国内发生。
首先,开源最重要的是社区里面的人,如果没有贡献者、使用者,那么开源是没有很大生命力的。例如Apache社区乃至其董事会成员,都是开源理想化的人,无论是美国人、澳大利亚人,还是欧洲某些国家的人,他们的共同理想是为开源做贡献。即便中美关系出现严重问题,关闭的只是网站,开源精神不会出现任何变化,这些人还在,也不会阻止这些人继续为开源做贡献。
其次,中国现在很难独立发展出很好的开源社区。因为核心项目里的高水平的架构师大部分还是在美国、欧洲等先进的地区,即便中国人自己闭门造车,做出自认为很好的开源社区,也一定会有被国外更先进技术轰开大门的时候。因此我们需要以更加开放的姿态,接纳美国、澳大利亚等各个国家的海外开发者,毕竟人才是最重要的。
郭炜的观点是,“第一,我们不用担心国际关系,它不会影响开源的精神;第二,我们一定不要闭关锁国,目前国内的高手还在慢慢培育阶段,因此需要以更加开放的心态拥抱海外的大牛。”
所以无论是否开源断供,我们还是要不断地去做开源,参与到国外的项目中,用更加开放的姿态,坚守开源的精神。
开源项目商业化
开源也有自己的法则,随着这些license的出现,像Kylin、Greenplum等开源软件也区分出了开源版与商业版,为国内的开源软件提供了很好的商业化参考。那三位老师对开源项目商业化的看法如何?让我们逐一来看。
姚延栋以Greenplum的真实案例出发,表达了自己的看法。他提到,美国一家知名顶部汽车厂商使用Greenplum做项目,在达到自己的预期效果后,直接支付了相应的款项。这家汽车厂商完全具备相应的经济与技术实力将Greenplum开源项目拿到商业板上使用,但它没有这么做。因为从经济学原理角度来讲,这不是最优化的配置。这种情况在美国很常见,但是在中国却很难遇到,即便有,也会要求在价格上做优惠。
商业化更重要的是大环境和意识。美国经过几百年的资本主义发展和企业发展,商业化环境意识已经非常发达,但在中国还有一定的发展空间。因此我国现阶段的开源项目商业化,除了在社区中做宣传之外,还需要为企业营收负责。因此商业版本大多都是领先于开源版本的,这就决定了企业需要做一些商业价值高的能力闭源化,从而能够提升产品的商业价值。
北京四维纵横数据技术有限公司创始人 姚延栋
李栋也从Kyligence的产品出发来表述自己的观点,在Kyligence目前的产品中,Kylin是核心,但给客户提供产品或服务时,不只提供Kylin,会根据企业客户的需求,提供闭源的组件或其他的服务。Kylin的一些企业用户,他们的工程师也会成为Kylin社区的核心骨干,但如果出现技术人员的变动情况,那么企业用户在Kylin上的投入和使用可能会出现断档,新技术人员的新想法或者在投入上的变化,会让企业在应用Kylin上受到很大影响,内部难免会出现一些要修改技术架构的情况。这些情况对于追求技术创新、技术革新很快的互联网企业是能够承受的,但对于金融、制造、电信、零售这些追求稳定、一致性的企业来讲,是比较困难的。例如,银行的业务人员已经在用的系统,因为人员变动而导致的系统变化,就是灾难性的事情。
对于大型企业来讲,他们会更加关注企业技术的一致性以及企业的服务。Kyligence除了核心的开源技术,对企业的服务,对企业特性的了解,是其产品致胜的关键。Kyligence能够确保企业客户不需要投入太多的人力,就能把Kyligence的产品用好;也能保证技术人员的更迭,不会对产品的技术和架构造成很大的变化,这是开源项目商业化带来的更大的价值。
另一个角度是,在云原生的趋势下,如何把开源技术和云技术更好的集成、结合,除了在技术方面有所突破,也需要商业力量推动云原生的落地。
郭炜的观点是,开源商业化在目前在国内处于非常尴尬的局面,例如Greenplum与Kyligence的主要收入来自于海外,这是由整个社会发展进程决定的。例如美国,首先人员成本高,企业会特别尊重每个人的贡献与付出;其次,企业对开源商业化看得很清楚,使用开源项目而不付费,直接会导致开源项目的迭代困难,甚至是开源项目的关闭,进而导致企业也会付出巨大的转型、迁移代价。而国内的开源时代正在觉醒,企业的每个部门还没有将开源商业化想得很清楚。
开源的商业模式无外乎以下几种,运维的服务、商业的版本,或者将整个核心开源作为商业组件去收费。目前的商业模式是通畅的,随着国内企业管理人员对开源生态、商业逻辑的慢慢理解,相信国内的开源收费模式会越来越清晰。
中国的开源界还是一个创业阶段,需要更多的理想主义者,坚持走下去,让开源生态变得更好。
开源社区何如蓬勃发展
优秀的工程师、技术大咖大都聚集在开源社区。开源社区在组建和运营中会遇到很多挑战,并不是将代码贡献出来,就可以解决。那么如何才能让开源社区蓬勃发展呢?
姚延栋表示,如何让一个开源社区蓬勃发展?首先要清楚这个社区的本质是什么,然后才能去做设计或战略。例如Greenplum社区就是一个优秀的开源社区,Greenplum社区是没有公司控制的,社区里就是一群理想主义者,只想把开源做好,为社区贡献了非常多的力量。
因为一家公司的初衷是会影响到开发人员的。毕竟开源项目的真正核心是开发者,想吸引用户,可以直接把产品免费给用户使用就好了,完全不需要开源。但对于理想主义者来说,开源的目的是在使用过程中发现问题、解决问题,吸引更多的人加入到技术建设中,这才是比较健康的开源项目。近两年,反而很多国内开源项目的核心目的是做Go-to-Marketing,通过开源做营销,而并不是把产品贡献出去。
李栋在开源社区运营上的建议是“推陈出新”,尤其是在培养开发者方面,要不断推出新鲜的面孔、骨干人才。最早的贡献者、创办者应该通过商业公司接触业务或者行业需要方,来规划技术方向、走势以及技术架构;新人在社区中应该扮演核心的技术开发力量,发挥技术推动和演进的作用。社区运营方应该利用好社区交流的机会,在培养新人上花更多的心思。
郭炜也非常赞同其他两位老师的看法,他认为:
首先,开源社区不是把代码放进去可以了,开源最重要的是贡献者,社区里需要有贡献者才能保证社区的生命力,贡献者贡献的也许是代码,也许是社区的运营,这样社区才能做得更好。
其次,开源社区的核心骨干,要掌握核心产品的理念和未来的发展趋势。例如Click House的核心理念是“Click House就是快”,社区需要围绕着核心理念去做,产品才能不断地更新迭代。开源本身不是价值,要清楚产品的价值,才能让社区蓬勃发展。
最后,开源要坚持。很多时候开源并不是一帆风顺的,需要不断尝试,才会有新的项目产生,用户也是一个、两个慢慢积累而来的。
易观CTO 郭炜
开源社区的蓬勃发展,首先要清楚自己技术、产品的价值主张;其次,除了产品价值主张,社区里的人也愈发重要,因此研发工程师会直接面临到各种实际的问题,不仅要写文档、写代码,还要做布道师,吸引更多的年轻人加入社区。最后,不是只有技术大咖才能参与开源社区的建设中来,每个人做一点小事情,社区就会越来越好。
尾 声
2020年的疫情,不但加速了数字化的浪潮,也掀起了关于开源信创的热烈讨论。开源不仅仅是代码,更需要有产品的核心理念和调性;开源也不等于免费,需要一个精心设计的商业模式;当然开源更不是让人望其项背,需要科学、持续的社区治理。开源不是天才的甜点,而是勤奋者的盛宴。