diff --git "a/\345\215\260\345\210\267\347\211\210\357\274\210\347\256\200\347\211\210\357\274\211/\347\254\254\345\205\253\347\253\240_\345\274\200\346\272\220\345\225\206\344\270\232\347\216\260\347\212\266.md" "b/\345\215\260\345\210\267\347\211\210\357\274\210\347\256\200\347\211\210\357\274\211/\347\254\254\345\205\253\347\253\240_\345\274\200\346\272\220\345\225\206\344\270\232\347\216\260\347\212\266.md" index df5df14402976db9d69ee8047aad188f04054d74..c743635e29e08ca5c98e6de1747ec91f7d623f20 100644 --- "a/\345\215\260\345\210\267\347\211\210\357\274\210\347\256\200\347\211\210\357\274\211/\347\254\254\345\205\253\347\253\240_\345\274\200\346\272\220\345\225\206\344\270\232\347\216\260\347\212\266.md" +++ "b/\345\215\260\345\210\267\347\211\210\357\274\210\347\256\200\347\211\210\357\274\211/\347\254\254\345\205\253\347\253\240_\345\274\200\346\272\220\345\225\206\344\270\232\347\216\260\347\212\266.md" @@ -12,13 +12,13 @@ 1. 开源商业SaaS模式,即核心代码开源,但商业的SaaS云服务背后的代码闭源,且其中部分功能是开源版所没有的。比较典型的就是我们耳熟能详的Databricks,它开源的Apache Spark是以Apache协议开源的,但是Databricks的云服务是闭源的,且其中的性能和功能要远超过其开源的Spark版本。 -2. Open-Core商业软件模式,即核心代码开源,但部分功能代码是闭源,最终形成了闭源的代码软件进行售卖。比如大家最熟悉的支持开源Apache Hadoop的Cloudera公司所售卖Cloudera Data Platform就是这种软件模式的代表。当然随着云化的发展,这些以软件为初始售卖的商业公司,现在也都提供了自己的云版本。但依然有很多常见开源软件是利用这种模式去售卖的。 +2. Open-Core商业软件模式,即核心代码开源,但部分功能代码是闭源,最终形成了闭源的代码软件进行售卖。比如大家最熟悉的支持开源Apache Hadoop的Cloudera公司所售卖Cloudera Data Platform就是这种软件模式的代表。Open-Core商业软件模式也可以与”开源商业SaaS模式“结合,软件通过SaaS云服务方式提供。当前,依然有很多常见开源软件是利用这种模式去售卖的。 3. Plug-in收费模式,软件本身都是开源的,但它上面的插件是收费的,这些插件可以帮助这个软件更快地在行业当中提高它的使用效率或完成特定的目标功能,部分CAD开源软件公司使用这种商业模式。 4. 素材收费模式,即软件本身是开源的,但它在运行或使用时需要相关的素材,而这些素材是需要购买的。这种商业模式在游戏引擎方面比较常见,因为引擎本身只是一个计算核心,而周边的材质配齐了才能够快速开发相关的游戏,这个商业模式例子是Arx Fatalis、Catacomb 3-D等这样的引擎。 -上面介绍的4类其实都是核心代码开源,但是周边有部分的能力是要收费的模式。 +上面介绍的4类其实都是核心代码开源,但是周边有部分的能力需要收费。 ### 托管和整合 @@ -40,9 +40,9 @@ ### 售卖代码 -第10种是售卖软开源软件的二次分发授权进行收入,例如大家熟悉的macOS是基于BSD Unix Operating System Kernel专属权进行开发的,那么BSD Linux靠此授权来获得收入。 +第10种是通过售卖开源软件的二次分发授权获得收入,例如大家熟悉的macOS是基于BSD Unix Operating System Kernel专属权进行开发的,那么BSD Unix靠此授权来获得收入。 -第11种是售卖同样开源代码软件且提供相关服务来进行收入。例如ardour和radium,他们是售卖一模一样的开源软件的二进制代码以及相关的服务来进行收入,一般这种模式小型软件居多。 +第11种是售卖开源代码软件的二进制代码且提供相关服务来进行收入。例如ardour和radium,他们通过售卖开源软件的二进制代码以及相关的服务来获得收入。使用这种模式一般小型软件居多。 ### 延迟开源 @@ -54,7 +54,7 @@ ### 围绕开源周边服务 -第14种开源商业模式是卖认证。软件本身是开源的,但是它所提供的基于该软件的相关内容或相关服务要收费,因为它是软件和模式的发起者。所以,它可以通过认证的模式来进行收入。经过它认证的体系会更加权威,用户可以更加放心地购买,比如早期的Unix v3 v8的认证,和现在的Moodle模式。 +第14种开源商业模式是卖认证。软件本身是开源的,但是它所提供的基于该软件的相关内容或相关服务要收费。因为它是软件和模式的发起者,可以通过认证的模式来进行收入。经过认证的体系会更加权威,只是生态系统的互操作,用户可以更加放心地购买,比如早期的Unix v3 v8以及JavaEE的认证,和现在的Moodle模式。 第15种开源商业模式是卖培训和周边的参考资料,开源软件本身不一定是由公司建立的,但是可以卖相关培训和出版相关资料进行收入,例如O'Reilly出版公司就是以售卖开源书籍著名的。 @@ -153,8 +153,7 @@ 通过前面的开源商业模式我们可以看出,一些是开源下的直接服务模式,一些看起来还是面向软件的许可模式。那么,这些开源软件的商业模式和闭源软件的商业模式究竟有多大差别呢? 我们就用下表来做个简单的分析: | 序号 | 闭源的业务模式 | 具体内容 | 开源 | 两者收费模式的区别 | -| :--: | :-- | :-- | :--: | :-- | -| 1 | 软件许可制 | 按照软件许可证的授权规定来收费 | 存在 | 闭源为纯商业软件许可证,开源的可以有开放核心或者双许可模式Open Core/Duallicense) | +| :--: | :-- | :-- | :--: | :-- || 1 | 软件许可制 | 按照软件许可证的授权规定来收费 | 存在 | 闭源为纯商业软件许可证,开源的可以有开放核心或者双许可模式Open Core/Duallicense) | | 2 | 项目交付制 | 按照约定的项目需求范围,以闭源或者开源软件为基础提供项目的方案设计和开发服务成果交付。按项目交付成果和项目工作量收费 | 存在 | 若使用开源技术则免去额外许可费,其他无区别 | | 3 | 运维服务制 | 以约定的服务响应的等级水平(SLA)向客户提供维护和支持服务。按服务等级和服务时间收费 | 存在 | 无 | | 4 | 人力外包制 | 以员工的技能等级水平向客户提供人天或人月服务按能力等级和服务时间收费 | 存在 | 无 | @@ -162,7 +161,6 @@ | 6 | 云平台服务制(Iaas/Paas)| 软件以平台的方式来提供,按照在平台上销费的各项能力如硬件或者算力等 | 存在 | 无 | > 注:第5、6项模式现在流行成混合模式,即云SaaS订阅服务模式。 - 综合上表的比较,我们几乎可以得出一个结论:**开源本身并没有创造更多新的业务模式。** 存在差异的部分只是原来可以按照纯商业软件许可来收费的软件,现在开源后,就无法收费了或最多按照部分的许可收费了。所以,开源对于软件业货币化影响的实质是弱化了软件许可的货币化,同时把货币化更多的推向了服务收费。虽然在开源下,有些看起来还是软件许可模式,但它们的软件许可并不是面向开源代码本身,而更多是针对开源代码之外的代码形成的许可,实际上是把开源下服务演变成一类新的软件产品。可以称作是开源服务的一种间接形式。 @@ -170,7 +168,6 @@ 但对于最初从“软件是商品,服务是免费”的理念为起步的中国软件市场及这个市场下的从业者们来说,就以“软件服务收费”这一命题而言,尤其在企业级服务领域,实际上至今还很难被市场充分接受。从网上随便搜索下有关软件采购的企业或者相关部门招投标公告就很容易看到,动辄就要求供应方提供的软件包含少则三年,长则五年的免费维护类才能入围的条件还比比皆是。 更大胆一点说,这就是要把很多还在试图让“软件变成可售卖的标准商品”国内软件创业企业和还在期待服务免费的国内客户们,一下转变到“软件可以免费,但开源服务要收费“的另一条轨道上,无论对于那些年轻而充满激情的中国开源软件从业者们来说,还是对于那些已经习惯于服务免费的企业消费方来说,观念的冲击和实践的挑战无疑都是巨大的。 - 但随着全球商业软件巨头纷纷拥抱开源,开源已是无法避免的趋势。那么,如何寻求一个有效的开源收费模式,也就成为了每个开源创业无法避免的问题。虽然开源本身没有产生更新的商业化模式,但开源支撑了商业模式的产生。当然我们基于开源去辨别一个商业模式的真伪时,我们会发现两个事实早就显而易见地摆在了那里: 1. 开源生态里会允许商业模式的建立和存在发展;而开源生态也需要有商业模式来帮助进一步拓展开源。但,开源里也绝不会只有商业模式的单一存在,一定还有其他非商业因素的成分存在,比如开源作为数字公共品存在的属性,开源作为开发者的爱好追求等; @@ -178,7 +175,6 @@ 2. 企业的商业模式里当然可以考虑将开源作为企业的商业策略之一,并且设计到企业的商业模式中。但,企业的商业模式也绝不是说必须要有开源。开源是企业商业模式设计中的一项可选要素之一。 在2018年,Linux基金会曾经发布过一本《企业开源实践指南》。对于开源可以支撑的商业模式,书中有过明确的论述。开源可以用来支撑四大类型的商业模式构建。即: - 1. 在开源里构建 2. 与开源伴随构建 3. 为开源而构建 @@ -222,7 +218,7 @@ 而从开源消费者的角度来观察的话,他们往往会喜欢以下三种类型的开源: -1. 能够切实解决他们某一方面问题且基本功能完整的软件。 +1. 能够切实解决某一方面问题且基本功能完整的软件。 2. 重要关键业务能够接触供应商锁定的软件。 3. 能够很容易安装并使用起来的软件。 @@ -230,39 +226,38 @@ 另外近年来一些实践还表明,另外两种类型的边界决策: -1. 对于一些关键功能或者技术的实现方法本来就是属于公共知识的而闭源软件实际也不会给企业带来多大竞争优势的是完全可以考虑开源的。 +1. 对于一些关键功能或者技术的实现方法本来就是属于公共知识的,而闭源软件实际也不会给企业带来多大竞争优势的软件,是完全可以考虑开源的。 -2. 能够帮助企业获得市场杠杆效应的软件功能。许多已经成功的开源公司采用的一个关键经验法则是将可以帮助用户快速有效地构建关键技术等以执行日常工作的功能放在开源中。开源的使用方因为对这些日常功能的经常使用后产生额外的需求,就可以帮助开源企业提取附加价值的功能(如安全性、治理和高可用性)会进入商业收费框架内。 +2. 能够帮助企业获得市场杠杆效应的软件功能。许多已经成功的开源公司采用的一个关键经验法则,是将可以帮助用户快速有效地构建关键技术等以执行日常工作的功能放在开源中。开源的使用方因为对这些日常功能的经常使用后产生额外的需求,就可以帮助开源企业提取附加价值的功能(如安全性、治理和高可用性),进入商业收费框架内。 我们以GitLab对于开源边界决策的案例来分析一下。 -GitLab采取的是开放核心(Open Core)模式。但在考虑什么时候货币化开源项目的时候。 GitLab考虑的不是什么时候,而是该考虑哪些功开源。在开源的货币化问题上,关注的是预算控制者所关注的那些能,而不是哪些下载开源的个人所关注的功能。虽然开源的适用性要求更多的是来自个人,他们因为自身的需要来下载这些开源软件解决自己工作或者业务中的问题,但企业中控制预算并能花钱购买的往往是他们的部门主管或者高级管理层。 所以,GitLab就因此设计了一个免费层和两个付费层的货币化模式。第一层是免费的,另外两个收费层则是Premium和ultimate模式,收费层是面向部门主管和总监级的,相比而言,他们会更多关注的是自己的项目是否在有效的控制和管理之内,所以他们不大会关注行业趋势或者能省多少钱,他们更多关注的是稳定性、扩展性和控制性,同时不要让自己的项目和管理陷入到各种麻烦中就是他们很直接的诉求。 而对于公司的高级管理层,他们会关注企业级层面的动态掌握如项目统计分析和仪表盘管理等功能。这样在GitLab的货币化模型中,就把有付费能力的购买者所关注的功能放在付费层里,把没有付费能力的使用者的关注功能放在免费层里。 并把这称作购买者基准的开放核心(Buyer based Open Core)模式。 +GitLab采取的是开放核心(Open Core)模式,但是在考虑什么时候货币化开源项目的时候,GitLab考虑的不是时间,而是功能。在开源的货币化问题上,关注的是预算控制者所关注的功能,而不是下载开源的个人所关注的功能。虽然开源适用性的要求更多来自个人,他们因为自身的需要来下载开源软件,解决自己工作或者业务中的问题,但企业中控制预算并能花钱购买的往往是部门主管或者高级管理层。因此,GitLab设计了一个免费层和两个付费层的货币化模式。第一层是免费的,另外两个收费层则是Premium和ultimate模式,收费层是面向部门主管和总监级的,相比而言,他们会更多关注是否在有效的控制和管理之内,而不是行业趋势或者成本,更多关注稳定性、扩展性和控制性,同时不要让项目和管理陷入到麻烦中。公司的高级管理层会关注企业级层面的动态掌握,如项目统计分析和仪表盘管理等功能。在GitLab的货币化模型中,就把有付费能力的购买者所关注的功能放在付费层里,把没有付费能力的使用者的关注功能放在免费层里,并称之为购买者基准的开放核心(Buyer based Open Core)模式。 -而GitLab一旦把某项功能放在开放核心中免费提供,他们的策略就是让它始终保留在那里, GitLab认为对这个功能在之后做的其他任何不当处理,有可能会被社区当成是诱饵或者陷进而惹恼社区,由此引发社区的溃败。GitLab的CEO Sid Sijbrandij建议就是要从项目初期开始,考虑规划好哪些功能将永远是免费的,哪些功能将是付费级的,并和社区参与者沟通清楚这样的计划。甚至可以对于一些还没开发完成或者还并不存在的设置付费条件和标准而根本无需担心给社区会带去影响。 因为在这里更加重要的关键是要让你的开源公司在哪里划清开源的界限,更在于他们对于既定的开源要始终如一地、保持透明地这样做。 +GitLab一旦把某项功能放在开放核心中免费提供,他们的策略就是让它始终保留在那里。GitLab认为对这个功能做其他任何不当处理,有可能会被社区当成是诱饵或者陷进,而惹恼社区,由此引发社区的溃败。GitLab的CEO Sid Sijbrandij建议就是要从项目初期开始,考虑规划好免费功能和付费功能,并和社区参与者充分沟通。甚至可以对于一些还没开发完成或者还并不存在的功能设置付费条件和标准,从而无需担心给社区会带去影响。此处关键是要划清开源的界限,并始终如一地、保持透明地坚持。 -从GitLab的业务实践总结出了开源软件一定要给用户提供有实际使用价值的功能,而非一些无实际使用价值表面功能。他们认为只有这样才能获得开发人员的喜欢并可以围绕社区团结起来,并有机会创造出一批狂热的用户。所以,千万不要让开源成为客户的诱饵,更不能让用户产生开源是诱饵的感觉。一旦开发人员-最终用户社区围绕开源的使用价值而蓬勃发展,那么开源公司就能安心的对那些可以吸引预算持有者的高级功能进行收费。毕竟,管理者永远不想拿走开发人员喜欢的开源工具,他们更多考虑的是进行一些管理控制在这点上。 +从GitLab的业务实践总结出了开源软件一定要给用户提供有实际使用价值的功能,只有这样才能获得开发人员的认可,团结社区,并有机会创造出一批狂热的用户。所以,千万不要让开源成为客户的诱饵,更不能让用户产生开源是诱饵的感觉。一旦开发人员和用户社区围绕开源的使用价值蓬勃发展,那么开源公司就能安心的对那些可以吸引预算持有者的高级功能进行收费。毕竟,管理者永远不想拿走开发人员喜欢的开源工具,他们更多考虑的是进行一些管理控制在这点上。 GitLab在过去几年付费客户群的不断扩大和收入的快速增长,并于2021年成功登陆纳斯达克受到资本市场热捧。这一事实,也验证了他们的开源边界策略的有效性。 ## 8.4 问题与挑战 -相比全球的开源市场而言,如我们前面所言,国内依然是一个刚起步并很不成熟的开源市场,盲目而冲动下的开源是不可取的。企业在开源边界决策过程中,如果希望建立一个拥抱开源但对于企业是稳妥的策略,那么“安全,保护,营销,共研”的四大原则是可以参考的。即:在确保企业经营安全和保护自己核心竞争优势不受入侵的前提下,使用开源来社会化研发和和使用开源扩大用户基础下的营销策略。如果不能实现以上四点,那么开源也未必是一个好的选择。 +相比全球的开源市场而言,国内依然是一个很不成熟的市场,盲目冲动下的开源是不可取的。企业在开源边界决策过程中,如果希望建立一个拥抱开源的稳妥策略,应当坚持“安全,保护,营销,共研”的四大原则,即在确保企业经营安全和保护核心竞争优势不受入侵的前提下,使用开源来实现社会化研发,同时利用开源扩大用户基础。如果不能实现以上四点,那么开源也未必是一个好的选择。 ### 开源下被忽略的公共属性 -其实,开源软件作为公共资源,除了作前面提到的公开的代码属性之外,实际上还有另外两个隐藏的而可能被我们忽略的更为重要的公共属性: +其实,开源软件作为公共资源,除了公开代码的属性之外,实际上还有另外两个隐藏的而可能被我们忽略的更为重要的公共属性: 1. 公开代码所包含的开放和共享的思想及知识经验 2. 公开代码所提供的公共和平等的创新及竞争机会 -与因特网现象类似,开源同样如莱斯格所说的。它与文化和代码的特性密不可分。它的出现是因为文化和代码特性,而今的那些改变背后的原因也正是因为文化和代码特性。 +与因特网现象类似,开源同样如莱斯格所说与文化和代码的特性密不可分,开源的出现是因为文化和代码特性,改变的背后原因也正是因为文化和代码特性。 **直接原因一:开源文化价值观-反 “公地悲剧”** 对传统公共资源的保护目标一般是为了防止公共资源的过度使用而免于Hardin提及的 “公地悲剧”的发生。但开源,由于代码的零成本可复制性,它实际上是一个反公地模型,即最初的黑客精英们关注的是软件代码自由,倡导的是将软件代码无限扩大使用共享和提供更多公共平等的创新机会。所以,开源文化价值观中对于软件代码作为公共资源的保护实际上不是限制使用,而是在努力防止代码的使用受限制以避免“开源悲剧”的发生。 **直接原因二:代码特性下的开源生产者经济激励问题** - 开源,本质上是在财产私有制下,开源生产者以私有的生产要素来向社会提供具有公共资源属性的软件代码。那么,开源生产者出于自身的经济学模型构建和经济激励问题需要,必然会产生对于代码权利再分配的冲动。 所以,正是基于这两个直接原因导致了今天的开源世界中不地发生着矛盾和冲突,并最终反映在以下几个争议上: @@ -275,44 +270,53 @@ GitLab在过去几年付费客户群的不断扩大和收入的快速增长, ![](https://img-blog.csdnimg.cn/c44fa8ccc0744831b2c6a41586a811a2.png#pic_center) -而这些争端的最终都指向开源软件中被我们忽略的那两个公共属性问题上:即通过利益再平衡,来重新设置公共代码下思想和知识的开放共享程度以及公共和平等创新机会的供给程度,并因此达到各自的经济和政治等方面的诉求。 +而这些争端的最终都指向开源软件中被我们忽略的那两个公共属性问题上:即通过利益再平衡,来重新设置公共代码下思想和知识的开放共享程度,以及公共和平等创新机会的供给程度,并因此达到各自的经济和政治等方面的诉求。 即使在某个阶段这些冲突会通过各类博弈而得到缓解或平衡,但只要外部条件一发生变化,平衡就会随即被打破,利益格局也就将被再次重建。 ### 开源世界的规制体系 +开源作为一种社会形态,它从出生到现在,不过三十年,人类历史长河中的一瞬间而已。开源的进化程度处于初级阶段,所以我们需要理性看待当下发生的各类开源乱象,需要重视,但无需恐惧。开源在冲突中重建秩序和规则,无疑遵循着人类社会活动的一般规律。 + +罗伯特•C•埃里克森(Robert C. Ellickson)在《无需法律的秩序 (相邻者如何解决纠纷)》中对于此类社会活动的逻辑和控制体系有着全面的论述,如他所言,“在这个世界偏僻角落里发生的事情可能是社会中心的问题。”他是通过在加州一个偏僻小县夏斯塔县里牧人们在解决牧区农场中日常争端现象的研究,揭示了一个密切群体中的相邻方中解决问题的方法,人们往往依赖于社会生活中通过长期博弈形成的规范而非法律来解决自己的争端。在此基础上结合博弈论、经济学和社会学,更好的发现了人类社会治理控制体系的框架。 + 数字化时代下的开源,程序员们可能分布世界不同的角落,但通过互联网以GitHub、网络论坛和社交媒体等形式事实上地紧密联系在一起构成了密切群体中相邻方,在开源社区所发生的一切似乎也完印证了埃里克森发现的社会控制体系理论。 -如果按照他的理论框架来解释开源世界的规范和秩序的话,那么当下开源社区实际是由五种控制者构成,即第一方控制者,第二方控制者和三种第三方控制者。 +如果按照Ellickson的理论框架来解释开源世界的规范和秩序的话,那么当下开源社区由五种控制者构成,即第一方控制者,第二方控制者和三种第三方控制者。 -- 开源的贡献方对自我实施规则和管理,这是在行使第一方控制 -- 开源项目的拥有方对使用方强制执行的开源许可或者对贡献者执行的贡献者协议,这是在行使第二方控制 +- 开源的贡献方对自我实施规则和管理,这是在行使第一方控制; +- 开源项目的拥有方对使用方强制执行的开源许可或者对贡献者执行的贡献者协议,这是在行使第二方控制; - 而开源社区的第三方控制者则可以是一般社区力量,或者是非政府性质的社会组织(如开源基金会或者协会),当然也可以是国家或者政府。 由社区第一方控制者发布执行的规则为伦理,由第二方控制者发布执行的叫合约或许可,由第三方控制者社区力量发布执行的叫规范,由社会组织发布的称为组织规则,由政府发布的就叫法律。 -同时,这五类控制者在开源社区提供了各自的行为准则,并实施了具体的管理行为,可以分别称为:自我管理,个人自助,替代自助,组织执行以及政府执法。这样开源项目的贡献方,开源项目的拥有方,开源社区力量,基金会或者OSI等行业非政府组织以及政府最终相互结合起来,形成了对于整个开源世界的运作和治理控制体系及至关重要的奖惩执行。而这个控制体系可以用下面的简表予以示意说明: +同时,这五类控制者在开源社区提供了各自的行为准则,并实施了具体的管理行为,可以分别称为:自我管理、个人自助、替代自助、组织执行以及政府执法。开源项目的贡献方、开源项目的拥有方、开源社区力量、基金会或者OSI等行业非政府组织以及政府最终相互结合起来,形成了对于整个开源世界的运作和治理控制体系及至关重要的奖惩执行。而这个控制体系可以用下面的简表予以示意说明: ![](https://img-blog.csdnimg.cn/c300efd0816f4c2a84a73d9414af01c1.png#pic_center) -证明开源许可协议的存在,只要发布就行。但要证明开源社区规范的存在,其实并不仅仅是发布就行,而只有在对于违反社区规范的人予以恒常处罚才能证明社区规范的存在。所以,如果社区中有一方违反了规范,却完全由没有对于这种违反的强制行动,那就证明了规范的无效。对于基金会组织规则的有效性亦是同理类推。 +证明开源许可协议的存在,只要发布就行;但要证明开源社区规范的存在,其实并不仅仅是发布就行,而只有在对于违反社区规范的人予以基于规则的处罚才能证明社区规范的存在。所以,如果社区中有一方违反了规范,却完全由没有对于这种违反的强制行动,那就证明了规范的无效。对于基金会组织规则的有效性亦是同理类推。 ### 开源是人类的一次社会活动实践 -开源的未来不一定是由谁的批评声音最大,或者谁获得了最大经济激励来决定的。开源的未来也不是由通过哪一种类型的开源存在而证明的,更会以那些与现实最终不相容的事物永久的消亡而来证明的。 +在了解到Ellickson对于人类社会的控制体系的思想应用于开源的各类社会实践之后,我们完全可以对本文开始描述的各类现象产生以及走向足够理解和释然。 + +比如说对于Marak删库行为就可以这样理解:开源贡献者作为第一方控制者在个人伦理上的自我约束失败,使得第三方控制者开源社区力量以社区谴责的非正式控制进行了一次替代自助执行。又比如说Elasticsearch修改协议的行为可以这样来解释:Elasticsearch开源项目拥有方修改了开源许可而违反了OSI组织规则结果导致第三方控制者 OSI 采取了组织执法宣布对其开源许可协议的不予认可。以此,我们似乎也完全有理由可以预言说,在开源世界里正在发生的事情,可能就是人类历史中一类社会活动的再一次重现。 + +关于开源社区参与方在这些规则体系的相互作用下产生的冲突和博弈,以及在这些情况下的最终结果指向,我们未必了解。但是,我们基于Ellickson的原则所采取的行动就可以成为影响未来的一部分。如果结果可以预测的话,那么有一个预测是可能的: + +开源的未来不一定是由谁的批评声音最大,或者谁获得了最大经济激励来决定的;开源的未来也不是由通过哪一种类型的开源存在而证明的,更会以那些与现实最终不相容的事物永久的消亡而来证明的。 更进一步而言,开源规制的设计原则,从根本上说是为了解决两个问题: 1. 如何将开源这个社会公共资源价值最大化 -鉴于开源代码的零成本复制属性,我们已经无需顾虑代码的过度使用,“如何最大限度地扩大使用” 才是让我们设计开源规制的原则。由斯托曼倡议的GPL协议无疑做到了有利于代码最大程度上的开放和最低损耗系数下的传递。 +鉴于开源代码的零成本复制属性,我们已经无需顾虑代码的过度使用,“如何最大限度地扩大使用” 才是让设计开源规制的原则。由斯托曼倡议的GPL协议无疑做到了有利于代码最大程度上的开放和最低损耗系数下的传递。 2. 如何以最佳方式激励开源的生产者持续贡献 这就是开源的生产激励问题。开源促进会(OSI)定义的十条标准对于保持开源纯粹性的确有利,但另一方面却对开源生产者持续贡献的激励性显然不足够。所以这也就导致了如 MongoDB、Elastic 社区宁愿弃OSI标准而不顾,转而制定自己的社区开源协议来重置开源权力的根本性原因。 就开源的演化进程而言,我们现在正经历着的的事实,已经足以证明了埃里克森的社会控制体系理论的描述,因为开源也的确经过了这几个阶段: - 第一阶段:技术精英和理想主义者在意识觉醒下的道德追求和伦理; 第二阶段:开源的贡献方和使用方在契约精神下的合同责任履行; @@ -323,16 +327,15 @@ GitLab在过去几年付费客户群的不断扩大和收入的快速增长, 第四阶段:政府或者国家对开源的法律的强制力。 -当然,我们无法无法清晰预见到开源的将来。但无论是按照埃里克森的社会控制体系理论,还是以开源的公共资源品的社会共享性特征,如同互联网规制主义的支持者 劳伦斯•莱斯格(Lawrence Lessig)在他的《代码2.0-网络空间中的法律》里所论述并相信的对于互联网的政府规制是必要的那样,对于开源必要的政府规制自然也将是不可避免地。而关于这一点,即使现在没有发生,将来的某一天也是会发生的。 +无论是按照Ellickson的社会控制体系理论,还是以开源的公共资源品的社会共享性特征,如同互联网规制主义的支持者劳伦斯•莱斯格(Lawrence Lessig)在他的《代码2.0-网络空间中的法律》里所论述并相信的对于互联网的政府规制是必要的那样,对于开源必要的政府规制自然也将是不可避免地。而关于这一点,即使现在没有发生,将来的某一天也是会发生的。 Lessig 在《思想的未来》一书中还曾引用了美国首任专利局长托马斯•杰斐逊(Thomas Jefferson) 在1813年谈到专利权的特点时说过的一句话: > 他从我这里得到一个构想,我自己的并不因此减少,正如他从我这里对火,点燃了他的蜡烛,照亮他自己的同时也不会使我陷入黑暗一样。 -他叙述的“构想”是一种非竞争性的资源,托马斯其实也不是在反对专利保护,他只是在驳斥专利保护是一种自然的观点。同样,开源代码因为代码资源的非竞争性,那么控制体系所需要的唯一任务是确保资源的再生产,这是一个供应的问题。在那儿既然自然不保护,那么设计一种可能的控制方式来保证人们有足够的动力来生产和提供这些资源是必要的。 - -事实上,类似这种规制在扩大开源使用和促进开源供应方面,是有利于开源更好发展的。当然,这最后的影响取决于政策制定者们的远见和智慧。如 Ellickson 在他的书中所描述的,不管怎样地规制,也不一定是规制越多,就越有秩序。它的原则不是越多越好,而是只有真正符合社会和人们实际需求的规制才是最终胜出的理由。 +他叙述的“构想”是一种非竞争性的资源,托马斯其实也不是在反对专利保护,他只是在驳斥专利保护是一种自然的观点。同样,开源代码因为代码资源的非竞争性,那么控制体系所需要的唯一任务是确保资源的再生产,这是一个供应的问题。既然不保护,那么设计一种可能的控制方式来保证人们有足够的动力来生产和提供这些资源是必要的。 ## 8.5 总结 +事实上,类似这种规制在扩大开源使用和促进开源供应方面,是有利于开源更好发展的。当然,这最后的影响取决于政策制定者们的远见和智慧。如 Ellickson 在他的书中所描述的,不管怎样地规制,也不一定是规制越多就越有秩序,而是只有真正符合社会和人们实际需求的规制才是最终胜出的理由。 -中国的开源先驱陆首群教授在其发布的《开源创新:数字化转型与智能化重构》一书中记录了一段Apache创始人Brian Behlendorf在2007年第二届“开源中国,开源世界”高峰论坛上所作的《你可能不知道的关于开源的八件事》的报告摘要,在其报告摘要中的第六点提到了Brian对于开源和商业的观点,他是这样认为的:开源需要利他主义和获利主义结合在一起,才能使人们更好地为开源做贡献。陆老对于Brian观点是这样解读的,“没有商业模式的开源社区的前期开发和具有商业模式的开源软件发布商的后续开发结合在一起,才有可能为开源做贡献。”从这些记录中可以看出,无论Apache的创始人,还是中国的开源先驱,他们有一个共同的共识,陆老在书中是如此来表述的:开源是利他主义(Altruism)或者说是共产主义(communism),专有软件或私有软件是利己主义(Egoism)或者说是资本主义(Captialism),而开源的商业模式也是利己主义的。但利他主义的开源与利己主义的商业模式结合在一起才能为开源做贡献。开源既包含共产主义因素也包含资本主义因素,既是商业的又是公益的或个人爱好的,而且还是学术的。 +中国的开源先驱陆首群教授在其发布的《开源创新:数字化转型与智能化重构》一书中记录了一段Apache创始人Brian Behlendorf在2007年第二届“开源中国,开源世界”高峰论坛上所作的《你可能不知道的关于开源的八件事》的报告摘要,在其报告摘要中的第六点提到了Brian对于开源和商业的观点,他是这样认为的:开源需要利他主义和获利主义结合在一起,才能使人们更好地为开源做贡献。陆老对于Brian观点是这样解读的,“没有商业模式的开源社区的前期开发和具有商业模式的开源软件发布商的后续开发结合在一起,才有可能为开源做贡献。”从这些记录中可以看出,无论Apache的创始人,还是中国的开源先驱,他们有一个共同的共识,陆老在书中是如此来表述的:开源是利他主义(Altruism)或者说是共产主义(communism),专有软件或私有软件是利己主义(Egoism)或者说是资本主义(Captialism),而开源的商业模式也是利己主义的。但利他主义的开源与利己主义的商业模式结合在一起才能为开源做贡献。开源既包含共产主义因素也包含资本主义因素,既是商业的又是公益的或个人爱好的,而且还是学术的。 \ No newline at end of file