为什么大型科技公司要开源自己的技术?

程序人生 码拜 5年前 (2020-06-29) 2992次浏览 0个评论

大约一个月前,谷歌公开了用于Big Transfer(BiT)的预训练模型和微调代码——Big Transfer是一种深度学习的计算机视觉模型。根据谷歌的说法,Big Transfer将允许任何人在相应的任务上达到最优表现,即使每个类只有少量的标签图片。这仅仅是这家科技巨头免费向公众开放其专有产品的一个例子。要知道,发布强大的免费开源软件已经成为科技界的常见事件,并引发了这样一个问题:大型科技公司这么做得到了什么回报?

在90年代后期,当Open Source Initiative出现时,将源代码公开的想法被认为是一个坏策略,因为专有软件是标准,公司会尽一切努力保护软件。到2020年,开源的概念发生了巨大的变化,现在已经成为主流。

如今有许多开源技术公司,其中一些公司的年收入已经超过1亿美元(甚至10亿美元),包括红帽、MongoDB、Cloudera、MuleSoft、Hashicorp、Databricks(Spark)和Confluent(Kafka)。

除了上述科技公司高调收购和投资开源项目外,谷歌和Facebook等科技巨头也把开源放到了难以置信的重要位置,因为开源对于收集新产品的创新和建立一个庞大的开发者社区非常重要。例如,Flutter vs React Native、Tensorflow vs PyTorch、Kubernetes等。谷歌和Facebook在开源领域的贡献更关注开发者和消费者,而微软和AWS则更关注企业。

为什么大型科技公司要开源自己的技术?

开源是持续创新的催化剂

开源是不断创新的中心。当你拥有更多的来自不同公司和拥有不同背景的人,你对技术创新的覆盖率呈指数增长。公司从不同的角度识别代码中的潜在问题,你也会了解如何使用集体智慧和开放贡献者来解决问题。

因为开源,人们可以使用你构建的系统,其中一些人将提供改进。如果开源系统背后的主要团队是科技公司本身,那么项目的方向将是他们想要的,而外人则为项目做出大量贡献。研究发现,技术项目往往会积累大量的工作时间,而这些工作时间在项目内部进行时很难做到。将项目开源,并使其可供外部用户使用,会使其在长期内更加成熟。

公司仍然保留着为项目做出贡献的主要劳动力,他们在管理新贡献方面发挥着重要作用。此外,这也给了他们一个机会,让他们知道是否还有其他人可以雇佣,或者,一般来说,是否能在未来与其他人合作。这对研究型社区尤其有利,而公司是研究型社区的一部分。

“开源是创新的推动者,使组织能够快速获得全球人才库和开发安全、可靠和可扩展的软件的工具。”Github India的总经理Maneesh Sharma表示,“最有效地加快业务转型的组织是那些转向开源软件开发以在快速变化的数字世界中取得成功的组织。”

开源有助于构建丰富的开发人员社区  

如果公司的DNA中没有开源,那么与开发人员社区建立积极的关系可能会面临巨大的挑战。一家像微软、IBM或谷歌这样的大公司,会有很多人时刻盯着。每个人都可以阅读和批评其代码。而且,开源意味着发布周期和路线图的公开和透明,这需要付出大量的努力和主动性。

有了一个开源项目,公司的系统被其他人使用,帮助他们建立未来的项目和产品来对抗其他公司。这有助于他们打造一个更好的品牌,也赢得其他人的尊重。而且,他们的产品可能基于成熟的软件版本,这意味着这些产品具有更好的价值。从某种意义上说,科技公司可以放心,该产品是基于一些许多人使用的系统,所以基本上不会有任何意外的问题,或者有问题也会立即得到解决。

 

“如今,99%的软件项目都是使用开源软件构建的。开源已经彻底改变了软件开发,并创建了一个由开发人员组成的相互关联的社区,这个社区具有高度的协作性,并扩展到世界各地。”Maneesh补充道。

公司不再需要每五年就重新投资

在开源环境下的运营,会推动一家公司成为技术构建和发展的领先者。这是通过协作和贡献回开源软件来完成的。有团队领导开源项目的公司可以更深入地了解技术是如何构建的,以及技术的发展方向和原因。

如果一家公司已经开放了其云/云原生项目,那么它就可以看到云和云原生的未来。这确保了它是不断进步的技术领域的一部分。这也意味着不必每次创建新产品时都重新发明轮子。随着科技推动创新,市场开始期待某些功能,而公司的差异化就体现在这些功能之上。

对于科技企业来说,开源并不总是首选的策略

但开源策略并不总是这样。在诸如红帽这样的特定业务用例中,开源无疑是有利可图的。但就人工智能而言,它通常既先进又不可预测,研究人员很难将其想法货币化并为研究提供资金。

 

例如,OpenAI最初是一个非盈利的研究实验室,在与微软合作时,它改变了对开源的立场。一年后,他们说他们正在通过商业API不是开源来实现所有的软件创新。该组织此前表示,担心其下一代模型可能被滥用。

此外,虽然苹果或微软等大公司已经变得非常开源友好,但它们的软件产品中只有一小部分是开源的,当然也包括库和工具。与其他公司相比,这只是整个生态系统的一小部分。

“归根结底,我们最关心的是确保人工通用智能惠及所有人。我们认为开发商业产品是确保我们有足够资金取得成功的途径之一。”OpenAI在最近一篇关于发布的博客文章中说。@开源云中文社区

原文链接:

https://analyticsindiamag.com/why-do-large-companies-open-source-their-tech/


CodeBye 版权所有丨如未注明 , 均为原创丨本网站采用BY-NC-SA协议进行授权 , 转载请注明为什么大型科技公司要开源自己的技术?
喜欢 (10)
[1034331897@qq.com]
分享 (0)

文章评论已关闭!