企业组织为什么要拥抱开源?

企业组织为什么要拥抱开源?

赵海玲,邮箱:zhaohailing@opanatom.com
郭 晧,邮箱:guohao@opanatom.com

        事实上,企业拥抱开源,不仅是基于技术层面的选择,更是为了适应市场竞争环境的战略考量。以操作系统为例,1991年,Linus Torvalds(林纳斯·托瓦兹)构建了一个Linux系统的基本框架,成千上万的程序员得以基于此自由地使用、修改、分发,诞生出风靡全球、支撑无数服务器和设备运转的开源操作系统—Linux内核。与此同时,微软对开源软件的态度也发生显著变化,从最初的抵制和打压,到后来的全面拥抱和支持,并于2018年斥资75亿美元收购开源软件项目托管平台GitHub,强化对开发者自由、开放、创新的承诺。此外,微软在其产品中广泛采用开源软件,并积极向开源项目贡献代码,长期被微软称为“癌症”的Linux系统也集成进其Azure云服务平台的IT框架[1]。

        简单而言,企业组织拥抱开源,主要有以下七个方面的原因:

        一是有助于降低总体生产成本。开源,即站在巨人或前人的肩膀上开发迭代,企业拥抱开源,有助于降低在产品研发上重复造轮子所付出的成本。新思科技发现,在96%的商业应用中集成了开源组件,平均每个应用包含257个开源组件[2]。Harvard Business School研究显示:若无开源软件,公司在软件支出上的需求是目前的3.5倍[3]。例如,TensorFlow问世之前,人工智能模型算法的研发需要从复杂的神经网络开始,开发环境依赖安装、部署、测试性能调优的工作复杂耗时,代码复用也极为有限。2015年,谷歌开源TensorFlow,支持“大规模机器集群在深度网络中分发训练和推理”,此举大幅降低了人工智能技术应用的门槛。

        二是有助于提升产品创新速度。与基于企业内部研发的产品创新模式相比,一是开源软件开放协作的模式允许开发者共享和重用已有的解决方案,避免重复劳动,加速产品开发速度。二是开源软件能够吸引全球范围内的开发者和专家共同参与项目的完善和优化,提高解决技术问题的速度。三是开源软件的灵活性和透明度也有助于不同团队和项目之间无缝地合作和集成,缩短产品开发周期。GitHub年度报告显示,全球90%的企业在使用开源软件,全球财富前100的企业中有超过90%的企业在使用GitHub开源项目[4]。据Linux基金会统计,2016年世界排名前10的IT跨国公司,在开发其产品和服务时,有80%的软件创新成果来自企业外部的开源软件,而企业内部自创的成果只占20%[5]。企业摒弃传统封闭式创新模式,转而利用开源提供的机遇,广泛整合外部资源,开放企业创新的边界。

        三是有助于避免单一供应商锁定。单一供应商锁定是指客户严重依赖特定供应商的产品、服务或技术,以至于转向替代供应商变得成本高昂、复杂或实际不可行等情况。以数据库为例,传统商业数据库往往导致企业陷入单一供应商锁定的困境。企业一旦选择了某个商业数据库,就有可能受限于该供应商的技术更新、定价策略以及合同条款。若出现技术瓶颈或成本上升等情况,企业往往难以轻易更换供应商。然而,开源数据库如MySQL、PostgreSQL等为企业提供了更多选择。这些开源数据库的源代码公开,允许企业自由访问、修改和重新分发。这种开放性意味着,即使原始供应商停止支持或更新,企业也能依靠开源社区的资源自行维护或找到替代方案。此外,开源社区汇聚了全球的开发者和用户,共同协作解决问题、改进软件,进一步增强了企业的技术选择和议价能力。

        四是有助于提升安全性能。开源软件的安全性很大程度上依赖于社区的活跃度和项目的维护质量,而闭源软件的安全性则依赖于开发商的安全实践和更新机制。一是开源软件的代码对所有人开放,任何人都有机会审查代码,正如著名的“Linus法则”:“Given enough eyeballs,all bugs are shallow”,大量开发者的参与使得安全漏洞更容易被发现和修复,从而提升软件的整体安全性。二是安全漏洞一旦被发现,得益于庞大的开源社区支持,往往能够迅速做出反应,修复漏洞并发布更新,及时保护企业用户系统免受潜在威胁,充分体现出开源社区在提升软件质量和安全性方面的优势。相比之下,闭源软件的安全性高度依赖于软件开发公司内部的安全实践和流程,企业用户往往无法直接审查代码,漏洞修复的速度和透明度也不如开源软件。

        五是有助于拓展营销渠道。开源社区的成员通常是开发者和技术决策者,正是企业所期望的目标客户群体。利用开源社区,企业直接触达目标用户,用户可以直接参与到产品的设计和开发中。企业可主办或赞助各类开源技术会议、黑客松、研讨会、在线讲座等,这些活动不仅能增进企业与用户的互动,也是展示产品特性和优势、收集用户反馈、建立合作关系的有效途径。例如,红帽公司通过定期举办Red Hat Summit,邀请全球开源社群共襄盛举,以强化其在企业级开源解决方案市场的领导地位。​

        六是有助于构建合作伙伴生态。开放共赢的合作机制吸引上下游合作伙伴加入项目生态,帮助企业在全球范围内建立合作伙伴生态,提升市场竞争力。2007年之前,移动操作系统市场包括Symbian(塞班)、iOS(苹果)、BlackBerry OS(黑莓)、Windows Phone(微软)等多个系统,彼此之间互不兼容,大规模的应用集成也较为困难。2005年,Google收购Android Inc.。2007年,Google与84家硬件制造商、软件开发商及电信运营商组建开放手机联盟共同研发推广Android操作系统,并开放Android操作系统源代码[7]。开源模式允许软件开发商等在无需支付高额许可费的情况下修改和分发软件,从而在移动行业内获得广泛采用。2010年,Android超越称霸十年的诺基亚Symbian操作系统,跃居全球最受欢迎的智能手机平台。与Symbian操作系统更为严格、封闭的生态系统形成对比,随着市场向更集成的硬件软件解决方案演变,安卓的开放性成为其显著优势。

        七是有助于成为引领全球的事实标准。通过开源发布增强功能,鼓励业内同行采用及开发,共享资源越密集、越具吸引力,甚至可能演变成主流解决方案。例如,RISC-V成为历史上使用最多且最开放的CPU指令集架构,正迅速成为x86和ARM的强有力竞争者。与专有的指令集架构(如x86和ARM)不同,RISC-V的开源特性意味着任何组织或个人都可以使用、修改和分发它,而无需支付许可费用,开放性促进了广泛创新和快速迭代。与此同时,其开源特性也有利于减少企业对特定供应商的依赖。目前,全球已有70多个国家和地区投入到RISC-V领域中,其软硬件生态正日趋成熟[8]。Semico Research预测,2025年RISC-V芯片出货量将达800亿颗[9]。

        21世纪,“开放性”已成为推动社会进步的重要动力,深刻地影响创新、研究与标准制定等。开源软件以其加速技术创新和减少前期投入等特性,成为企业不可或缺的组成部分:一是开源软件具备降低软件开发成本、缩短软件开发周期、加快产品上市速度等优势,初创企业可以更快地集成和部署先进技术,提升其市场竞争力;二是通过开源汇集广泛的社区资源等,科技巨头可以更快地推动产品创新,加快创新成果在整个产业链中的传播,促进技术产品的广泛采用,牢筑生态护城河。随着技术的持续进步和市场需求的快速演变,开源软件的重要性将进一步增强。开源软件将在操作系统、编程语言、中间件及开发工具等多个层面上扮演核心角色,促进技术快速发展,同时为企业带来更大的灵活性和成本效益,使其能够迅速适应市场和技术的变化。

参开文献:
[1]https://news.microsoft.com/2018/06/04/microsoft-to-acquire-github-for-7-5-billion/
[2]https://www.synopsys.com/blogs/software-security/deep-dive-2023-ossra-report.html
[3]Hoffmann, Manuel and Nagle, Frank and Zhou, Yanuo, The Value of Open Source Software (January 1, 2024). Harvard Business School Strategy Unit Working Paper No.24-038.
[4]《开源生态白皮书》,中国信息通信研究院,2021年9月.
[5]《2021中国开源发展蓝皮书》,2021.
[6]https://www.ibm.com/topics/open-source
[7]https://www.ibm.com/topics/open-source
[8]https://zh.wikipedia.org/wiki/Android
[9]https://riscv.org/announcements/2023/11/risc-v-international-marks-banner-year-for-risc-v-adoption-technical-momentum-and-community-engagement/

Goto Top