FOSS品牌塑造二三事
2009-06-19 14:39:10 Administrator

FOSS(Free and Open Source Software)。

在过去曾多次被问到这个问题,现在是时候解释一下什么是 Linux 和 软件世界的 FOSS 了。这个区别很重要,因为 FOSS 是一个通用的世界,它可以根据上下文的不同而有不同的含义。在这里讨论的是软件中的 FOSS 原则。

什么是 FOSS

FOSS 的意思是自由和开源软件。它并不意味着软件是免费的,而是意味着软件的源代码是对所有人开放的,任何人都可以自由使用、研究和修改代码。这个原则允许其他人像社区一样为软件的开发和改进做出贡献。

FOSS 的起源

在60、70年代,计算机以硬件为主,而且硬件价格昂贵。它们主要由大学的学者或实验室的研究人员使用。以前免费使用,或者是带有他们源代码的软件十分有限,用户可以根据自己的需要修改源代码。在 70 年代末和 80 年代初,制造商为了不让自己的软件在竞争对手的计算机上运行,陆续停止分发源代码。这种限制性的许可为那些习惯和喜欢修改软件的人带来了不便,并引起了反感。在 80 年代中期,Richard Stallman 发起了自由软件运动。

Stallman 规定了软件成为自由软件和开源软件的四个基本条件。把它们重新表述一下,以便于理解:
任何用户都应能为任何用途而运行软件;
用户应可自由查看软件的源代码,如有需要,应允许用户修改代码;
用户应能自由地将软件的副本分发给他人;
如果用户修改了代码,她/他应该可以自由地将修改后的代码分发给其他人。修改后的代码也必须开放源代码。

自由和开源软件中的 Free 并不意味着免费

读到这里,你可能已经注意到了,自由和开源软件中的"free"并不意味着它是免费的,它意味着运行、修改和分发软件的自由。人们经常错误地认为,FOSS 或开源软件不能明码标价,这是不正确的。大多数自由和开源软件都是免费提供的,原因有很多:
源代码已经向公众开放,所以一些开发者认为没有必要在下载时贴上价格标签;
有些项目是由一些志愿者免费提供的。所以,主要的开发者认为对这么多人免费贡献的东西收费是不道德的;
有些项目是由大型企业或非营利组织支持或开发的,这些组织雇用开发人员为他们的开源项目工作;
有些开发者创建开源项目是出于兴趣,或者出于他们对用代码为世界做贡献的热情。对他们来说,下载量、贡献和对他们的感谢比金钱更重要。

为了避免强调"free",有些人使用了 FLOSS 这个词。FLOSS 是 Free and Libre Open Source Software 的缩写。liber 意为自由与 gartuit/gratis 代表的免费不同。

Free 如言论自由,而不是免费啤酒的免费。

FOSS 项目如何赚钱

很多人会认为开源项目不赚钱。红帽是第一家达到 10 亿美元市值大关的开源公司,IBM 最后以 340 亿美元收购了红帽,而这样的例子还有很多。

许多开源项目,特别是企业领域的项目,都会以收费的形式提供技术支持和面向企业的功能。这是红帽、SUSE Linux 和更多此类项目的主要商业模式。一些开源项目,如 Discourse、WordPress 等,则提供其软件的托管实例,并收取一定的费用。

许多开源项目,特别是桌面应用程序,也依靠捐赠。VLC、GIMP、Inkscape 等这类开源软件就属于这一类。有一些方法可以资助开源项目,但通常你会在项目网站上找到捐赠链接。用开源软件赚钱可能很难,但也不是完全不可能。

我不是程序员,为什么要关心一个软件是否是开源的

这是个合理的问题。你不是软件开发者,只是一个普通的电脑用户。即使有软件的源代码,你也不会明白程序的工作原理。你不明白也没有关系,但仍然有很多拥有相关技能的人会明白,这才是最重要的。你可以换个角度思考问题,也许你不会理解一份复杂的法律文件。但如果你有查看文件的自由,并保留一份副本,你就可以咨询某个人,他可以检查文件中的法律陷阱。换句话说,开源软件具有透明度。

FOSS 和开源的区别是什么

你会经常遇到 FOSS 和开源这两个术语。它们经常被互换使用。它们是一回事吗?这很难用"是"和 "否"来回答。

你看,FOSS中的"free"一词让很多人感到困惑,因为人们错误地认为它是免费的意思。企业高管、高层和决策者往往会关注自由和开源中的"free"。由于他们是商业人士,专注于为他们的公司赚钱,免费的这层含义让他们在采用 FOSS 原则时起到了威慑作用。这就是为什么在 90 年代中期,一个名为 Open Source Initiative 的新组织被创建。他们从 Free and Open Source Software 中删除了 free,并创建了他们自己的开源定义,以及他们自己的一套许可证。

开放源码一词在软件行业特别受欢迎。高管们对开放源码更加适应。开源软件的采用迅速增长,我相信去掉 "free" 一词确实起到了作用。


FOSS品牌塑造需要克服的七点错误

一般来说,自由和开源软件(FOSS)社区的成员都不喜欢讨论任何关于营销的话题。然而最近很多博客文章开始讨论这样一个话题:FOSS如何从整体上对外展示自己?这些文章有一个共识,FOSS还没有建立一个统一的品牌标识,否则她将比现在更成功。和其他人一样,我也对营销相关的话题不热衷,因为在从事开源事业之前我曾有几年时间进行营销方面的工作,了解其中许多只有局内人才了解的内幕。但是欢迎进行这个令人不快却日益必需的探讨。在开源社区内部,FOSS的品牌已经建立。但是对于开源社区之外的人来说,FOSS的品牌标识还非常模糊,造成这种局面的原因至少有如下七个,如果开源社区希望突破目前的规模寻求更大发展,必须要首先解决这些问题。

1、任由敌对者建立FOSS品牌

目前FOSS品牌所面临的麻烦,不是由社区成员自己所树立的。在很大程度上,它是由那些FOSS反对者从自身利益出发所建立的。

部分问题是像微软这样的公司多年来宣传所造成的,诸如FOSS难用且质量差的说法。这种宣传通常是错误的,或者最多是部分正确的,但是由于缺乏任何有力的公开反击,这种观点已经被多数人所接受。这些说法也把FOSS社区置于疲于辩解的状态中,精力被转移,未能制定反击观点来应对完全负面的指责或竞争对手的嫉妒。

然而这种宣传还不是最坏的问题。尽管这些宣传被开源界十分关注,普通计算机用户却可能从未听说过这些东西。相反,更大的问题是,FOSS对手在很大程度上已经设法完全避免了该问题的探讨。在很多普通用户心中,Windows已经成了操作系统的代名词,而像GNU/Linux之类的替代操作系统是他们所根本不能考虑的。同样,当苹果推出了其著名的“我是一个苹果机”广告时,FOSS操作系统却不见踪影。

自由软件基金会欧洲主席乔治·格里夫(Georg Greve)正确的将这些问题看作框定(framing)的一个案例:单方设定争论的条件和语境框架。就如同一个负面选举广告,设计将对手陷入一场争论,而这场争论中所有条款都是针对对手所设计的,因此FOSS的形象让其支持者一直处于防御状态,而不能展示它们自己的任何选择。

2、创建小品牌

正如KDE最高领导人Aaron Seigo所指出的,在FOSS身上没有发生的品牌塑造却通常发生在某个项目或某个企业上。他指出这种现象的原因是项目成员对其成就的自豪,以及让企业客户关注他的公司而非社区的愿望。这些小品牌中有些已经取得了巨大成功,诸如火狐,其余则与成功还相差甚远。

关键所在是,这些小品牌并不突出强调它们与更伟大的FOSS整体的联系。举例来说,当Ubuntu或Fedora等Linux发行版在GNOME桌面上增加了一个独特的主题或壁纸时,它是在发展自己的品牌,而不是GNOME。大量的工作被投入到这些小品牌的塑造上,但是它们都太小,无法或很难靠自己树立一个成功的品牌。

或者如Seigo所指出的,“由于所有品牌都没有被标识为‘属于同一件事情’,这很难让人们注意到我们在Linux桌面中所做的工作。结果是,我们最终拥有很多小品牌,但是,除了服务器机房或核心FOSS社区的人之外,很少有人知道它们。”

作为解决此问题迈出的一小步,Seigo建议通过KDE和其他项目进行合力宣传工作。这种努力能否引起关注现在还不确定,但是关键问题是,如同代码被共享后所有人都会受益一样,建立FOSS的更大品牌也将让开源社区的所有人从中受益。相比之下,继续发展小品牌则意味着高投入低回报。

3、分心于细微差别

自从个人计算机诞生以来,用户就支持他们喜欢的软件。但是FOSS用户通常是他们所喜爱软件的贡献者,往往与软件具有更大的利害关系。因此,FOSS用户通常比专有软件用户对软件更加狂热。由此带来的结果是无休止的网络口水战,举例来说,vi与emacs,GNOME与KDE,或自由软件与开源,类似的争论从来没有停止过。

这些争论的对象的确有实际不同之处,而且这些差异也值得讨论。但是问题是,过于关注这些不同之处,你可能会忘了它们的共同点要远远大于不同点。举例来说,尽管GNOME和KDE提供了非常不同的用户体验,但它们都是FOSS,是Windows或MAC OS X的替代者。

有时候,这个明显的事实会被注意到,于是就有了freedesktop.org这样的产品,试图在代码层次上创建不同FOSS产品间的协作。但是多数情况下,这种努力在过一段时间后就消失了,争吵再次开始,让品牌塑造的联合努力或任何其它事情成为不可能发生的空想。

一个很能说明此点的例子是,当Seigo的提议被链接到LWN网站上时,很快被“KDE 3.5和4.0之间的相对优点”这个老掉牙的讨论所覆盖,这个话题与联合品牌塑造的努力相比,显然既不相干又微不足道。

4、过于关注功能而忽视其带来的好处
在营销课上你学到的第一件事情是你应该关注产品所带来的好处,而非产品的功能。举例来说,不要告诉客户你的品牌牛奶富含维他命,你只需告诉客户你的产品有益于他们的身体健康;不要详细陈述你的汽车发动机如何进行重新设计,你只需要解释清楚现在汽车如何省油。

一般来说,潜在客户不会对技术功能多么感兴趣,他只想知道你的产品能给他带来什么好处。自由软件基金会执行总裁Peter Brown表示,开源社区往往也犯类似的错误,总是讨论自由软件代码,却不说用户从中获得的价值。他以废物回收为例进行了解释,要想引起公众关注,你不能仅仅谈论熔炉的工作原理和如何融化废旧塑料,你只需指出此举可以帮助避免环境污染。

Brown建议称,在与普通老百姓交流时,FOSS需要使用简单战略。谈论代码仅会吸引开发者。在与其它人交流时,FOSS支持者需要讨论用户对自己计算机的控制权,或产品选择权,以及FOSS能够延长其硬件生命的好处。这些信息都非常易懂,而且更加与普通人息息相关,然而多数时间却被忽略。多数计算机用户本身不是开发者,因此也看不到访问源代码能给自己带来什么好处,因此他们不会被你所说的这些功能打动。

5、没有划清自由和免费之间的界线

到今天为止,FOSS一直未能区别“自由”与“免费”的区别。说明这种区别时用的最多的话是“自由啤酒而非免费啤酒(free as in speech, not as in beer)”,对于业内人士来讲这是一句浅显而有趣的广告语,但对于其它人却难以理解其含义。然而,分清两者的区别是非常重要的。不仅仅是因为“免费”远离FOSS的精髓,它还可以指那些能够下载使用的任何其它软件,诸如Adobe的Flash播放器,在这一点上它与FOSS同样优秀。另外,它还给FOSS带来了“免费等同于劣质”的指责。但是,尽管区分两个含义如此重要,却没有人真正努力的去正确表达它。

6、任由FOSS被看作企业战略之一

在自由软件社区内部,FOSS不仅仅是一个授权。它是一种世界观,是一种运作项目的协作方法,是一种描述用户与硬件和行业之间适当关系的声明。它是社会活动家希望迎来真正社会变革的世界观。所有这些都是塑造FOSS品牌的重要元素,然而却很少被人们提及。至今为止所存在的FOSS品牌,仅仅是众多可能企业战略中的一种。

从短期来说,这种方式已经帮助FOSS更广为接受。但是从长期来看,它可能是一种打击自我的做法。如果FOSS品牌完全建立在实用主义的基础上,那些现在采用它的企业迟早会因为发现一个能带来更大回报的战略而放弃它。我建议FOSS应该作为一个整体来考虑更大利益,而不能仅仅盯住作为一个企业战略所带来的短期优势。至少,FOSS应该把自己打造成变革企业的一种方式,而不仅仅是一个可以被轻易放弃的战略。

7、忘记了最基本的宣传

在品牌塑造过程中所有的困惑和错误行为淡化了这样一个事实:FOSS实际可能是一个营销家们梦寐以求拥有的品牌。在核心精神上,FOSS是让计算机更容易使用,确保用户(而非软件或硬件厂商)控制自己的硬件设备。

这是跨越政治界线的一个宣言,更符合我们关于用户支持的观点。它始终如一强调的是简单和强大,这也是FOSS吸引成千上万人投入一生来发展它的原因。然而我们现在却很少能够听到它。取代这种富含生命力品牌的是,FOSS获得了一个模糊而令人困惑的品牌,或者说根本没有自己的品牌。

结束语

我不会假装自己知道如何克服这些错误。它们不是一夜之间形成的,由于反对者的存在和长期习惯的阻力,使得它们很难被克服。只能说要想克服它们,或克服我没有提及的任何错误,需要清醒的思考、顽强的意志和大量的交流。

随着FOSS的成长,它的社区需要克服对营销的厌恶,采取措施来建立和捍卫自己的形象。尽管营销往往与误导是同义词,我们依然需要借助于它。而且,当FOSS已经向世界提供了如此众多优秀的技术和产品时,在进行品牌塑造时还需要不诚实吗?只要我们实事求是,更好的展示自己并不是误导用户。何况如果FOSS社区自己不树立品牌形象,就会让其它人操纵和树立自己的负面形象。

1.软件供应链是一个严肃的事情,但也是一个出了事/发现损失才会被严肃对待的事情;
2.FOSS 是一项伟大的事业,本身的开放带来技术传播的同时,丰富、优质的库以近乎零成本提供给下游应用开发者;
3.然而,长期对 FOSS 社区的无偿要求,只会恶化这个社区,并增加此类安全问题的概率 -- 进而让下游开发者的成本变得更高;
4.需要有持续的正向资金支持 FOSS;保证并促使更多 FOSS 的开发者体面地且专注投入到 FOSS 软件的开发和维护;
5.FOSS 是这个时代的奇迹,也是这个时代的幸运;需要大家好好守护。

免费与开源软件

原文:A Brief History of Open Source Software
作者:Andy Updegrove,编译:御坂弟弟

(一):开源软件简史


今天,每个人都在使用开源软件,数百万人在为其贡献代码。事实上,今天开源软件的用户和创造者中,大部分的人还很年轻,他们从未见过一个不依赖开源软件的世界。换句话说,人们很容易把这种开放协作的卓越产品视为理所当然。

但这是一个错误认知,尤其是考虑到这种独特的现象能够扎根繁荣是多么难能可贵。因此,本文将通过回顾远程开发者如何开始合作创建开源软件、使其分发成为可能的法律工具如何演变而来以及世界如何接受它,来讲述这一切是如何发生的。

在信息技术的早期,计算机在交付时已经安装了操作系统和基本的应用软件,并且提供可编辑的源代码而不需要额外费用。但是,随着软件作为一种独立的产品出现,独立软件供应商不再提供源代码以利用这一商机,并防止竞争者获取其商业秘密。这种做法产生了预期中的结果,即计算机用户开始依赖独立软件供应商提供支持和升级。

由于计算机用户在应用软件上的投资越来越大,他们也被"锁定"在硬件上,因为放弃或重新配置他们现有的应用软件去在新供应商的专有操作系统上运行的成本很高。其结果是,1980 年代中期出现了一场运动,支持分发人类可读的源代码和修改、分享以及分发该代码与通常的、机器可读的程序代码的合法权利。这种 "自由软件" 的早期支持者认为共享源代码的权利是一种基本的自由,并创建了许可证 —— 特别是 GNU 通用公共许可证 —— 要求厂商将自己的创新成果回馈给项目社区。支持这种观点的人通常被看作 "自由软件运动 "的一部分。后来的一个派别只关注可自由共享代码的实际优势,他们称之为 "开源软件",导致该群体的行为被称为 "开源运动"。

同时,互联网使一种高度分散的软件开发模式成为可能,这种模式以自愿贡献代码和全球协作为基础。这些发展的合力导致了数百万个自由软件和开源软件开发项目的迅速扩散,创造了许多 "最佳 "的操作系统和应用软件产品。今天,几乎所有的专有软件都包含了开源软件,而且越来越多的关键软件平台和程序是完全开源的。

虽然 "自由软件" 和 "开源软件" 这样的术语听起来很普通,但如果正确理解的话,它们意味着政治哲学、革命热情、技术发展方法、传统以及激进的法律理论和冷硬的商业实用主义等元素。毋庸置疑,如此丰富的属性对于任何有兴趣快速了解这种现象到底是怎么回事的人来说,可能都是一个挑战。

花时间去更好地了解 FOSS(Free and open source software,自由和开源软件)的原因有很多。从社会政治的角度来看,FOSS 运动是一个更广泛的社会政治倡议的一部分,部分原因是互联网能够在全球范围内实现信息共享和人们的积极合作。就自由软件运动而言,该运动对许多传统的版权和专利法律限制的实用性和公平性提出了质疑,并寻求为所有人的利益解放软件。开源软件的支持者主要希望允许开源软件不受传统的专利限制而自由使用,与之不同的是,自由软件的倡导者则支持一套道德规则,其目的不仅是为了促进自由使用,而且是为了激励 —— 在某些情况下还要求 —— 那些从这种使用中受益的人也将自己的修改和补充贡献给开发者社区。

从经济角度看,开源软件开发模式以多种方式重新梳理了软件开发的商业现实。

对于软件供应商或用户来说,通过参与一个有许多其他开发者参与的开发项目,可以从根本上降低开发某个软件的单位业务成本。

对于最终用户来说,获得开源软件产品的源代码可以使其独立于专有供应商,因为最终用户可以修改代码,或将开发工作进行竞标。对于商业中间商来说,可以努力在免费提供的核心代码基础上开发增值服务,并由开发者社区维护。对于决策者来说,开源软件为国内供应商提供了公平竞争的机会,同时降低了采购公共信息技术系统的成本。从市场的角度来看,开源软件模式是一种颠覆性的力量,它为现有的和新的企业提供了机会,使它们能够撼动那些依靠专有开发和销售模式取得优势的根深蒂固的市场参与者的主导地位。

今天,FOSS 已经变得如此普遍,一个有效的 IT 采购和管理必须对 FOSS 的内容有一定了解。此外,开发和使用 FOSS 产品的积极参与者还需要知道 FOSS 在未来会如何发展,以及对于任何参与 FOSS 开发、使用 FOSS 产品或在自己的产品中嵌入 FOSS 代码进行转售的人相关的 FOSS 法律问题。

本文接下来将概述 FOSS 的历史及其拥护者、区别于其他开源软件的主要哲学差异、FOSS 提供的多种许可证以及支持和促进 FOSS 的主要非营利机构。

开源软件的基础知识

当有人说到自由或开源软件时,到底是什么意思?

答案可能非常复杂。根据不同的语境,它可能意味着广泛而不同的信息,包括法律权利和义务、社会运动的隶属关系和开发模式等不同的主题。换句话说,"开源",特别是 "自由软件",可能同时意味着许多东西。

在最基本的层面上,开源软件一词有时被用来指代(尽管是不正确的)向用户提供机器可读(程序)和人类可读(源代码)的软件。有时,这就是使用该词的人的全部意图,例如,当一个开发者创建了一段代码,然后将其发布到互联网上的一个公共站点上,对其再利用的限制很少,甚至没有。

然而,一个被广泛使用的开源软件很可能具有区别于专有软件的额外属性。最有可能的是,它是在一个公共网站上开发和维护的,这个网站允许任何有兴趣的程序员注册并提供帮助,不管是通过指出错误并提出修复方法,还是通过积极参与额外代码的开发,或者通过帮助记录促进他人正在进行的工作。

有关项目可能是由一个人发起的,也可能是由一群人发起的,也可能是当一个专有厂商向其开发的产品发布对象和源代码时,认为这样做会获得更大的利益(例如,由于非员工贡献的劳动,可以以较低的成本继续访问相同的代码,或者向免费下载程序的用户出售支持服务)而发起的。

通常,多个项目会合作创建软件"堆栈",共同提供一项基本服务。当他们这样做时,每个项目都会创建一个单一层级,同时实时协调,以确保每个层级在技术上可以互操作,并与其他层级紧密集成。

在 FOSS 变得无处不在之前,大多数计算机用户的整个生活都是在锁定的 "Win-Tel" 平台世界中度过的,而这个平台是微软操作系统与英特尔处理器结合后产生的。在应用软件领域,大多数同样的用户仍然生活在(当涉及到办公生产力工具时)微软 Office 这个方便但又受限的世界里。由于几乎所有人都在继续使用 Office,所以文本文档和电子表格得以在其他 Office 用户之间轻松交换。但用户也因此受制于人,一旦进入 Office 的世界,就很难离开。

从法律上讲,开源软件这个术语至少意味着任何人都可以自由下载代码,只要他们不试图以代码中的缺陷或侵犯任何第三方的权利而起诉开发者,并承认其代码中原始代码作者的版权。通常与自由软件运动相关的 "copyleft" 软件许可证(下文将详细介绍)有额外的、更严格的条款。任何修改版权许可的代码并销售修改后的版本的人,都必须在同样的版权许可条款下向所有人提供他们的修改,这是一个伦理和道德问题,也是对法律义务的回应。

开源软件不是对任何开发者权利的侵犯,不是对专有代码的退而求其次,也不是对企业的安全风险。它当然也不是一时流行。某种意义上说,开源软件是永恒的。虽然自由软件对客户的价值听起来很明显,但除了不需要支付许可费之外,还有其他好处。简单而言,如下所列:

对客户而言:在传统的消费者软件许可模式下,个人购买专有软件通常只需支付一次性费用,然后就可以自行使用,而商业客户则有可能在额外的服务上进行更多的投资,例如为其员工购买培训,以学习如何使用新软件,以及持续的 "支持" 服务(即:确保有人在终端提供支持,确保在复杂的企业系统上安装、集成或操作软件时遇到问题时,电话那头有人接听),以及 "维护" 权,以确保他们在软件安装后能获得更新(如错误修复和改进)。他们可能还需要支付硬件升级费用,以便能够运行新的软件,并支付顾问和其他服务提供商的费用来规划和完成升级。

所有这些费用的总和就是一个特定软件包的 "总拥有成本",而这些额外成本的总和可能是巨大的。同样,虽然一些自由和开放源码软件可能是免费的(例如,OpenOffice 和 LibreOffice 生产力套件),但客户可能会决定购买专有替代产品。

虽然 FOSS 产品的总拥有成本通常会更低,但使用 FOSS 而不是专有产品也还有其他优势,包括:

获取代码。当客户安装专有软件时,代码的改进和性能完全依赖于厂商,因为客户既没有技术手段(访问源代码),也没有权利(法律许可)改变代码。如果客户需要新的或不同的功能,或者在切换或升级其他系统时需要更新以保持兼容性,厂商可能愿意也可能不愿意定制程序(要么完全不愿意,要么以客户愿意支付的价格来判断)。如果厂商停止对产品的支持,或者倒闭,客户就会陷入困境。相比之下,使用 FOSS 替代产品的客户有能力也有法律权利随时修改代码。它还可以雇佣任何它想雇佣的人帮助它修改或维护程序。如果创建代码的项目处于休眠状态,客户可能会感到失望,但不会被搁浅。

免于被锁定。虽然开放标准越来越多地保护客户免于 "锁定"(即对单一供应商的依赖,以及如果他们想更换供应商,必须要付出巨大的转换成本),但从一种产品更换到另一种产品仍然是困难和昂贵的。以基于 Linux 的系统为例,这种开源操作系统已经成为电信、汽车和核电站等各种环境下的主要系统,有多个独立的 "发行版",都是基于相同的核心软件(Linux 内核)。

发布周期和错误修复。运行良好的开源软件项目都在不断地进行升级和实时修复错误。客户可以更频繁地享用这些工作,而不像专有产品的用户,他们必须等到厂商决定产生小版本或大版本。由于客户可以获得开源代码,开源软件也会因此获得大量的错误报告和建议修复,这些报告和建议会不断地被评估,并在适当的时候实施。或者,正如 "Linus's Law"(Linux 内核开发的鼻祖和持续领导者 Linus Torvalds )所说的那样。"只要有足够的眼球,所有的 bug 都是浅层次的“。与此相反,专有厂商收到客户的投诉后,必须设法重现和诊断问题,然后才能解决问题。

安全性。任何人在任何地方都能看到的代码在使用上会更安全,这似乎有悖于直觉,但一般来说,流行的开源软件程序被公认为更安全,主要原因与刚才所说的相同:因为任何人都能看到代码,任何人都能追踪漏洞的来源,让项目经理知道引起关注的原因,并且能自己提出修复建议。因此,安全问题通常可以比专有项目的缺陷更快地被识别、修复并传播给所有用户。因此,开源软件越来越多地被国防、金融和其他最重视安全的用户所使用。 尽管如此,在用户数量较少的地方,开源也会像专有代码一样脆弱。Linux 基金会目前正在努力识别类似的情况,并提供资金来纠正。

对开发者而言:必须指出的是,许多 FOSS 产品中的代码是由个人在自愿的基础上而不是在其雇主的指示下创建的。这些人无偿参与的原因有很多,包括享受、挑战、在项目社区中获得地位,以及获得宝贵的工作技能以提高市场竞争力和报酬潜力。在著名的 FOSS 项目中晋升的个人可以极大地提升他们的专业资质,因为企业也是 FOSS 项目的主要贡献者,而且熟练的 FOSS 开发人员需求量很大。

起源:那些第一次了解 FOSS 的人常常感到困惑,因为那里通常没有物理上的 "位置",即中央开发设施。这并不奇怪,因为在大多数情况下,没有个人或法律实体拥有开源软件产品中超过一小部分的代码,也没有个人或法律实体负责创建或维护这些代码(Linux 内核就是一个典型的例子,它是由成千上万的个人开发者组成的全球网络创建的)。相反,代码可以简单地托管在云端,通常由一个为此目的成立的组织免费提供,该组织还提供各种支持工具和服务。

其他项目则由非营利性基金会支持(如支持 Firefox 网络浏览器的 Mozilla 基金会),或者由所谓的 "伞形组织" 支持,如 Apache、Eclipse 和 Linux 基金会,它们主办了几十个到几百个 FOSS 项目。少数的 FOSS 项目由营利性公司支持,如 Red Hat 和 Micro Focus International,它们分别主办了 Fedora 和 SUSE Linux 发行版。他们通过在提供这些独特的基于 Linux 内核的发行版的同时提供付费支持服务来获利。

虽然在 FOSS 之上销售服务(或因使用 FOSS 而增加利润)是从 FOSS 中获得经济利益的流行方式,但它们不是唯一的方式。仅仅是与其他需要相同软件工具和平台的公司分担软件的开发成本,就降低了每个供应商的开销。而且,正如合作开发的开放标准允许竞争者以其他方式(例如,通过开发和销售高于标准化水平的专有功能和服务)相互竞争一样,FOSS 可以带来全新的、有竞争力的商业机会。目前的一个例子是移动设备市场,大多数移动电话都运行在谷歌开发的安卓操作系统上,而安卓系统本身是基于 Linux 内核的。谷歌从其确保移动平台能够显示谷歌广告并支持其他谷歌软件和服务的能力中获利;移动设备制造商由于大大降低了软件开发成本,可以以较低的价格出售更多的手机;硅供应商由于拥有移动设备的人数迅速增加,可以出售更多的芯片。

(二):开源软件许可证和合法性

可以毫不夸张地说,开源软件的魔力既基于法律创新,也基于合作。事实上,启动自由软件和开源软件的重要创新并不是 Richard Stallman 的 GNU 项目,而是他宣布了一种革命性的新的许可理念,以及将这种理念付诸实施所需的实际许可协议。直到后来,全球开发者之间的合作才在 Stallman 的许可证、Linus Torvald 在创建分布式开发过程中的开创性工作以及迅速增加的电信带宽的推动下爆发。

本文接下来将将探讨 Stallman 的理念是如何传播和分叉的,以及今天它将我们带向何处。

与 FOSS 相关的法律理论、协议和文档都太复杂了,在这类文章中无法进行更多的浅显探讨。就目前而言,掌握 FOSS 法律术语的深刻知识不如深入了解为什么 FOSS 的法律问题如此重要。

门槛事实和原则

除非首先了解一些重要的事实,否则开源软件和法律的相互作用就会显得非常混乱:

通常没有一个实体拥有 FOSS 产品。 出于部分历史和部分意识形态的原因,在大多数项目中,每个贡献了一行代码的开发者都会保留这一行的所有权。因此,任何一个 FOSS 都可能有许多作者 —— 有时,就像 Linux 内核一样,甚至有成千上万的作者。由于成功的 FOSS 在不断地改进和修正,作者和他们的贡献也在不断地变化。当你获得一个 FOSS 授权时,你不是从一个授权者那里获得授权,而是从许多人那里获得授权。

建立一个发行版需要一个村庄。FOSS 有很多大大小小的部件:文本编辑器、库、编程语言、界面等等。因为可用的 FOSS 的存储量越来越大,而且没有理由不断地重新发明轮子,所以一个 FOSS 应用程序或操作系统很可能包括许多从其他项目借来的模块和组件,以及由项目开发的软件,而这个项目的名字主要与 FOSS 有关。顺便说一句,许多专有软件包也是如此,这种做法将在下面讨论。

岩石、纸、剪刀。 由于这种 "村庄" 软件的异质性,一个 FOSS 项目纯粹从技术上进行的选择很可能导致最终的软件包中包含了根据不同的许可证协议开发的模块。因此,必须注意确保与最终软件包的组成部分有关的所有许可证都是兼容的,这可能会在开发项目结束时造成两难的局面,除非在开发过程中遵循良好的法律习惯。对于专有软件供应商来说,问题更为严重,他们不仅要确保能够向客户提供所有必要的法律权利,而且要避免包含可能要求他们以类似的许可条款许可整个产品的版权许可代码。

这不仅仅是钱的问题。下文讨论的版权许可包括一些条款,旨在保护喜欢这种许可的开发者的强烈个人信仰。因此,这些许可证包含的规则在起源和效果上既是哲学上的,也是经济上的。

新瓶装旧酒。虽然自由软件许可证的某些部分与它们的专有类似物非常相似,并为类似的目的而被包括在内(例如,担保免责声明的语言),但其他部分则试实现新的结果,往往使用律师以前不熟悉的语言。这类许可向法官提出了新的解释问题,到目前为止,并不是所有的问题都得到了解答。在这些问题得到解决的地方,都是在各个司法管辖区的孤立的法院里。因此,对于一些 FOSS,特别是版权许可,可能在一段时间内还无法达成 "既定法律"。

不仅仅是一个许可证。因为任何一个开源软件都可能有许多作者,每个人都保留着自己代码的所有权,所以在每个开发者和他们所参与的项目之间签订贡献协议或 "原产地证书"(或类似的标题)文件是很重要的,以确保项目提供的软件的被许可人真正拥有使用该软件的权利。由于许多产品的贡献者可能与他们的雇主签订了与项目所需的权利不一致的协议,因此收集这些权利的过程就变得很复杂。

这通常都是关于版权的问题。虽然有些许可证(如 GPL 2.0 和 GPL 3.0)包括一些与专利有关的条款,或试图影响与专利有关的行为,但与开源软件有关的贡献协议和发行许可证往往主要涉及版权和商标权。相比之下,两个商业实体之间的专有软件许可总是会给予被许可人与所有者拥有或控制的任何专利有关的明确权利。这种二分法的部分原因是,那些为 FOSS 项目贡献代码的人可能并不了解或控制所有可能因使用他们贡献的代码而被侵犯的专利权(他们的雇主也可能不了解)。如果被许可人后来被起诉侵权,他们也没有经济能力或愿意支付赔偿。由于这些原因,从代码库下载的 FOSS 应被视为 "按原样" 提供。然而,从实际情况来看,由于市场上对此类程序主张专利的禁忌已经形成,流行的 FOSS 产品的用户可能不必担心。当用户获得一个 FOSS 程序的商业发行版(如 Linux)的许可时,他们很可能会比使用非商业发行版得到更大的保护,因为软件供应商通常会向其客户提供与专有软件供应商相同的保证和赔偿保护。


可以看出,启动和维护一个成功的开源软件项目,以及发布和使用其成果,都是在一个相当复杂的法律环境中进行的。在已经启动的数千个 FOSS 项目中(特别是在早期),有些项目对法律上的小细节关注相对较少,而这些小细节可以减少以后使用其工作产品的问题。然而,现在,开源软件开发的最佳做法和支持性法律文件已经广泛存在,包括下面讨论的每一个伞状组织,因此,代码维护不慎的情况越来越少。

允许性许可证和版权许可证

第一批可识别为 "开源" 许可证的许可证确实非常简单,重点在于被许可人可以做什么,而不是他不能做什么。普遍认为所有开源许可证的共同祖先是 BSD 许可证的原始版本,其条款只说了一句话:"你可以随意使用,但要让人们知道这段代码的来源 —— 不要起诉我们"。因此,BSD 许可证以及随后的多种类似变体被称为 "允许" 许可证。

在允许性许可下提供越来越有价值的代码,有两个可预见的结果:一是人们会使用这些代码,二是其中一些人会利用这些代码来赚钱。这让一些开发者很恼火,尤其是麻省理工学院人工智能中心的一位名叫 Richard Stallman 的程序员,他发誓要为此做点什么。Stallman 所做的是将他的信念编入他所谓的自由软件定义中,然后制作一个许可证,对此类软件的再利用施加条件,以符合该定义及其所代表的软件社区价值。其结果是一种新的许可证 —— GNU 通用公共许可证,或称 GPL。GPL 的目的是对用户施加义务,以保证被许可人创建的任何修改都能在符合自由软件定义的条件下使用,主要是要求被许可人发布源代码和二进制代码,并禁止被许可人添加任何会颠覆开发者自由的限制性条件。

Stallman 给实现这些目标中比较创新的条款取名为 "copyleft"。由于包含 copyleft 条款的许可证限制被许可人只能在符合原始许可证条款的许可证条件下发布其修改后的作品,这类协议有时被称为 "限制性 "许可证。

GPL 的演变

GPL 的第一个版本是以 GNU 项目组件程序所使用的前期许可证为基础的,它允许多个开源软件程序更容易地结合起来。它在 1989 年被首次使用,并在 1991 年进行了修订,当时增加了一个用于软件库的更宽松的许可证。该许可证最初被称为 "图书馆通用公共许可证"(Library General Public License),或 LGPL(开始时是第 2 版,而不是第 1 版,以便与新版本的 GPL 相匹配,与之协调),后来改名为 "有限通用公共许可证"(Limited General Public License)。

从第一版到第二版 GPL 的主要变化是增加了一个更广泛、更自由的法律义务,Stallman 称其为 "自由或死亡"(Liberty or Death) 条款,目的是阻止任何可能限制其被许可人的自由的行为。

GPL 的第三个(也是当前的)版本直到 2007 年 3 月才发布,经过了漫长而费力的讨论、公众评论和多个讨论稿。旷日持久的过程有几个原因,反映了在 GPL 下发布的自由软件的商业价值在不断增加(最值得注意的是,Linus Torvalds 已经将 Linux 内核从早期的允许性许可转为 GPL 2.0)。它的目的也是为了阻止某些被 Stallman 和其他人认为是反社区的新兴商业行为,而 GPL 2.0 的条款并没有禁止这些行为。导致 GPL 第三版最终获得批准的原因主要是就大量有争议的修改和目标达成共识。包括律师和非律师,总共超过 130 人,分成四个委员会,来进行这些讨论。

其结果是一个受到许多人称赞的许可证,但并不是所有的人都认为它适合所有的情况。因此,GPL 3.0 并没有在所有项目中取代以前的版本,许多新项目继续采用 GPL 2.0 许可证。许多先前存在的项目仍然采用 GPL 2.0,在某些情况下是由于后勤方面的困难(例如,无法追踪到不再活跃的程序员,他们对所包含的贡献拥有版权)。

GPL 许可证系列在很多方面都是独一无二的,其中最重要的是它作为法律文件的标志性地位,同时也是采用它的人之间的社会契约。其结果是,任何对 GPL 的法律挑战都将被视为对整个全球自由软件开发者社区的攻击。由于许多商业利益集团和他们的客户都非常依赖受 GPL 约束的自由软件,所以 GPL 在法律上享有某种特权地位。也许主要是由于这个原因,当这样一个创新和广泛使用的许可证被引入市场时,GPL 许可证吸引了比通常预期的更少的法律挑战。

允许性许可证的演变

随着时间的推移,一些 FOSS 的贡献者和用户开始担心,最初非常简短的允许性许可证(如 BSD 和 MIT 许可证)可能会被理解为只传达版权许可,而不是关于使用贡献的代码会侵犯专利要求的承诺。因此,2004 年,Apache 基金会用一份更长、更详细的协议取代了当时的类似 BSD 的许可证,该协议解决了几个明显的改进点,其中之一是明确许可使用贡献者拥有的专利权所涵盖的发明。Apache 基金会还采用了补充的个人和企业贡献者许可协议。这些协议由使用 Apache 2.0 许可的项目的代码贡献者签署,以向项目确认下游开发者和用户将拥有 Apache 2.0 许可协议中列举的版权和专利权。截至本文撰写之时,Apache 2.0 许可证协议是第三大使用的 FOSS 许可证。

其他许可证

目前有 60 多种 FOSS 许可证得到 OSI(Open Source Initiative)的承认。当开源软件刚出现时,新的项目创始人有时会对前者的许可证进行修改,从而形成了从最初的 BSD 使用条款发展而来的进化型许可证树。Sun Microsystem、微软和其他公司提出了他们自己的 FOSS 许可证,各种非盈利基金会也是如此,包括 Apache、Eclipse 和 Mozilla 基金会。甚至政府,如欧盟委员会,也创造了独特的变体。在 Richard Stallman 的自由软件基金会和其他地方,GPL 也经历了同样的过程,专有厂商特别喜欢在 FOSS 主题上制作自己的变体。通常情况下,产生新许可证的厂商或项目会将其提交给 OSI 批准,并将其列入 OSI 批准许可证的主列表。

随着时间的推移,这棵进化的许可证树上的许多分支都枯萎了,导致一些早期的许可证变得很少使用(它们很少被新的项目选择,而且最初使用它们的项目可能已经转移到其他许可证上)。今天,人们普遍承认,OSI 认可的许可证数量较多,差异太小,超过了必要的数量。因此,今天绝大多数项目只用少数几种许可证来许可其代码。

但是,这些早期许可证的代码仍然在使用中。遗憾的是,一些软件开发者对他们从软件库中提取并添加到自己的程序中的软件条款没有给予足够的关注(或根本没有关注)。其结果可能是软件产品中包含了许多甚至几十种不同的、经常不兼容的许可证。令人欣慰的是,为了应对大量的许可证,人们创建了有用的分类法,以便让项目更容易决定哪些许可证代码可以适当地纳入他们的代码库,哪些不应该。

开源实践

虽然 FOSS 的目标是直接的,但法律问题并非如此。将多种来源的代码合并到开源软件和专有产品中,在商业(如代码污染)和法律(误解特定许可证条款的目的)两方面都给不小心的人制造了许多陷阱。

GPL(第二版和第三版)特别注重实现各种重要的,有时是微妙的法律和商业目标,这些条款背后的社会契约要素与严格的法律条款同样重要。断定一种特定类型的行为是 "合法的",而忽略了这种行为在 FOSS 世界中可能被认为是合法的方式,可能会导致不受欢迎的社区后果,而不一定是法律后果。

最后,如前所述,法院在制定与这些新许可证有关的决定时,可供参考的案例法还很少。由于这些原因,任何在 FOSS 领域开展业务的人,以及他们的法律顾问,都应该在过深地卷入其中之前,花时间了解新出现的理论和法律。

(三):如今的 FOSS 环境

极端情况下,FOSS 的开发几乎不需要传统的经济、物质或管理支持,所需要的只是一个容纳代码的地方,来允许多个开发者合作进行进一步的开发。然而,随着 FOSS 变得越来越有商业价值,并被广泛地纳入到供应商和客户的战略计划中,更多层次的服务和结构也在不断发展,这使 FOSS 的开发变得更加有效和强大,用户体验更加完善。这些服务和结构包括培训、不断增长的认证测试网络、各种协助法律合规性的工具,以及提供广泛支持服务和框架的托管实体网络。这些工具的开发是使商业市场从一个封闭的、专有的世界迅速发展到一个高度基于开源软件的世界的重要因素。

该生态系统的主要组成部分包括以下几个方面:

基金会和项目

位于金字塔顶端的是 "伞状" 组织,它们承载了大量的独立项目。

Linux 基金会

截至本文撰写时,项目最多的是 Linux 基金会,它在 2000 年作为开源开发实验室(Open Source Development Labs,OSDL)启动,其使命是 "加速 Linux 在企业计算中的部署"。在随后的几年里,它与自由标准集团合并且更改了名称,并将其使命扩大到 "围绕开源项目建立可持续的生态系统,以加速技术开发和行业应用"。如今,它主办了两百多个 FOSS 项目,其中一些项目本身已经成为 ”迷你伞” 组织,在同一学科内组建或接受更多的项目,如区块链技术(Hyperledger)、云计算和容器化(云原生计算基金会),Javascript(JS 基金会)、网络(LF 网络)和虚拟化(OPNFV)。 违反直觉的是,Linux 基金会并不直接主持 Linux 内核的开发:Linux 内核的开发在 OSDL 成立前十多年就开始了,而且至今仍独立于它。相反,Linux 基金会提供了各种支持功能,从差旅预算到培训,再到法律合规工具的开发等等,以 "维护、促进和保护" Linux 和其他开源软件。

目前,在伞状组织中,Linux 基金会在提供支持的范围上是独一无二的,从组织五大洲的会议到创建和支持培训计划,再到雇佣专门的工作人员协助各个项目。托管项目可以利用其中的少数或全部功能。非常活跃的项目(除了代码开发之外,还有其他方面)通常有多层次的公司会员结构,会费因会员层次和公司规模而异,很像标准开发联盟。更加专注于代码开发的项目可能没有公司成员或会费。在所有的情况下,技术的发展都是独立于此类成员资格因素的。任何人都可以贡献代码,并在择优的基础上通过项目等级上升,无论他们是否为托管项目的正式成员工作。

最近,Linux 基金会创建了一个自动化软件平台,以促进项目的快速设置和有效托管。该平台提供了一套完整的 "点击接受(click to accept)" 法律文件和相关工具,以帮助 FOSS 的开发、审核和法律文件相关。2018 年 12 月,Linux 基金会接管了联合开发基金会(Joint Development Foundation)的托管工作,这是一个类似的轻量级平台,旨在促进 FOSS 和开放标准的合作开发。

Apache 软件基金会

Apache 软件基金会 ASF(Apache Software Foundation)成立于 1999 年,也是由企业成员提供资金支持的。项目代码开发由个人进行,他们不需要隶属于某个成员。它的一些项目以等级制度运作,ASF 支持 “孵化器” 流程,该流程允许新生项目逐渐发展为有资格获得正式地位的项目。

Apache 软件基金会最初的使命是支持 LAMP 协议栈的开发。随着时间的推移,ASF 接受了许多不同技术领域的额外项目,提供了一个开展相关工作的法律和技术框架。与其他一些伞状组织不同,托管项目要在 Apache OSS 许可证下许可他们的代码,并遵守被称为 "Apache Way" 的各种其他规则和做法":它要求每个贡献者签署一份正式的贡献协议,这种做法目前在其他项目中并不常见。

目前,ASF 有 350 多个项目,拥有 800 多名成员。

Eclipse 基金会

Eclipse 基金会是 2001 年底由 IBM 在 Red Hat 和 Linux 发行厂商 SuSE 等多个合作伙伴的支持下发起的。2004 年,IBM 交出了某些早期保留下来的权利,Eclipse 基金会的影响力开始快速增长。它最初的目的是基于 IBM 开发的一个平台来创建开源软件开发工具,并以开源形式提供。和 ASF 一样,它也有一个分级的项目结构。它为其托管的项目提供的支持类型与 ASF 大致相同。

独立法人基金会

直到最近,许多新的开源软件项目都选择在美国或欧洲自己成立公司,作为公共慈善机构或行业协会,由选举产生的或自我延续的董事会领导。虽然这种做法仍在继续,但得到公司成员支持的新项目越来越多地与现有的伞状组织联系,要求提供托管服务,以减少前期和持续的法律和其他费用。当这些组织为开发商业战略软件而成立时,可能拥有大量的公司资金。但当它们更狭隘地专注于代码开发时,它们的预算通常较低,主要来自个人开发者和其他支持者的捐赠。

非法人项目

绝大多数的 FOSS 项目根本没有法律结构,只是作为一个代码库和一个讨论 Wiki 而存在。

标准制定组织(SSO)

越来越多的传统标准开发者和他们的现代合作伙伴在以下几种情形中开发 FOSS:

SSO 工作组的工程师们经常会得出结论,认为编写能够提供标准所涉及的某些功能的代码比在传统文本中描述这些功能更有意义。在某些情况下,也提供描述性文本,让标准的实现者可以选择使用标准中提供的代码,或者编写符合描述性文本的自己的代码。

SSO 工作组有时会决定开发整个标准的参考实现。

SSO 可以委托一个工作组开发独立于标准的 FOSS。

The SSO may acquire and relicense, or a working group may develop, test suites or other software useful to the achievement of the SSO’s mission. Such software may be licensed under either a lightweight commercial license or under a FOSS license.

SSO 可以获取和再许可,或者工作组可以开发测试套件或其他有助于实现 SSO 任务的软件。此类软件可根据轻量级商业许可或 FOSS 许可进行许可。

由于传统的 SSO 知识产权(IPR)政策通常包括与 FOSS  许可不兼容的条款,走上这条道路的 SSO 必须首先修改其 IPR 政策,或者将这些条款从政策中移除除。使 SSO 的知识产权政策与 FOSS  的开发和许可相协调是一个快速发展的过程,许多 SSO 正在考虑多种方法。在这些实验成为广泛接受的最佳实践之前,可能还需要一些时间。

源代码存储库

全球合作开发 FOSS 可以是一个非常低成本和有效的过程,几乎不需要任何支持性的基础设施。Linus Torvalds 在 1991 年启动了 Linux 内核项目,它的迅速成功就证明了这一点。考虑到服务器空间成本的急剧下降,高度分布式的开发团队已经被证明有能力组成并一起工作,并且 IT 信息在网络上通常为病毒式传播,今天启动一个新项目的唯一(但也是实质性的)挑战是吸引和保持更多志愿者参与者的兴趣。

FOSS 开发托管服务由一些公司提供,这些公司被称为源代码存储库,它们不仅提供服务器空间,而且还提供各种其他服务,如版本控制、开发工具、法律贡献协议表格、指定分发许可证和基于 wiki 的交流平台,所有这些服务都是免费提供的 (额外的服务通常是收费的)。SourceForge 于 1999 年底推出,是早期的领导者;截至 2009 年初,它报告说有超过 200 万的注册用户和超过 23 万个活跃(和不活跃)的开放源码软件项目。然而,随着时间的推移,它将主导权让给了 GitHub,而 GitHub 如今是市场的领导者,以托管库的数量级来衡量。截至本文撰写时,GitHub 托管了超过一亿个这样的项目。这些项目的范围既包括单个开发者的一次性代码贡献,也包括由充满活力的全球开发者社区支持的代码库。

开源软件供应商

虽然开源软件开发模式并不像风险资本投资者希望的那样日进斗金,但也有一些可靠的投资,包括 MySQL,一个由瑞典公司 MySQL AB 拥有和赞助的流行的关系数据库管理系统。2008 年 2 月,MySQL 被 Sun Microsystems 以约10亿美元的价格收购。当微软在 2018 年 10 月收购 GitHub 时,支付了 74 亿美元。而当 IBM 收购最受欢迎的通用 Linux 发行版的分销商 RedHat 时,它支付了 340 亿美元 —— 这是 IBM 有史以来收购公司的最大金额。

营利性公司以其他方式从开源软件中获得巨大的商业价值,并因此为开源软件提供了巨大的支持,不仅通过对项目和支持机构(如 ASF、EF 和 LF)的直接金钱捐助,而且通过允许(或指导)他们的员工参与 FOSS 项目,这反过来又以各种方式为公司自身带来回报(例如,获得第一手的代码演化,影响代码决定的未来方向)。

促进、支持和保护

成立了多种多样的非营利实体来支持、促进和保护 FOSS。

自由软件基金会 FSF(Free Software Foundation)和开源计划 OSI(Open Source Initiative)是关乎 FOSS 生态系统历史和存在的两个基础组织。前者由 Richard Stallman 创建,目的是推广自由软件概念和支持 GNU 项目。后来,它负责管理 GPL 和其他自由软件许可证的创建和发展。OSI 的成立一定程度上是对 FSF 的延迟反应,今天主要是作为开源定义的保管者和哪些许可证被认为是符合该定义,从而被添加到它所主持的批准的开源软件许可证列表中的仲裁者而闻名。

其他重要的组织也在公司的赞助下成立以保护 FOSS,或者表明保护 FOSS 不受侵害的决心。在 Linux 商业化的早期,这种资金充足的实体的成立是很重要的,当时一家名为 SCO 的公司对当时使用 Linux 发行版的一些大公司提起侵权诉讼。其中一个这样的组织是 OSDL(现在的 Linux 基金会),它的核心活动包括建立一个数百万美元的法律辩护基金。这个基金的目的是让 FOSS 的开发者放心,如果他们因为无意中侵犯了一家专利公司的专利而被起诉,别人会资助他们的法律辩护。当 SCO 公司后来破产时,开源软件已经被更多的人接受(包括那些最初认为它是一种威胁的公司),开发者的担忧程度有所降低。

然而,专利关注并没有完全消失,这是因为 "非实践实体(non-practicing entities)" —— 客观地说法是专利 "巨魔" —— 的扩散。这些实体不生产和销售产品。相反,他们开发技术并申请专利 —— 或者干脆购买专利 —— 目的是要求那些确实生产侵犯专利的产品或提供服务的公司支付专利使用费。

一个专门为保护目的而成立的营利实体是开放发明网络 OIN(Open Invention Network),由 IBM、Novell、Phillips、Red Hat 和 Sony 于 2005 年成立,初始资金非常可观,目的是为购买专利提供资金,否则这些专利可能会对 Linux 或其他各种重要的、与 Linux 相关的开源软件造成影响。然后,这些专利可以为成员的开源软件用户针对任何可能指控他们使用的开源软件程序侵犯第三方专利的公司提供保护。OIN 力图通过招募更多的成员,以及与非成员公司签订交叉许可协议来扩大其保护网的范围,这些协议的条款允许所有成员和交叉许可方在被起诉时使用不断增加的自有和许可专利池。截至本文撰写之时,有超过 6 万项专利是 OIN "专利不侵犯(patent nonaggression)" 网络的一部分。

另一个非常活跃的法律组织是 "软件自由法律中心 SFLC(Software Freedom Law Cente)",它的性质和活动更类似于一个法律援助机构。SFLC 在更大程度上关注个人社区开发者和任何规模的 FOSS 项目的需求,并为其非营利客户提供免费法律服务。它还提供关于 FOSS 主题的有用出版物,如 FOSS 开发的最佳实践,并主张使用 GPL 许可证。

总结以及展望未来

FOSS 现象的发展在社会和法律、经济和政治等各方面都是独一无二的。今天,这种开放和合作开发资源的方法已经扩展到其他各种领域,产生了多种新的用法,包括开放硬件、开放数据、开放科学和开放制药。随着传统的工业化、民族化经济完成向更加单一、全球互联、技术型经济和社会的转型,这一扩张性进程可望继续。如果是这样的话,那么仔细研究 FOSS 发展至今的成功和失败,以及密切观察它在未来如何发展,将特别具有指导意义。

但不管是哪种情况,毫无疑问,FOSS 是会一直存在下去的,或者说,在 FOSS 过程中开发的软件的商业意义会不断增强。但不太确定的是,FOSS 的政治、社会和技术现象在未来几年将如何继续发展。一些更有趣的问题还有待回答,包括以下几个方面。

政治演变: Richard Stallman 和其他自由软件支持者的革命热情是否会持续下去,还是像过去的许多社会和政治运动一样,随着年轻的开发者习惯于源代码的随时可得,开始认为 FOSS 是理所当然的,这种热情也随之消散?随着微软现在对 FOSS 的热情拥抱,自由软件运动失去了共同的敌人,随之而来的是能量的消退和凝聚点的缺失。同样,市场也已经确定了一些广泛使用的许可证,而且这些许可证现在已经稳定了很多年。伴随着稳定,人们对 FOSS 许可证的法律细节的兴趣也在下降,也许,这些许可证所体现的价值意义也在下降。

开发者的杠杆作用:今天,来自世界各地的软件工程师有能力合作开发具有巨大商业价值的软件,这使他们对自己的努力方向具有前所未有的权力和独立性,而跨国公司则越来越多地依靠开源软件项目来增加自己的财富。公司对其直接控制范围以外的力量的这种依赖,与它们一贯的规避风险的目标和战略背道而驰。个人软件工程师 ("劳动力")协作小组目前所享有的前所未有的影响力是否会得到维持,或者公司("管理")的传统优势是否会随着时间的推移而重新显现,从而导致开源软件过程的 "沦陷"?如果发生这种情况,是否会导致 "输/赢" 的局面,扼杀推动开源软件现象的创造力和能量?

法律方面的发展:一些最常用的 FOSS 许可证(例如 GPL 2.0 和 GPL 3.0)具有新特性,但在法庭上却很少被解释。它们是否会在法庭上得到支持,如果不会,开源软件社区将如何修改这些基本工具?

政府的吸收和认可:许多政府(如欧盟)出于社会、经济和政策的原因已经开始青睐 FOSS,这种实质性的购买力会对软件开发和商业化实践产生什么影响?

最佳实践:虽然最好的 FOSS 项目非常成功,但它们往往取决于个人的技能和领导能力。同时,一个项目的法律和经济地位(例如,非法人、法人、赞助等)也可能是意外或设计的结果。鉴于 FOSS 的重要性日益增加,而且这类程序有可能长期保持有用,FOSS 项目的稳定性和成功将变得越来越重要。是否会编制组建、治理、管理和分发的最佳实践,如果编制,是否会广泛实施?

答案:诸如此类的问题,是观察其无序演变的结果,还是通过受影响的利益相关者深思熟虑后来回答?是由哪些利益相关者,在什么场合回答?

影响:如上所述,开源软件的基本原则对其他领域具有广泛的适用性,包括数据、硬件和药物。同时,在这些领域发展合作技术也可以为开源软件的发展提供借鉴。这些并存的力量将如何继续相互影响和借鉴?

标准/自由软件的相互作用:一些标准制定组织的知识产权政策条款与一些或所有 FOSS 许可证的条款相冲突,使得在 FOSS 中很难实现这些 SSO 的标准,导致两个社区之间的关系紧张。起初,一些 FOSS 开发者公开敌视 SSO,对 SSO 中几十年来发展起来的平衡知识产权的模式或它们所解决的问题没有什么同情心。相反,他们要求 SSO 改变规则。一些开发者表示,他们认为 FOSS 可以完全消除对标准的需求。在过去的几年里,几十个 SSO 已经开始更新他们的知识产权政策,使他们不仅可以更轻松地在 FOSS 中实现其标准,而且还可以主持 FOSS 的开发。一些 FOSS 项目的领导者也得出结论,认为需要应用编程接口标准和其他规范来提高 FOSS 在企业中的效率,并向 SSO 伸出援手,创建他们认为必要的标准。这种新生的和睦关系是会蔓延和维持还是会动摇,还有待观察。

FOSS 将去向何处:目前,适应开发 FOSS 的 SSO 数量远远多于获得标准开发能力的 FOSS 项目。随着 SSO 不仅更擅长 FOSS 开发,而且还能同时开发相关的 FOSS 和 标准,随着 FOSS 架构在许多行业的成熟,企业是否会开始将 FOSS 的开发从 FOSS 项目转移到 SSO?因为在 SSO 中,他们可以更有效地开发包含标准和 FOSS 的混合协作解决方案。

专利法:在美国 —— 许多软件都是在那里开发和使用的 —— 对在软件中实现的发明申请专利的能力在过去 25 年中发生了几次变化。今天,一系列的利益相关者对美国专利制度中的一些 “缺陷” 感到非常不满。随着时间的推移,这些缺陷包括从授予过于宽泛的专利,到诉讼费用和诉讼结果的变化(通常取决于原告选择哪个联邦地区法院作为诉讼地点)。有些人看得更远,认为对软件发明适用专利保护根本没有道理。美国的法院是否会继续缩小成功授予和成功实施软件专利的大门,或者像最近发生的那样,推翻自己早先的观点,即某些类型的软件完全可以申请专利?如果是这样的话,对软件开发行业会有什么影响,对 FOSS 的未来会有什么影响?

对这些问题的回答确实会很有趣。如果这些问题能得到正确答案,将对全球经济产生实质性的积极影响。毋庸置疑,如果全世界的个人开发者、公司和政府都能意识到从开源软件中获得的互惠互利,并共同努力培育已经产生了如此有用的 —— 也许是令人惊讶的 —— 结果的独特和革命性的进程,那么这将是符合所有人利益的。