查看原文
其他

开源自立,此时不为,更待何时?

oschina 开源中国 2019-10-30

“国内行业的春天来了!”,看到国家财政部最新发布的集成电路设计和软件产业企业所得税政策,不少开发者都发出这样的感叹。

公告指出,依法成立且符合条件的集成电路设计企业和软件企业,在 2018 年 12 月 31 日前自获利年度起计算优惠期,第一年至第二年免征企业所得税,第三年至第五年按照 25% 的法定税率减半征收企业所得税,并享受至期满为止。

这一纸公告下来的时间特别及时和振奋人心,至于为什么,事情还得从美国政府将华为列入出口“管理名单”中说起。

2019 年 5 月 15 日,国工业与安全局(BIS)将华为公司列入“实体清单”。根据资料,所谓“实体清单”是美国为维护其国家安全利益,作为出口管制的一个重要手段。

简单地说,“实体清单”就是一份“黑名单”,一旦进入此清单,实际上是剥夺了相关企业在美国的贸易机会。同时由于欧盟、日本等国往往与美国的出口管制步调保持一致,所以企业在国际上的信誉和商务行动也会受到较大的冲击。

开发者在恐慌什么

开发者恐慌不是空穴来风的,也不是舆论造成的。

本来是大国博弈,美国把华为当成限制中国的政治筹码也只是在商业、高科技等方面进行打击,民众或多或少会听闻相关信息,并评判一番。而因为与日常生活离得“有点远”,所以对于美国将华为列入“实体清单”这件事,一般只有因为公司企业或股票收益受损的民众才会亲身感受到强烈的恐慌。

然而,当 20 日谷歌在美国政府的命令下声明限制华为使用 Android 相关服务时,这一消息开始将恐慌烧到了普通民众与开发者身上。

谷歌限制华为使用 Android 相关服务,意味着华为用户在将来的华为产品中无法使用通过 Google Play Store 更新应用,不可以下载新应用。此外,Gmail、Google 地图、搜索与 Google 智能助理等一些最重要的 Google 服务也将无法运行。

一般民众担心的是功能使用上的问题,而对于开发者来说,这其中还必须先搞清楚“Android 服务不被允许使用”与“不能使用开源的 AOSP(Android Open-Source Project)”之间的差别。

差别确实是有的,可以这样简单地理解 Android 与 AOSP:AOSP 是一个开源的操作系统项目,而这里讲的“Androd”,也就是我们日常所说的 Android 操作系统,是指谷歌在 AOSP 的基础上完善了相关功能与服务的移动操作系统,比如带上谷歌自家的 Gmail、地图与应用中心等。

有些人不了解这二者之间的区别,所以人群中开始小范围蔓延起“开源受限”的担忧,而担忧最终变成恐慌是因为接下来被挖掘出来的这两个文档:

全球最大的开源软件基金会 Apache 软件基金会(Apache Software Foundation,ASF)官网上有这样的内容

U.S. export laws and regulations apply to our distributions and remain in force as products and technology are re-exported to different parties and places around the world. 

美国的出口法律和法规适用于我们的发行版,并且随着产品和技术再出口到不同的地方依旧保持有效。

意思是除非经美国政府正式授权,否则 ASF 产品或技术不得直接或间接出口或再出口到受美国禁运或贸易制裁的任何地方。

ASF 的管理办法已明确说明它遵循美国出口法律,所以它旗下的所有项目亦受到美国出口法律的管制。ASF 旗下开源项目的名单中有许多耳熟能详的项目,比如 Kafka、Solr、Hadoop 与 Spark 等。

另一边,全球最大的开源代码托管平台 GitHub 官网上也有类似的表述

GitHub.com, GitHub Enterprise Server, and the information you upload to either product may be subject to US export control laws, including U.S. Export Administration Regulations (the EAR).

GitHub.com、GitHub Enterprise Server 以及您上传到任一产品的信息可能受美国出口管制法律的约束,包括美国出口管理条例(EAR)。

GitHub 作为一个微软旗下的商业产品,被美国进行出口管制其实很容易理解,并且 GitHub Enterprise Server 实际上已经对一些国家限制使用,包括古巴、伊朗、朝鲜、苏丹与叙利亚。

突然之间,开发者恐慌了,大家突然发现,所谓的开源无国界怎么感觉有点虚,说到底还是会扯上政治。那以后 GitHub 还能不能愉快地使用了?开源软件基金会的那些软件就都不能合法使用了吗?

随后 Apache 软件基金会与 OpenStack 基金会相继出来澄清,表示“开源软件、开源代码协作、参与公开电话会议或私人会议以及提供赞助资金都是不受 EAR 约束的活动,因此不应对社区产生影响”。

所以开源界还没有实际地被这把贸易的火烧到,目前华为上开源的 Android 没有被限制,加上 Apache 软件基金会与 OpenStack 基金会的声明,再有其它一些专家引经据典表示开源代码是作为言论自由是受到美国宪法第一修正案保护的。这些都是在向人们传达“开源是自由的,不可能被限制”。

然而事情就这么简单吗?

这背后更深一层的恐慌是什么?

我们可以先在中美两国之间不那么“鱼死网破”的语境下看这件事情,也就是说大家还是处在可以都坚守各自在普世价值方面所创造的成就的情况下来谈,更直接点说就是:美国不会因为政治甚至战争需要而直接以超越宪法的方式去直接限制开源的自由。

这种情况下我们再来看看,开源协议说改就改的事情我们没有见过吗?仅以这两年比较引人关注的案例为证:

  • 十分流行的图数据库 Neo4j 宣布,从 Neo4j 3.5 版本开始,企业版仅在商业许可下提供,不再提供源代码。

  • Confluent 宣布修改其平台部分组件的开源协议,从 Apache 2.0 切换到 Confluent Community License,新的协议不允许将项目源码作为 SaaS 产品提供给用户。其背后是知名的流处理平台 Kafka 的团队,并且此次协议修改影响到 KSQL。

  • MongoDB 宣布将开源协议从 GNU AGPLv3 切换到 Server Side Public License (SSPL),明确要求托管 MongoDB 实例的云计算公司要么从 MongoDB 获取商业许可,要么向社区开源其服务代码。

  • Redis 的一些模块在半年内相继从 AGPL 变更为 Commons Clause 和 Apache 2.0 组合的开源协议(Apache2 modified with Commons Clause),又变为 Redis 源码可用协议(Redis Source Available License,RSAL),RSAL 要求源码不能集成到数据库产品、缓存引擎、流处理引擎、搜索引擎、索引引擎或者机器学习/深度学习/AI 服务引擎。

简单地讲,其实这背后都是利益问题,以这些开源项目社区的话来讲,他们都不想让一些云厂商“坐收渔翁之利”,然而实际上,这些被指责的云厂商真的都违反了开源协议内容吗?这可真不好说。在这些社区宣布项目修改开源协议之后,遭到了各种反对声音。

就连 Apache 软件基金会的联合创始人 Jim Jagielski 都表示:“谁要是认为开源界 20 多年来没有遇到过像目前这样必须面对的情况,他要么是无知,要么是故意说假话。”

言下这意是修改协议的理由不合理,他还表示,Apache Web 服务器的开发者就一直很乐于被商业公司“搭便车”,因为这可以进一步确保为所有 Web 用户提供一个开放公平的竞争环境。

试想一下,开源协议因为这样的利益问题就可以随意更改,甚至直接闭源,并且在备受质疑与反击的情况下仍然可以我行我素,那更不用说在政治命令面前会如何演绎了。

到这里我们甚至可以说,“开源”理论与标准执行其实还处在积极的发展中,似乎远没有达到成熟。

要不然我们也不会看到这些修改开源协议的风波,要不然在这些风波中,我们也不会看到开源促进会(Open Source Initiative,OSI)重申需要对开源进行定义:“如果没有对开源进行标准定义,软件开发是不可能走下去的。如果任何人都可以提出自己对开源的定义,那么这个世界就会缺乏信任,而如果没有了信任,就不会有社区,不会有合作,也不会有创新。”

要不然云原生计算基金会(Cloud Native Computing Foundation,CNCF)首席技术官 Chris Aniszczyk 也不会毫不客气地指出:“最初的开源概念必须得到修正,因为它不再适合当今这个时代,云计算公司可以利用其垄断力量采用成功的开源项目而不对其做出任何贡献。”

开源的影响力

关于开发者的恐慌,还需要从另一个角度来理解,也就是“开源的影响力有多大?”,不介绍这一点不足以更好地理解为什么一旦开源受限,所产生的影响有多大。

Linux 基金会发布的数据显示目前有超过 2300 万开源开发人员,超过 6400 万个 GitHub 代码库,开源代码量超过 41 亿行,每日新项目上线量达到 1100。

这些数据背后是构成当下 IT 基础设施、软件包和服务的开源实质。AWS 云架构策略副总裁,也是一手将 Netflix 带向了“云原生”架构,使其开始转向云计算,并在日后成为该领域巨头的 Adrian Cockcroft 曾指出“当下最火热的技术趋势,包括云计算、大数据、机器学习与人工智能,它们底层的框架全都是开源的,现在的情况是大家都基于这些开源的框架在做甚至是商品化的产品的开发。”

虽然开源也带来了一些问题,诸如代码安全、质量与版权等,并且也一直有反对开源的声音存在,但是在这场声势浩大的运动中,大部分公司企业、组织与个人还是积极投身于开源这样一个大环境中,因为大势所趋。

公司企业层面,IBM、Adobe、Red Hat、Canonical、Docker、HP、Oracle 与 Google 等对开源的贡献都不是一朝一夕、一点两点的。我们也看到微软这样的企业,从最初将开源视为敌对势力,在近几年却逐渐转身拥抱开源,并且现在已经变成开源贡献排到世界第一的公司。

根据 Red Hat 近期发布的企业开源调查报告,在过去的 12 个月中,68% 的企业增加了对开源的使用,超过 59% 的企业预计在未来 12 个月内将继续使用开源。

调查结果还显示,使用开源技术达成基础架构现代化和应用现代化的企业占比分别为 53% 和 42%,此外,42% 的受访者表示他们正在将开源用于数字化转型,具体主要应用于大数据分析和数据库管理。

同时,开源的独特之处在于,它使个人和组织能够以最小的障碍进行协作,实现共同目标,这为创新提供了良好的条件,受访者中有 29% 将“获得创新”作为使用开源的前三大理由之一。

而目前支持开源的相关组织越来越多,规模也越变越大,并且社区生态也越来越好,包括但不限于以下这些:

  • 开放网络用户组,Open Network User Group (ONUG)

  • 开放容器倡议,Open Container Initiative (OCI) 

  • Linux 基金会,Linux Foundation

  • 云原生计算基金会,Cloud Native Computing Foundation(CNCF)

  • 开源促进会,Open Source Initiative (OSI)

  • Apache 软件基金会,Apache Software Foundation(ASF)

另一方面,今天不谈商业成功似乎无法更好地体现一个东西的影响力与伟大,那下边来看一看去年开源在商业层面取得的历史性突破

  • IBM 以 340 亿美元收购了“开源界一哥” Red Hat,这是 IBM 100 多年光辉历史上最大的一笔交易,同时它也是美国科技界历史上的第三大交易,并且它还是目前开源界最大的一笔交易。

  • 微软以 75 亿美元收购了全球最大的源码托管平台 GitHub。

  • Salesforce 以 65 亿美元收购了已上市的开源软件企业 Mulesoft(基于云的应用集成服务商)。

  • Adobe 以 16.8 亿美元收购了开源软件企业 Magento(B2B/B2C 电商管理平台)。

  • VMware 收购了开源容器技术企业 Heptio,价格估计过亿美元。

全球总共也就只有 6 家市值在千亿美元级的软件企业,微软、Oracle、SAP、Adobe、IBM 与 Salesforce,算上 VMware 近 700 亿美元市值的准千亿级,一共是 7 家(相信 VMware 进入千亿俱乐部也只是时间问题),而开源吸引了其中的 5 家豪掷千金。

开源的能量就有这么大。然而相比之下,在开源上,我们国家落后世界太多了,前边提到的作为各种技术底层基础设施的开源项目,例如 Linux、Kubernetes、Redis 与 Spark 等都是国外主导的;同时制定开源领域协议等规范的全球性组织也都是国外的;就连最流行的源代码托管平台也是国外的。

国内也是最近几年才集中地有越来越多的公司与个人参与到开源中。根据一份针对国内知名互联网公司在开源领域成绩的调查,这些最优秀的中国互联网公司,在底层关键项目上和国外还是存在较大差距。

调查结果指出:国内开源只是看着热闹,在实际作用方面,和国外差距极大。虽然像 Ant Design 与 Element 这样的项目拥有极高的关注度,但它们都只是 React 等前端框架的组件库,是其生态系统的一部分,而自己作为生态核心的项目在国内极少。

另一方面,调查还显示国内公司在开源治理上有所欠缺,比如他们在代码托管平台上留有大量空的 fork 项目,而这些项目本应该第一时间清理。

不知道你有没有回想起来实际上在多年前因为某原因,国内开发者有段时间无法访问 GitHub。

当时创新工场 CEO 李开复等行业大佬奔走疾呼,公开对此表示不理解,李的微博在三个小时内即被转发 3.2 万多次。他认为:GitHub 是程序员学习和与世界接轨的首选工具。封锁 GitHub 毫无道理,只会导致国内程序员和国际脱轨,失去竞争力和前瞻性。

一个源代码托管平台被封锁就能迅速挑动那么多人的神经,一方面直接体现了开源的能量之大,另一方面也正说明了我们国家在开源事业上的落后。

所以,当在开源上如此落后的我们遭遇到开源受限的情况,那将会是一场灾难。

首先,大量项目与技术基于国外的这些基础开源项目之上,如果它们被限制使用,我们必须在极限的情况下自研出一套替代的解决方案。

就算克服重重困难搞定了替代方案,却未必能全面兼容已有的技术或设备,若要重新建立生态,打造适合发展的环境,这必将会耗费相当漫长的时间和资金。我们说技术上做什么都还好说,最难的地方在于生态建设。

更加具体到开发者身上,许多开发者都是通过阅读优秀开源项目、在开源项目社区中交流学习提高编程能力的,如果众多的优秀源码不再顺畅便捷地流通,开源社区不再开放,那就像李开复说的,开发者将与国际脱轨,失去竞争力和前瞻性,也更不用说创新。

期待国内开源事业的春天

核心能力掌握在别人手里,如果别人不再开放,那一切都将灰飞烟灭。是的,这样的事情可能发生在任何一个国家、任何一家公司与任何领域。

软件工程驱动的云计算、大数据和人工智能等 IT 产业让开源相关内容成为未来重要的数字资产,尤其是在现在中美贸易战的背景下,软件源代码、开源标准与生态成了核心能力中十分重要的竞争力。

我们应该做些什么呢?恐慌是不必要的,但是心里的小算盘还是要先打,也就是说要预防有这样的情况最终会真的出现。用很简单的一句话来说就是:开源自立

可能很多人会觉得这样的想法真的是小家子气,甚至是狭隘的民族主义,是看到谁手上有个锤子就觉得会来钉自己这颗钉子。

但是回想一下,你可曾想到过今天伟大如美利坚合众国会如此对华为下手?而这个时候前来报到的备胎华为海思芯片之所以能够一夜之间刷爆中国人的每个圈子,又是为什么?

只不过是因为华为在多年前就“小家子气”了。2012 年,任正非在内部讲话中就说过:“如果他们突然断了我们的粮食,Android 系统不给我用了,我们是不是就傻了?”如今来看,一语成谶。

图片来源:央视新闻

华为在多年前就假设了极限生存的情况,在芯片方面,他们预计有一天,所有美国的先进芯片和技术将不可获得,而华为仍将持续为客户服务。

为了这个以为永远不会发生的假设,海思走上了科技史上最为悲壮的长征,为公司的生存打造“备胎”。而华为的产品领域是如此广阔,所用技术与器件是如此多元,面对数以千计的科技难题,华为在数千个日夜中星夜兼程,艰苦前行,“我们无数次失败过,困惑过,但是从来没有放弃过。”

引用一句网上流传的话来说:所有你以为的岁月静好,背后都有人在负重前行。

作为一个见识过现代文明与思想的普通老百姓,我们也想在各方面积极融入全球化的浪潮中,甚至站在人类整体的角度去看待各种问题,期望天下合而不同,然而,纵观中国改革开放以来在国际上与各方势力的交手过程中所经历的,有时候现实不允许。

这不叫小家子气,这也不是狭隘的民族主义,因为我们不得不时刻保持警惕,黑暗森林有黑暗的颜色。

看看最近还有什么消息在刺激着国人:

  • 微软商城下架华为电脑

  • ARM 切断华为供应

  • 微软 Azure Stack 在美暂停与华为合作,从官网撤下了华为产品

  • 美国将旷视科技、大华科技、海康威视、美亚柏科和科大讯飞共五家中国高科技公司纳入实体清单,断供美国公司提供的组件与软件

  • 美国多所院校终止与华为合作,包括:麻省理工、英国牛津大学、美国加州大学柏克莱分校、圣地亚哥分校、威斯康辛大学

  • 英国电信商 EE 宣布不支持华为 5G 手机

  • 松下中断与华为的商务往来

  • 英国电信商 vodafone 暂停华为 5G 手机预购

  • 日本三大电信商宣布暂停发售华为 P30 手机

  • 制定无线技术标准的 Wi-Fi 联盟和制定 SD、microSD 存储卡标准的 SD 协会均将华为移出了会员名单,禁止华为参与相关标准制定活动

  • 国内 6 所高校出现在 BIS 实体清单中,分别是:北京航空航天大学、电子科技大学、国防科技大学、四川大学、西北工业大学与湖南大学国家超级计算长沙中心

  • ……

多如牛毛的“封杀”消息不绝于耳,这些消息有些已经得到官方证实,有些已经被辟谣,还有一些阴晴未定,但是它们都时刻在挑动着国人的神经,让我们不得安生。

头上悬着一把把刀的日子不好过,那为什么还要坐以待毙呢?

任正非说“不懂战略退却的人,就不会战略进攻”。华为的“小家子气”在这种民族与国家可能受制于人的时候就成了王者风范;世间备胎千千万,华为的 Plan B 正是其中的 MVP(Most Valuable Plan)。

所以回过头来看,开源风险是存在的,恐慌是不必要的,但是开源自立是需要的。引用大多数开发者的分析,这种风险主要来源于三种对象,分别是“开源协议本身”、“开源背后的公司与组织”与“凌驾于一切的国家政策”。前边提到的“开发者所恐慌的”正是这三者的一一对应,简单总结一下:

  • 开源协议说改就改。

  • 开源项目背后的公司、源代码托管平台与开源基金会等受制于美国政府意志。

  • 最终头上悬着的那把切断一切的政策之刃会不会无情斩下来?

恐慌是没有必要的,但风险不得不防。

文章开头提到,国家针对集成电路设计与软件产业实施了减税政策,这被许多人理解为该领域春天已经到来,这一政策在当前中美关系形势极端不明朗,并且华为等企业、高校与个人被直接列入“实体清单”的情况下,就像一阵及时雨,带着将挑战转化为机遇去撸起袖子加油干的信念,十分振奋开发者的心。

经此一役,许多人也因此进一步了解到开源项目、开源社区与开源基金会等开源信息。趁着这个机会,大家都能关注到各方面的风险,认识到自己本土开源能力与生态的不足,静下心来好好发展开源事业,这不失为一个良机。

我们一直在说国内开源做如何不好,需要变革,但是什么时候去实际变革它呢,此时不为,更待何时?真正的冬天还没有来,希望国内开源事业的春天就在明天。

收拾精神,自作主宰

世界上只有一种真正的英雄主义,那就是认清真相之后,依然热爱生活。对于华为近期的遭遇,人民日报发表评论称:华为有底气和骨气,最重要的是把自己的事做好。中国人民早就深刻体认到,发展的道路,从来都不是一帆风顺的。无论外部环境如何变化,对中国而言,关键是“收拾精神,自作主宰”,激扬起那么一股子精气神,抓住机遇、迎接挑战、战胜一切艰难险阻。

听闻华为自研跨平台操作系统“鸿蒙”将于今秋发布,“鸿蒙”是中国神话传说的远古时代,传说盘古在昆仑山开天辟地之前,世界是一团混沌的元气,这种自然的元气叫做鸿蒙,因此把那个时代称作鸿蒙时代,后来这一词语常被用来泛指远古时代。

华为的这个系统名字很有史诗感,大有“我命由我不由天,一切都从我这里说起”的意味。

我们不希望有朝一日竟会回到解放前,甚至重返鸿蒙,国家各行各业,特别是科技行业都应该有所准备,开源界也不例外。让我们抓住机遇、迎接挑战、战胜一切艰难险阻,先来期待一下今秋华为发布鸿蒙操作系统!

开源中国征稿啦!


开源中国 www.oschina.net 是目前备受关注、具有强大影响力的开源技术社区,拥有超过 200 万的开源技术精英。我们传播开源的理念,推广开源项目,为 IT 开发者提供一个发现、使用、并交流开源技术的平台。


现在我们开始对外征稿啦!如果你有优秀的技术文章想要分享,热点的行业资讯需要报道等等,欢迎联系开源中国进行投稿。投稿详情及联系方式请参见:我要投稿


推荐阅读

Apache 回应:参与开源不受 EAR 约束

Linux 桌面已死?Ubuntu 创始人不同意

又一 Linux 发行版死亡

韩国政府计划从 Windows 7 迁移到 Linux

Redis 作者 antirez:开源维护者的挣扎

收拾精神,自作主宰

    您可能也对以下帖子感兴趣

    文章有问题?点此查看未经处理的缓存