开源之后是什么? (2019)

2021-08-08 04:28:52

这篇文章探讨了软件工具和服务之间的差异;软件服务的有状态性质如何导致它们被关闭;并假设加密网络如何催化开放服务的新时代,重新点燃组合创新。在互联网服务(搜索、地图、社交、商务)普及之前,软件在性质上更类似于工具(文字处理、电子表格、图形编辑)。由于开源代码的免许可性质,软件工具受益于组合创新并迅速发展。 Internet 服务使用软件工具(如数据库)作为其构建块,但也提供工具无法提供的新的高级功能。它们具有工具所不具备的动态、社交和协作性。服务对状态的依赖使其与工具有着根本的不同。服务的软件在实例化时会创建一个用于持久化状态的容器。它从空开始,只有在填充数据、用户或两者时才变得有用。互联网服务的商业模式取决于货币化状态。状态是一种竞争优势,通过保持服务的专有性和封闭性来保护它。服务的进一步组合创新受到限制,因为外部开发人员无法从现有服务及其底层数据的真正可组合性中受益。 DNS 是互联网的电话簿,虽然功能有限,但它是少数成功的早期开放互联网服务的例子之一,它导致了大量下游创新。由于不兼容的激励措施,当今没有开放的互联网服务可以接近占主导地位的封闭服务的复杂性或实用性。这就是加密的用武之地。加密网络依赖于开源代码,但也实例化依赖于开放状态的全局服务。开放状态是密码验证的关键要求,是区块链信任的关键。此外,代币创建了一种新的激励模型,用于维持与其开放性质相一致的加密网络。

组合创新是一种文化的发明过程,通过这种过程,现有的想法以新颖的方式组合以创造新的想法。由此产生的输出被反馈到过程中,以产生更多的新想法,无止境。随着更多的想法被探索,更多的可能性会出现。以花园为例:健康的花园需要生长空间、充足的光线、定期浇水和细心的园丁。稳健的组合创新也存在类似的先决条件:一个健康的环境,可以发展多样化的产品和服务。首先,发明家社区必须通过通信技术(语言、写作)相互联系,这样思想才能广泛有效地流动。共享文化的存在可以让想法受到挑战和提炼(科学方法、同行评审),并使最强大的想法上升到顶端。参与全球思想市场(资本主义)为发明者提供了竞争的动力,推动了创新。但所有这些加在一起就是复杂的系统。复杂的技术自然会导致模块化。专家细分并克服这种复杂性以改进构建块,创造分形竞争。软件是组合创新的终极环境,以前所未有的规模在各个方面都表现出色:互联网是终极连接网络。开源文化不断完善代码模块。拥有互连设备的数十亿用户呈现出前所未有的可寻址市场。在某些方面,软件工具与工业时代的产品没有什么不同。就像制造工具一样,它们执行特定的功能,本身就很有用。

事实上,早期的软件主要生产更好的工业信息和媒体处理工具的数字版本:后来,随着计算机变得更便宜、无处不在并通过互联网相互连接,出现了一种新的类似服务的软件,实现了新的通信、协作模式和互动,颠覆了媒体行业自上而下的生产和发行模式,也为权力和控制带来了新的含义。它是自包含的。运行代码,它会做承诺的事情。没有外部依赖。例如,文字处理软件本身就非常有用,以至于成功的公司都是为了单一目的而建立销售计算机的。它提供单人游戏工具。就像您拥有的锤子一样,您不需要任何东西或任何其他人来使用它。用户是操作者。对用户来说,有一种强烈的所有权感,甚至财产感,以及控制感。这是您的个人工具,而不是您从其他人那里租用的服务。复印件可以互换。如果您忘记带笔记本电脑,您可以借用朋友的笔记本电脑,并在他们的 Photoshop 实例中修饰您的照片。毫不奇怪,类工具软件的最初商业模式是销售许可证。盗版自然会出现,因为这些工具非常有用,但复制和共享代码也很容易且成本低廉。从某种意义上说,盗版是组合创新过程的自然现象,因为知识产权是思想流动的障碍。

开源社区迅速创建了大多数专有软件的公开许可替代品,可以免费重用和修改。由于工具软件的概念与其实用性同义,因此任何人都可以尝试从头开始创建替代的开放版本(即使开源替代品通常不如专有原件)。接下来,随着互联网连接变得司空见惯,网络开始加速发展,软件创新的重点从数字生产力工具转移到计算机之间的编程通信和交互。软件倾向于提供协作、多人、动态和社交的新功能,反过来又为下一代软件、互联网服务生产构建块。要理解演化,重要的是要区分程序的逻辑(代码)和它的记忆能力(状态)。早期的软件本质上是功能性的——输入导致输出。在文字处理器的帮助下,您脑海中的故事被翻译成数字文档。裁剪扫描的照片并使用图像处理软件覆盖文本。记住先前事件或用户交互(状态)的能力是原始和最小的。状态输入也仅来自程序的单个用户。个人计算的定义是这样一种想法,即用户在他们的计算机上运行程序的个人实例。互联网是由一类新的软件定义的,这些软件以在远程服务器上运行的共享服务的概念为中心。一个服务器运营商(或公司)在他们的服务器(或数据中心)上运行一个程序的单个实例,而不是“一台计算机,一个程序”,其中有许多由独立个人运行的相同软件实例。许多人连接到该服务并通过互联网与之交互。

重要的是,服务不是由用户维护自己的状态,而是代表用户维护状态。这具有重要的后果。权力从用户和他们的私人自行车转移到思想上。一股新的整合和控制力量出现了。具有讽刺意味的是,互联网这个分散的通信网络产生了历史上一些最集中的服务。提供公共需求的系统,如交通、通信或公用事业,如电力和水。服务在规模经济(一个工业概念)和有状态网络效应的新概念中蓬勃发展。他们渴望成为全球性和单一性的。它们具有长而连续的使用寿命,并且可以自主运行。就像现实世界中的服务一样,互联网服务的失败对于依赖它的用户来说是灾难性的。用户发现插入现有服务比构建自己的服务更有价值,这使他们自然而然地成为垄断者。服务可以部署在数据中心,使应用程序能够以个人计算机不可行的规模运行。通过资金充足且架构完善的服务,可以爬取整个网络。用户可以与服务交互以解决个人需求,例如,在关键字查询的帮助下找到某个网站。服务通过返回结果列表来满足该需求,但用户操作的副产品是服务改善其全局状态。在搜索的情况下,用户操作会更新系统中所选网站的全球排名,从而改善未来所有其他用户的结果。即使用户出于自私的原因使用该服务,该服务也会变得更智能、对所有用户更有用。

在服务的生命周期中,其代码的效用开始与其状态的效用产生分歧。状态复合并超线性地变得更有价值。代码虽然对于服务的稳定运行和发展至关重要,但变得不那么重要,也没有必要进行防护。大多数服务主要由开源组件构建并不奇怪。任何人都可以尝试复制服务,甚至重新实例化实际的代码库,但是拥有更多用户的现有服务将具有更多有用的状态,并且会更受新用户的欢迎。这创建了一个反馈循环,更多的用户产生更多的状态,从而产生更有用的服务,吸引更多的用户和更多的状态。正如我的合作伙伴 Chris 所写的那样,我们看到了一些公司之间互联网服务的巨大整合。创新公司多年积累的状态产生了非常有用的服务(搜索、地图、社交、商业),但进一步的组合创新对外部开发人员和企业家来说是禁区。以相同的条件从头开始重建服务,并且在游戏后期是无望的。随着加密网络的发展,它们可能会提供强大的动力,以在当今由封闭领域主导的许多领域解锁更多状态并创建开放服务。由加密网络提供支持的开放服务将为新一代开发人员和企业家提供前所未有的创新机会。