APP下载

国际开源发展经验及其对我国开源创新体系建设的启示

2023-01-20隆云滔王晓明包云岗

中国科学院院刊 2022年12期
关键词:开源软件

隆云滔 王晓明 顾 荣 包云岗

1 中国科学院科技战略咨询研究院 北京 100190

2 中国科学院大学 公共政策与管理学院 北京 100049

3 计算机软件新技术国家重点实验室(南京大学) 南京 210023

4 南京大学 计算机科学与技术系 南京 210023

5 中国科学院计算技术研究所 北京 100190

参考文献(双语版)

开源是指将源代码、设计文档或其他创作内容开放共享的一种技术开发和发行模式,这些内容的版权由开放式许可协议(常称为开源协议)所规定[1]。开源理念诞生于计算机软件行业。自 20 世纪 80年代开源的早期形态“自由软件”①The-Free-Software-Foundation (FSF). FSF History. [2021-08-25]. https://www.fsf.org/history/.运动发端算起,开源已发展了近 40年。经过桌面应用、现代互联网、云计算、大数据、物联网、移动计算、人工智能等丰富的应用场景实践,开源作为软件行业创新引擎的地位不断增强,逐渐发展成强大的技术创新模式,已成为一种重要的科技创新渠道。开源解决方案供应商红帽(Red Hat)公司于 2021年发布的《企业开源现状》[2]调查报告显示,“最具创新能力的企业都在使用开源”。不论是我国头部科技企业,还是国际传统商业软件巨头,都纷纷拥抱开源,开源已成为全球科技进步至关重要的创新渠道。

我国数字技术供应链安全一直受到以美国为代表的西方科技强国的威胁。近年来,中兴、华为、大疆等中国领先科技企业受到美国的“特殊关照”是这种威胁的“变现”。美国战略与国际问题研究中心 2020年11月发表的分析文章《管控美中技术竞争与脱钩》②Kahata A. Managing U.S.-China Technology Competition and Decoupling. (2020-11-24)[2021-08-25]. https://www.csis.org/blogs/technology-policy-blog/managing-us-china-technology-competition-and-decoupling.一针见血地指出“技术供应链管控正成为实现政治目标的重要砝码和工具”。所幸的是,开源已成为全球技术供应链中重要一环,开源的技术开放演化要求,使得任何人为封锁均抵挡不住开源参与者对开放共享和联合进步的渴望。个别国家处心积虑地通过常规手段进行技术封锁和生态隔离,反将倒逼我国更快实现自主可控的开源创新和“双循环”发展相互促进,从而有机会在创新生态的进化之路上实现提质增速。开源创新的机制优势,对于我国在纷繁复杂的国际形势中融入并最终引领世界科技发展潮流具有十分重要的促进作用。

我国非常重视推动开源发展,《中华人民共和国国民经济和社会发展第十四个五年规划和 2035年远景规划纲要》首次在国家战略规划文件中明确提出支持数字技术“开源”发展。在这一规划的号召下,我国开源事业即将进入一个如火如荼的高速发展时代。然而,中国要成为全球软件价值链和高新技术产业链必不可少的一环,需要更加积极地发展自主开源技术、打造自主开源产业、建设自主开源生态,在开源开放与自立自主中推进核心关键技术的研发能力[3]。鉴于欧美先发国家在开源建设和发展上积累丰富,深入剖析国外开源发展经验,对我国建立开源创新生态、树立国际开源影响力具有重要的参考价值和促进作用。

1 国外开源发展的主要经验

开源技术所具有的开放式持续创新特征和极具潜力的商业模式早已引起欧美国家重视,相关政府和组织机构纷纷将开源技术和开放创新作为建设信息社会的基石[4,5],注重从基础设施建设、促进发展政策、风险应对和人才培养等多方面推动开源生态的打造。

1.1 以先进基础设施主导开源生态

(1)开源基金会是开源项目的推动者和组织者。经过数十年发展实践,开源生态已清晰地呈现出由基金会主导的格局。几乎所有开源社区、开源项目背后都有开源基金会的影子,甚至受基金会管理服务和运作控制。开源基金会除了通过重大开源项目树立影响外,还可通过制定行业标准影响业界发展。例如,Linux 基金会推动建立的国际标准《开源软件供应链规范》③Open Chain ISO 5230. (2020-12-31)[2021-11-23]. https://www.openchainproject.org/.对开源软件在合规遵从方面的最佳实践进行了标准化,为开源软件在供应链的流动建立信任,从而降低了开源软件合规风险。目前,全球最有影响力的开源基金会的注册地几乎都在美国,也大多受美国开源基金会相关法律管理或控制。而且随着技术的演进,不断有新的基金会(如云原生计算基金会)成立来影响技术发展趋势,领导新的行业和方向。美国的开源基金会在注册数量、运营能力、类型结构及技术引导能力上具有他国难以企及的优势,是美国确立全球开源领导地位的坚实支撑。

(2)开源许可协议是开源生态的法律基础,是开源产业可持续发展的制度性保障。目前,开源标准组织开源促进会(OSI)已审核通过且未被废弃的开源许可协议④Open-Source-Initiative (OSI). Open Source Initiative approved licenses. [2021-08-25]. https://opensource.org/licenses/alphabetical.有 80 多个(93% 来自美国)。其中,Apache、BSD、GPL、MIT 等流行许可协议在用户权利和衍生品许可等方面的规定各有差异但又相对互补,因此被开源项目广泛采用,并具有强大的社区支持。此外,欧盟委员会也批准了专为适应欧盟法律框架而设计的“欧盟公共许可协议”⑤Commission Implementing Decision (EU) 2017/863 of 18 May 2017 updating the open source software licence EUPL to further facilitate the sharing and reuse of software developed by public administrations. (2017-05-19) [2021-08-27]. https://eur-lex.europa.eu/legal-content/EN/ TXT/?uri=CELEX%3A32017D0863.,以匹配欧盟的法律规范框架。

(3)代码托管平台既是开源软件代码的“托身”之所,也是开源活动(如技术讨论、思维碰撞、代码提交)的聚集之地。作为开源软件和技术演变的历史见证者,代码托管平台对维系用户黏度有着无可比拟的重要性,是开源平台化建设的重要内容。美国作为最早实践开源的国家,也是历史上比较重要的开源代码托管平台的诞生地。先发优势加上马太规模效应作用,使得美国代码托管平台几乎垄断了开源软件的代码托管服务,对开源世界具有非同寻常的影响力。

1.2 出台支持开源发展的政府政策

早在 2002年,美国智库就开始对开源软件的政府政策问题进行研究,并发布关于开源软件的政府政策报告[6],对包括政府采购和专利等在内的政策议题进行探讨,为政府政策提供支持。此后,欧美国家政府开始有意识地出台相关政策推动开源发展。据欧盟委员会“开源观测”项目 2020年发布的分析报告[7],欧盟成员国(包括英国)过去 20年来共出台了不少于 75 份政策文件(如政府计划、战略文件等)和 25 份法律文件(如议会决议、法律、法规等)以推动开源发展;其中,有 25 份政策文件和 6 份法律文件专门针对开源软件而制定,其他文件则是在其数字化议题中提到了开源。欧美国家政府促进开源发展的政策主要包括:推动政府软件开源和公共数据开放、引导业界关注开源风险等。

(1)推动政府软件和财政资助项目成果软件开源。2016年8月,美国政府发布“联邦源代码政策”⑥OMB Memo M-16-21 for Federal Source Code Policy: Achieving Efficiency, Transparency, and Innovation through Reusable and Open Source Software. (2016-08-08)[2021-10-20]. https://obamawhitehouse.archives.gov/sites/default/files/omb/memoranda/2016/m_16_21.pdf.,要求联邦机构每年必须将不少于 20% 的新开发源代码以开源形式公开发布,并且要求开源至少 3年。2019年,英国出台的《数字服务标准》⑦Digital Service Standard. (2019-05-08)[2021-08-25]. https://www.gov.uk/service-manual/service-assessments/pre-july-2019-digitalservice-standard.及此后更新的《服务标准》⑧Service Standard. (2019-06-30)[2021-08-25]. https://www.gov.uk/service-manual/service-standard.中要求,政府部门应选择合适的许可证开源所有新的代码。2021年,法国发布的《国家开放科学计划(2021—2024年)》⑨Second National Plan for Open Science: Generalising open science in France 2021-2024. (2021-10-01)[2021-08-25]. https://www.ouvrirlascience.fr/second-national-plan-for-open-science/.要求,公共资金资助的研究数据、算法和源代码应通过开放许可进行传播共享。

(2)推动政府公共数据开放。2016年,法国《数字共和国法案》⑩LOI pour une République numérique. (2020-12-09)[2021-08-26]. https://www.legifrance.gouv.fr/loda/id/JORFTEXT000033202746/.要求开放公共研究数据。2019年1月,美国国会通过了《开放政府数据法案》11,将开放数据作为美国法典的一部分。美国成为继法国、和德国之后,将开放政府公共数据从政府政策上升为国家法律的国家。在这些国家,政府公共数据应以机器可读的格式,在不损害隐私或安全的前提下,默认向公众开放。

(3)引导产业关注开源风险。早在 2004年,美国联邦金融机构审查委员会发布的《开源软件风险管理指引》⑫Risk Management of Free and Open Source Software. (2004-10-21)[ 2021-10-20]. https://www.fdic.gov/news/financial-institutionletters/2004/FIL11404a.html.要求,金融机构在采用开源软件时参照该指引加强风险管理。此外,英国政府发布了《开放代码的安全注意事项指南》⑬Security considerations when coding in the open. (2017-09-27)[2021-10-20]. https://www.gov.uk/government/publications/opensource-guidance/security-considerations-when-coding-in-the-open.;欧盟发起过开源软件审计项目改善关键开源软件的安全性。

1.3 推动产学结合的教育模式创新

一方面,美国顶级高校(如哈佛大学、加州大学伯克利分校等)积极与全球最大的开源代码托管平台 GitHub 建立合作,推动大学生尽早了解并进入开源社区。另一方面,美国企业也十分重视开源人才培育。以 Google 公司主办的“Google 编程之夏”(GSoC)⑭Google Summer of Code. (2021-11-10)[2021-11-25]. https://summerofcode.withgoogle.com/.、X.Org 基金会发起的“无尽假期编程”(EVoC)⑮The X.Org Endless Vacation of Code (EVoC). (2018-06-02)[2021-10-20]. https://www.x.org/wiki/XorgEVoC/.等为代表的企业实践,为全球开源人才培养提供了可资借鉴的示范样本。

GSoC 由 Google 公司于 2005年开始每年暑期举办,为学生和开源机构搭建了开源培训交流的桥梁;其通过真实的开源项目(由开源机构提供)吸引更多的学生走进开源、熟悉开源开发,为开源事业培养了后继人才。GSoC 在招收学员时,非常注重吸纳新人和不同专业背景的学生参与。例如,2021年度接收的近 1 300 名学生中,91% 是首次参与,且计算机科学专业的只占 70%。目前,GSoC 已成功举办 16 届(不含 2021年),累计为来自 111 个国家的超过 1.6 万名学生提供了开源培训服务,为 715 家参与开源机构培养了超过 2 100 名开源导师(其中 24.7% 曾是 GSoC 培训过的学生)并贡献了超过 3 800 万行代码。GSoC 已成为企业参与开源人才培养的标杆,在推动开源人才培养的同时,也吸引了其他组织(如 X.Org)效仿和跟随。

整体来看,美国在开源教育方面,开源机构和后备人员之间已形成良性互动,极大地推动了开源理念的传播和开源人才的培育。

2 我国开源生态面临的主要问题

长期以来,我国对开源的参与侧重奉献,不惜“把自己的庄稼种在了别人的土地上”。借用别人的“土地”,确实让我们省去了“开垦荒地”“施肥播种”的过程,但是没有“自己的庄稼地”会受到美国司法管制的风险影响,面临着受制于人的重大战略风险。过去一年来,全球领先的智能手机厂商华为与“安卓”操作系统的“故事”⑯Google’s Android ban puts a stop to Huawei’s world domination plan. (2019-05-21)[2021-10-20]. https://www.wired.co.uk/article/huawei-google-ban-phone-sales.,提醒我们只有建设自主、完善的开源生态,才能不受外部威胁地持续参与开源并从中受益,未来发展才有安全保障。

2.1 开源基础设施欠发达

长期以来,我国一直缺少有国际影响力的开源基金会、开源社区和开源项目。其中,开源基金会作为重大开源项目的推动者和组织者,本应成为开源发展的重点关注对象。但是,直到 2020年我国才实现开源基金会零的突破,而且其发展亟待管理制度和理念的创新支持。

根据全国社会组织信用信息公示平台提供的信息,相关管理部门将我国首个开源基金会——开放原子开源基金会认定为慈善组织,并参照相关规章制度进行管理。然而,从开源基金会的工作内容来看,它更多的是公益性质,并非传统意义上的慈善组织。开源基金会的运作管理需要专业的管理经验和组织架构,其服务的领域本身专业性极强,需要有专业人士、职业人士来参与治理和管理;然而,目前相关管理部门将开源基金会当作传统慈善组织来对待,不利于我国开源基金会的长远发展。这从美国开源基金会的运营实践也可以得到体现。美国开源基金会大多依据美国《国内税收法典》(Internal Revenue Code)501(c)条款定义,申请成为非营利组织并享受税收减免优惠。但是,中国的开源基金会若借鉴此类模式运作,将面临严格的工资水平限制规定。根据《财政部 国家税务总局关于非营利组织免税资格认定管理有关问题的通知》(财税〔2018〕13 号),国内开源基金会若要被认定为“符合条件的非营利组织”,则“工作人员平均工资薪金水平不得超过税务登记所在地的地市级(含地市级)以上地区的同行业同类组织平均工资水平的两倍”。换言之,国内开源基金会要享受税收免税优惠,就得以牺牲薪酬待遇方面的竞争力为代价。此外,国内具有开源运营管理经验的专业人士主要集中在薪资水平较高的头部互联网企业,若想吸纳这些优秀人才加入,开源基金会通常需要提供与互联网企业大致相当的薪酬待遇。然而,根据《基金会管理条例》(国务院令第 400 号)第二十九条,“基金会工作人员工资福利和行政办公支出不得超过当年总支出的 10%”。同等薪酬水平难以得到保障,不利于广泛吸纳优秀专业人才。这种管理制度并不利于开源生态长远发展。

2.2 开源合规及风险管理水平有待提升

相比于闭源软件,开源软件的代码公开、获取便捷。但开源软件的所有权和使用权分离,导致用户往往成为开源的风险落脚点。因此,用户在引入和使用开源软件的过程中要防范潜在的风险问题,尤其是开源许可方面的风险。

(1)开源许可协议。开源许可协议作为外来之物,域外相关法律规定在国内能否直接适用,我国法律和司法实践并未给予正面回答;而且受软件嵌套、组合等复杂结构的影响,开源许可协议在使用中容易出现继承和兼容等问题,需要权威的司法解释[8]。鉴于开源许可对开源生态的重要性,我国亟待完善与开源许可协议等相关的法律制度,在立法中明确开源许可协议的法律属性,在知识产权内容中增加开源软件、开源硬件、知识共享等内容,并在知识产权许可中规定开源许可协议。

(2)开源产品。开源产品的安全风险也是一个被长期关注的话题。根据新思科技(Synopsys)《2021年开源安全和风险分析报告》⑰2021 open source security and risk analysis report. (2021-04-30)[2021-08-25]. https://www.synopsys.com/software-integrity/resources/analyst-reports/open-source-security-risk-analysis.html.,开源组件的安全风险在增加:① 未妥善管理的开源代码带来的安全风险日益增加。在所审计的代码库中,84% 具有已知安全漏洞的开源组件,超过一半(60%)的代码库包含高风险漏洞。② 过期和“废弃”的开源组件非常普遍。所审计的代码库中,有 85% 包含已经过期 4年及以上的开源组件,91% 包含近 2年没有开发活动的组件。使用过期的开源组件一方面会带来不必要的功能和兼容性问题,另一方面还增加了安全漏洞风险。

2.3 开源人才供给严重不足

开源创新体系的活力来自高素质的开源人才队伍。我国虽已成为软件开发人员数量大国,但其中了解开源、具备开源开发技能、熟悉开源开发流程的人才相对较少。一个重要原因是我国高校利用开源项目进行教学的普及度不高。根据 GitHub 2020年的调查数据⑱2020 GitHub Education Classroom Report. (2020-11-30)[2021-11-23]. https://education.github.com/classroomreport#wherethedevelopersare.,GitHub 学生用户中美国学生占比 32%,而中国高校学生参与较少,仅 2%。2021年4月,开放原子开源基金会通过开源中国网和中国软件开发者网等国内顶级开发者社区向全国开发者发放开源人才调查问卷。但回收的有效问卷数量并不乐观,且在这为数不多的有效问卷中,有近一半的开发者回答几乎没有或仅有较少开源项目研发、运营或推广经验。可见,在我国开源创新生态构建中,优质开源人才已成为重要的制约因素,急需培养模式方面的创新以增加开源人才供给。

3 对我国开源创新体系建设的启示

开源发展的重点在生态建设。我国虽已积极在国际开源社区作出重要贡献,但一直缺乏与贡献程度相称的开源影响力。这与长期以来没有形成强大的开源生态不无关系。与国外先进开源生态相比,我国开源生态相对落后,相关支持政策大体还停留在纲领规划性文件层面,缺乏具体政策尤其是地方政府和科研评价的政策。作为互联网大国和技术研发大国,我国应积极抓住开源发展的历史机遇,推动自主开源生态发展并占据相应的国际地位。

3.1 健全开源基金会创立和管理机制

开源基金会项目托管是一种成熟的开源运营模式,能有效汇聚各方力量持续推动开源创新。我国开源基金会的现行管理模式不适应行业市场化运作需要,有必要借鉴国外成功开源基金会的运行模式,变革现有参照慈善机构的管理模式,建立市场化导向的开放、中立、共治的服务平台。将开源基金会归类为“慈善机构”,是因为我国缺乏“非营利机构”的上位法。现阶段我国对基金会的管理依据是 2004年出台的《基金会管理条例》,根据该条例给出的定义,中国基金会的财产来源为“自然人、法人或其他组织捐赠的财产”。但开源基金会的运作模式,应该允许其接受来自互联网科技企业的赞助——企业赞助是美国开源基金会(如 Apache 基金会等)的重要资金来源。开源基金会这种具有重要经济作用的组织需要更明确的、更适用的法律依据。此外,除了国家主导的开源基金会外,还应鼓励华为、百度、阿里巴巴、腾讯等国内头部科技企业联合相关方向教研实力强劲的科研院所,围绕国内重点开源项目成立专业领域开源基金会,积极推进开源社区创新联合体建设。例如,依托国内开源联盟或开源基金会等成立开源芯片、开源软件创新联合体。

3.2 推动“十四五”规划开源内容落地实施

要充分发挥《中华人民共和国国民经济和社会发展第十四个五年规划和 2035年远景目标》的引领作用,在国家相关部委、地方政府层面及某些核心领域推动开源开放战略的落地实施;有选择、有规划地在系统软件、开源芯片、基础工具软件、智能制造、大数据、云计算、工业互联网、下一代通信网络等领域布局重大基础开源项目,通过开源开放的方式加速提升我国软件和信息技术服务业的原始创新、基础创新能力。可在软件信息产业较为发达的地区强化地方政府对开源产业在政策和业务上的支持服务能力,落实资金、场地、人才补贴等多方面支持。例如,以每服务 1 000 名从业者需要约 1 万平方米孵化办公场地计算,每年预计需要地方政府提供 3 000 万—5 000 万元财政支持,且平均需要连续支撑 3—5年;对于支撑重要开源软件发展的信息企业在软件企业认定、高新技术企业认定方面给予政策优惠。

3.3 推动公共财政资助产出软件的开源共享

我国可以借鉴欧美国家的做法,针对政府新建设的软件或公共财政资助的科研项目产出软件,出台促进开源共享的政策。比如,要求政府机构每年新建设、开发的软件按一定比例(如 20%)面向社会开源代码,或者要求所有非出口管制的研究项目的成果面向社会开源发布。此外,还可以面向特定领域建立专门的内部共享代码库。例如,美国《联邦源代码政策》要求所有联邦机构都必须维护新建软件源码仓库,并且面向全国政府机构共享。不论是面向社会开源,还是为了促进一定范围(如政府机构范围)的内部复用,源代码的开放共享都有助于提高公共财政投入的经济效率和社会效率,一定程度上也能起到促进建设或研究单位规范项目建设过程、建立亲清政商关系。

3.4 引导产业加强开源治理

(1)加强开源许可合规管理。可出台配套政策要求使用开源软件的组织机构加强开源治理,建立开源产品全生命周期的风险管控机制,对开源产品的引入、使用、运维、更新和退出的全流程管理做出明确规范,落实各环节的主体责任。

(2)加快推进建立知识产权联盟,为开源构建知识产权保护的战略武器。可在国家层面成立对标于开源发明网络(Open Invention Network)的知识产权联盟,快速开展系统软件、开源芯片、基础工具软件、智能制造、大数据、云计算、工业互联网等重点科技行业细分领域构建专利池的相关工作。由于此类联盟需要专利审查、专利交易、国际化、专业法律人士参与运营,建议由相关政府部门提供试点资金支持。

(3)在开源治理能力提升上,要推动国内开源基金会走出去。建设自主的开源创新体系必须坚持对外开放的原则,即:自主开源生态并不意味着要脱离国际开源生态或者搞科技对抗,而是在相互兼容、开放共享的基础上,构建好国内开源产业链闭环和开源项目培育基地,并与国外相关机构合作,在开源基金会、开源项目、开源社区、开源开发者和开源用户等多个层面与全球联动并良性发展。在国际开源合作中有较大的发言权和决策权,能维护本国的正当利益,开源体系就是自主可控的。因此,构建自主开源创新体系,一方面要吸引国外知名开源项目、全球开源社区基金会在我国设立中文分区或成立合资企业、分支机构,鼓励资助国际开源精英参与我国开源社区和开源项目建设;另一方面要鼓励国内科技企业、科研院所与高校承接和主办更多的国际开源技术交流活动,积极推动我国高质量的开源项目走向海外,培育一些有国际影响力的开源项目,共同推进全球开源事业的发展。

3.5 强化开源教育,保障人才供给

(1)推动建立政产学研合作的人才教育培养体系。① 要在常规教育体系加强对开源人才的培育,积极开发完善的开源教材和课程体系,建立政产学研协作的开源实践平台。开源教育除了要面向高等教育阶段的学生外,还需要向义务教育和职业教育辐射,普及开源理念和文件,从开源开发、管理和运营等多个维度提升学生基础能力。② 要鼓励开源机构尤其是开源贡献企业,利用开源项目优势和雇员技能优势,以适当的形式向外部提供方法引领和技术指导,帮助更多的开发者学会与开源社区交互、熟悉配套软件环境、提升开发技能,将其培养为优秀的开源参与者、贡献者,从而为业界提供高素质的开源开发和运营管理人才。

(2)推动建立市场化开源人才薪酬机制。保障人才供给的另一个维度是如何吸引人才。要优化调整现有制度中对开源人才的薪酬限制,推动开源基金会薪酬待遇与业界科技机构接轨,让优秀的开源人才得到合理回报,从而释放开源人才创新活力,支撑我国开源生态体系的可持续发展。

4 结语

虽然我国已成为全球第二大开源热点区域,但此前国内产业和教育领域规划对开源的系统性认识不足,开源生态建设并不到位。我国作为信息技术大国、强国,拥有庞大的应用市场和丰富的开发者群体等资源优势。因此,应把握好历史发展机遇,在必要的多方位政策引导下,推动政产学研各界加强合作,在开源基础设施完善、开源项目孵化、开源人才培育、开源商业模式创新和开源治理体系构建等方面形成合力,加快建设立足中国、面向全球的开源生态,在竞争日趋激烈的全球开源全景图中占据重要的一席之地。

猜你喜欢

开源软件
校园武术“学、练、赛”一体化实践探索
禅宗软件
工业软件 自主创新
传播开源精神 共迎美好未来
五毛钱能买多少头牛
2019开源杰出贡献奖
软件对对碰
巧用立创EDA软件和Altium Designer软件设计电路
大家说:开源、人工智能及创新
开源中国开源世界高峰论坛圆桌会议纵论开源与互联网+创新2.0