作者 | 包云岗

责编 | 王晓曼

本文经作者授权转载自包云岗知乎

以下视频是2011-2019期间全世界开源代码贡献最多的城市排名:旧金山一骑绝尘,其他主要是美欧城市;亚洲有东京、首尔上榜;莫斯科也贡献突出。但是,很遗憾没有中国城市。客观地说,中国在开源方面还比较落后,那该如何应对?

开源代码贡献量全世界城市排名(2011-2019)

有人建议不要使用来自美国的开源技术。类似的建议出发点是好的,但却落入了马克思所批判的“倒洗澡水连孩子也倒掉”思维方式。

对于中国在开源方面的“拿来主义”,只有搞清楚问题在哪里,才能对症下药。这需要我们辩证地去分析“中国开源拿来主义”背后的原因。

为什么美国的开源技术那么有吸引力?

事实上,开源技术对企业来说存在很大的吸引力,背后有其经济学原理——诺贝尔经济学奖科斯的交易成本(Transaction Cost)理论。根据该理论,每一笔交易都有成本。对于一个企业来讲,如果在技术都能完成相同功能的情况下,肯定交易成本越低的技术,会得到青睐。开源极大地降低了交易成本,所以必然会受到市场的青睐。例如,根据阿里云前副总裁章文嵩的数据,阿里使用开源技术来实现“去 IOE”,成本只需要原来的1/140。因此,一旦存在高质量的开源技术,必然会得到企业的关注和应用。

事实上,开源技术也存在竞争,也需要大量投入。人们经常责怪中国都是“拿来主义”,核心原因在于还未意识到要去占领开源市场。如果不投入参与竞争,怎么能推出有竞争力的开源技术?

美国企业对开源技术的投入非常重视。很多人都知道谷歌有多个有影响力的开源项目,比如 TensorFlow。但可能很多人想不到在 Github 上参与开源项目人数最多的公司其实是微软。2018年的一个统计显示,微软有4550名员工参与开源项目,全世界排第一;而谷歌2267名员工排第二,红帽子2023名员工排第三。

所以,要想做到“不要使用来自美国的开源技术”,不能靠堵,更需要的是引导——引导中国企业、学术界加大对开源的投入,形成一批中国发起的有影响力的开源项目。只有中国在开源领域有国际竞争力了,才能与美国的开源技术抗衡。

任何来自美国的“免费开源”的东西都不能用?

这也是“一刀切”的思维方式,片面而机械。这里稍作解释:

开源主要有两种模式,一种是非营利组织主导,如 Linux 基金会、Apache 基金会、RISC-V 基金会等,商业应用一般需加入基金会,缴纳会员费。另一种是企业主导,谷歌 (Andriod, Chromium, TensorFlow)、RedisLab (Redis)、WaveComputing (MIPS)等,商业应用需与主导企业签署协议。

例如全世界广泛使用的谷歌 TensorFlow 便属于第二种模式,是由企业主导。但是谷歌控制着 TensorFlow 的开发,只单向开源代码,很少接受社区反馈,很难开展支持社区协作开发,开源项目管理较为封闭不开放。这其实不是真正的开源,本质上是通过开源形成技术垄断。用小米副总@崔宝秋-小米的话说,这属于“开源寡头”。

前段时间龙芯放弃的 MIPS 指令集,曾经也宣布要开源其R6版本的指令集,这其实也是属于公司主导。随着 Wave Computing 破产,其开源计划也不了了之。

相比而言,由基金会等非盈利机构主导的开源计划、开源项目则更开放,更有生命力。比如 Linux 已经开源了近30年,依然蓬勃发展,全世界1400多家企业、15000多位开发者一起为 Linux 贡献。这是真正的开源——代码开源、流程开放、管理开放,通过贡献度来决定话语权。这样的开源项目中国为什么要拒绝?

我想中国不仅不应该拒绝,而是应该更多的投入,争取更多的话语权。事实上,华为便认识到了,在 Linux 上投入非常大,在 Linux Kernel 5.10 中华为的 Patch 贡献量已经排到全世界第二,仅次于 Intel。

有些开源项目受到美国军方 DARPA 资助,还能用吗?

这个问题其实去年就有人在网上提出类似的质疑。我也做过回应。以最近大家比较关注的 RISC-V 为例,DARPA 发言人的观点是“DARPA打算将其资助的 RISC-V工作公开提供给世界各地的公司和学者(the agency intended for RISC-V work it funded to be publiclyavailable to companies and academics around the world)”。

DARPA 的这个立场有历史背书。过去几十年,在 DAPRA 资助下研制的 BSDUnix、TCP/IP 协议栈等一系列技术对人类社会进步起到了巨大的推动作用。FreeBSD 是早期开源软件的杰出代表,TCP/IP 协议更是开放标准的典范,构建起今天连接几十亿人的 Internet。它们虽然都是 DARPA 支持,但是世界各地都可以使用。中国基于 TCP/IP 协议构建网络,这并没有受到美国的出口管制;中国企业基于TCP/IP研制的交换机与路由器,也并不受到美国的出口管制。

还是以RISC-V为例,指令集规范(Specification)和处理器实现(Implementation)是两个不同层次的概念,要区分开。指令集(ISA)是规范标准,往往用一本书或几张纸来记录描述,而处理器实现是基于指令集规范完成的源代码。

RISC-V 是一个指令集规范。“RISC-V 是开源的”表示指令集规范是开源、开放和免费的(open and free),这与 x86 与 ARM 指令集有本质不同,但并不是指具体的处理器实现也都是开源免费的。(关于 RISC-V 规范与处理器实现的区别,这里有专门的解读:关于 RISC-V 和开源处理器的一些解读 - 中国开放指令生态(RISC-V)联盟:http://crva.ict.ac.cn/?page_id=540)

因此,一个开源技术受到 DARPA 资助,不应该成为我们拒绝和抵制的理由,就如中国并没有因为 TCP/IP 协议是 DARPA 资助而拒绝。事实上,RISC-V 和 TCP/IP 一样,本质上都是规范。规范很重要,但更重要的是如何将规范转变为代码、系统和产品,这才能形成核心技术竞争力。

来源:

https://zhuanlan.zhihu.com/p/280144610?utm_source=wechat_session&utm_medium=social&utm_oi=27638299099136&utm_campaign=shareopn&wechatShare=1&s_r=0

作者介绍:

成都链安,全球最早专门从事区块链安全的公司,同时也是全球最早将形式化验证技术应用到区块链安全领域的团队,研发了全球领先的智能合约自动形式化验证平台VaaS,并基于此,建立了“一站式”区块链安全平台,为区块链企业提供安全审计、资产追溯、隐私保护、安全咨询、威胁情报、安全防护等全方位的安全服务与支持。申请软件发明专利和著作权15项。

更多阅读推荐

  • 如何在SQL Server 2019中添加数据敏感度分类的命令

  • 深度揭秘:腾讯存储技术发展史

  • 一文教你如何在生产环境中在Kubernetes上部署Jaeger

  • 如何在SQL Server 2019中添加数据敏感度分类的命令

  • 一周内咸鱼疯转 2.4W 次,最终被所有大厂封杀!

如何破解“中国开源拿来主义”?包云岗的几点分析相关推荐

  1. 中国开源年会报名 | StarRocks 极速湖仓分析的探索与实践

    开源年度盛会 2022 第七届中国开源年会 (COSCon'22) 来啦! 本次年会将于 10 月 29-30 日由开源社举办,线上共设有1个主论坛和16个分论坛,线下分会场遍布成都.深圳.上海.北京 ...

  2. DolphinScheduler PMC Chair 代立冬入选 2021 中国开源先锋 33 人之心尖上的开源人物!...

    # 前言 "开源"是 2021 中国技术发展的年度热词,越来越多人关注开源.贡献开源. 在本土,"开源"作为国家战略被首次写入国家"五年规划" ...

  3. 权威发布丨2021 中国开源先锋 33 人之心尖上的开源人物

    | 作者:SegmentFault | 编辑:王玥敏 # 前言 "开源"是 2021 中国技术发展的年度热词,越来越多人关注开源.贡献开源. 在本土,"开源"作 ...

  4. 权威发布|恭喜 Apache Doris PPMC 陈明雨入选 2021 中国开源先锋 33 人之心尖上的开源人物...

    # 前言 "开源"是 2021 中国技术发展的年度热词,越来越多人关注开源.贡献开源. 在本土,"开源"作为国家战略被首次写入国家 "五年规划&quo ...

  5. 中国开源视频编辑软件行业市场供需与战略研究报告

    出版商:贝哲斯咨询 获取报告样本: 企业竞争态势 该报告涉及的主要国际市场参与者有KDE.Heroine Virtual.OpenShot Studios, LLC.Meltytech, LLC.Fl ...

  6. 2022-2028年中国开源软件行业市场专项调研及竞争战略分析报告

    报告类型:产业研究 报告格式:电子版.纸介版 出品单位:智研咨询-产业信息网 开源软件一般指开放源代码软件, 开放源码软件(open-source)是一个新名词,它被定义为描述其源码可以被公众使用的软 ...

  7. 中科院包云岗:开源模式打造处理器芯片生态,总共要几步?

    [栏目:研究思路]在AI的发展中,如果说数据是血肉,算法是灵魂,那么芯片就是AI的骨头.没有芯片,所有的程序都只能是空中楼阁. RISC-V(开放指令集)作为一种开源芯片指令集,因其具有高性能.功耗较 ...

  8. 2022 CCF中国开源大会会议通知(第四轮)

    一.会议简介 2022 CCF中国开源大会(CCF ChinaOSC)拟于2022年8月20日至21日在陕西省西安高新国际会议中心召开.大会由中国计算机学会(CCF)与开放原子开源基金会主办,CCF开 ...

  9. 包云岗:关于RISC-V成为印度国家指令集的一些看法

    作者 | 包云岗 本文于2017年11月28日完稿,将在<中国计算机学会通讯>2018年第1期发表. 处理器指令集是软硬件的接口,是核心基础软硬件生态系统的基石,其重要性不言而喻.2011 ...

最新文章

  1. mysql行级锁实例,PHP – MySQL行级锁定示例
  2. ×××S 2008 实用小技巧
  3. 4.mysql数据库创建,表中创建模具模板脚本,mysql_SQL99标准连接查询(恩,外部连接,全外连接,交叉连接)...
  4. Linux下防止文件误删方法
  5. JVM之方法区Mothed Area
  6. U8远程接入客户端重新安装问题
  7. 支付结算之路由系统设计
  8. Bootstrap 3: 菜单居中 Center content in responsive bootstrap navbar
  9. 【今日CV 计算机视觉论文速览 第131期】Mon, 17 Jun 2019
  10. iOS的一些小技巧[转]
  11. OpenCV:灰度图转伪彩色图
  12. wc,这进度条好快,不行我也得展示一下——python教你各种方法无障碍实现进度条
  13. 2022年烷基化工艺找解析及烷基化工艺考试总结
  14. 对《A Fast Parallel Algorithm for Thinning Digital Patterns》一文的理解(上)
  15. 首台微型计算机,全球首台骁龙820微型电脑:DragonBoard 820c
  16. 一起talk C栗子吧(第一百九十三回:C语言实例--DIY less命令二 )
  17. 12G大显存,七彩虹在CES发布多款RTX 3060显卡和游戏整机新品
  18. 好程序员分享MySQL之SQL入门(一)
  19. Citrix XenDesktop 简介
  20. 鸡头?凤尾?请过来人给指点下

热门文章

  1. python直方图的拟合_从一组数据python中将两个高斯拟合成直方图
  2. java 并发_Java并发防范机制
  3. php配置实例,php mailto配置实例
  4. 8位可控加减法电路设计_高级工程师:相同的地线GND,却有不同的电路设计含义...
  5. linux sh 编程,Linux shell 编程入门
  6. c语言中数据存储在文件中,急求如何将下列C语言程序数据存储到文件中?
  7. python赋值的数组无序怎么办_Python的多维空数组赋值方法
  8. 古天乐、胡歌登上核心期刊,他们的名字被用来命名一个新物种!
  9. 中国已消失的9所世界级大学
  10. 经验分享 | 二本直博浙大?我只是写了篇论文而已