PEPE0.00 -6.88%
SUI4.18 -7.64%
TON5.71 -3.30%
TRX0.25 -1.51%
DOGE0.31 -7.13%
XRP2.15 -6.31%
SOL187.56 -4.81%
BNB686.58 -2.14%
ETH3313.66 -5.00%
BTC95358.81 -3.80%
PEPE0.00 -6.88%
SUI4.18 -7.64%
TON5.71 -3.30%
TRX0.25 -1.51%
DOGE0.31 -7.13%
XRP2.15 -6.31%
SOL187.56 -4.81%
BNB686.58 -2.14%
ETH3313.66 -5.00%
BTC95358.81 -3.80%
ETH Gas5.01 Gwei
贪婪 79
撰文:Birkinbine、Benjamin
编译:Tiao,LXDAO
译者前言:
偶然看到这本书,后来在 Trent Van Epps 谈论协议公会(Protocol Guild)的视频中看到他也在提这本书,并采用书里的框架去讲述协议公会在做的事。那我想应该是开卷有益的,祝你不虚此行。
本文是 Incorporating the Digital Commons: Corporate Involvement in Free and Open Source Software 一书第一章的前两节。
2012 年 3 月,Linux 基金会发布了一份名为《Linux 内核开发:速度多快,是谁在做,他们在做什么,以及谁在资助》(Linux Kernel Development: How Fast it is Going, Who is Doing It, What They are Doing, and Who is Sponsoring It)的报告。内核(Kernel)是操作系统中促进计算机硬件和软件之间沟通的一个重要部分,而 Linux 内核开发项目被认为是「有史以来规模最大的合作软件项目之一」(Linux 基金会,2012:1)。除了对内核开发如何随时间而变化的技术概述之外,作者还在报告的重点部分做了一个有趣的说明:微软是内核的 20 大贡献者之一。这是微软首次成为内核的顶级贡献者,但在前 20 大贡献者中,它并不是唯一一家公司(译注:译文没有对 Corporate 和 Company 进行区分,有时译为「公司」有时译为「企业」)。其他公司贡献者包括英特尔、IBM、谷歌、德州仪器、思科、惠普和三星等。Linux 操作系统是一种允许用户自由学习、使用、复制、修改、改编或分发的自由与开源软件(Free (Libre) and Open Source Software, FLOSS)。那么,为什么大公司会直接为一个 FLOSS 项目做贡献,但该项目好像并不会直接为公司的利润做贡献?当考虑到许多为内核做出贡献的公司不仅在信息技术市场上彼此竞争,且像微软和谷歌这样的公司还直接与 Linux 在操作系统市场上竞争时,这个问题就更令人好奇了。
事实上,微软首席运营官 Steve Ballmer 曾这样描述 Linux:「从知识产权来说,是附着在它所触及的一切事物上的癌」(Greene,2001)。鲍尔默指的是 GNU 通用公共许可证(GNU General Public License, GNU GPL),这是最常用的自由软件许可证。对于受 GPL 许可证保护的软件,GPL 授予用户学习、使用、复制、修改或按自己意愿改编的权利。此外,用户还获得了重新分发软件的权利,甚至可能对修改后的版本收费,只要分发者不对 GPL 授予的权利加以更多限制。GPL 并不禁止公司修改自由软件或对修改后的版本收费,但公司必须将自由软件的权利继续授予其终端用户。Ballmer 的这番话暗示自由软件与商业软件公司是对立的。如果真是这样,那么微软和其他商业软件公司就没有为最大的开源项目之一直接做贡献的动机。
此外,值得注意的是,Ballmer 在 2001 年 6 月 1 日对 Linux 发表上述谴责。仅仅 27 天后,即 2001 年 6 月 28 日,美国司法部就因微软违反《谢尔曼反垄断法》的垄断行为对其定罪,主要是因为微软将其网际网路浏览器 Internet Explorer 捆绑在 Windows 操作系统中,迅速扩大了它在网络浏览器市场中的份额。然而,自 2001 年以来,微软对 Linux 和开源的立场发生了显著变化,入选 2012 年 Linux 内核 20 大贡献者就是明证。2012 年,微软还成立了微软开放技术公司(Microsoft Open Technologies, Inc.),这是它的全资子公司,专门致力于促进微软与非微软技术之间的互操作性,同时推广开放标准和开源。在这 12 年间,微软究竟经历了何种变化,以至于如此彻底地重新定位它与 FLOSS 的关系?
微软不是独例。实际上,自 2007-2008 年左右,企业们对 FLOSS 项目的参与就不断增加。表 1.1 列出了 2017 年为 Linux 内核 4.8-4.13 版本贡献了代码的公司。当年的内核开发年报确认共有 225 家公司为该项目做出了贡献。虽然 Linux 内核只是众多公司贡献 FLOSS 项目的一个例子,但也存在其他类似案例。这引出一个问题:是什么促使这些公司为 FLOSS 项目做贡献?他们又是如何为 FLOSS 项目做贡献的?FLOSS 开发者社区如何协调公司们对其项目的介入?FLOSS 开发者社区是否有办法应对公司对其项目的不受欢迎的影响或干预?
表 1.1 为 Linux 内核做出贡献的前几名公司
本书的总体目的是研究 FLOSS 社区与营利性公司之间看似矛盾的关系。我采用批判性政治经济学的视角,探讨 FLOSS 开发者社区与赞助 FLOSS 项目或挪用(Appropriate)FLOSS 劳动者的软件产出的公司间的权力动态。毕竟,FLOSS 产品及其生产过程已被广泛称赞为可以为用户和贡献者带来更大自由和自治的革命性变化 (Benkler, 2006; Raymond, 2000; Stallman, 2002)。我的项目通过平衡这些说法来介入这些辩论。我将技术定位为社会斗争的场所,并在将基于共有地(Commons-based)的大众生产(Peer Production)置于更广泛的社会背景下,以说明它与资本主义生产如何互相影响。为此,我展示 FLOSS 和基于共有地的大众生产带来的所谓革命性变化如何被纳入企业战略和企业结构。
此处的核心论点是,自由与开源软件辩证地处于资本与共有地之间。一方面,程序员群体正致力于创造可供他人访问、使用和改编的软件,使其成为数字共有地。通过这种迭代式的软件开发,软件生产的速度和规模都得到提高。这代表了一种良性循环,即软件程序员联合体积极为社区做出贡献,而社区则声称对 FLOSS 项目拥有集体所有权。因此,FLOSS 程序员可以被视为共有者(Commoners),因为他们始终致力于确保基于共有地的软件项目的再生产和可持续性。另一方面,资本试图捕获 FLOSS 社区生产的价值。这包括利用 FLOSS 的生产过程(即集体劳动,或基于共有地的大众生产力),以及将产品(即特定的 FLOSS 项目)商品化。后者能够为 FLOSS 社区中协作生产的商业化利用提供基础。
这并不是说自由软件的共有者们和资本主义公司的目标总是相对立。研究人员已经证明,自由与开源软件(FLOSS)项目的商业赞助往往会使这些项目更容易吸引开发者,从而确保项目的长期存续(Santos, Kuk, Kon, 和 Pearson, 2013)。然而,我们也有关系破裂的例子,特别是当涉及到资本对数字共有地等共同拥有的资源进行不受欢迎的侵占时。在这种情况下,FLOSS 社区的利益与赞助商的利益发生分歧,双方的关系变得对立起来。FLOSS 社区面临的挑战不仅是要确保其数字共有地持续活跃,而且还要确保项目维持最初使其得以发展的社区意识。
那么,如何协商数字共有地与资本对项目的意外入侵之间的关系?需要考虑多种因素,而随后的章节将提供实证证据,以说明这些动态关系被如何展现。
一般而言,共有地(Commons),更具体地说,数字共有地(Digital Commons),可以被理解为资本主义内部涌现的另一种价值体系。有时,共有地价值循环会与资本积累循环相交叉。因此,辩证地理解自由软件与资本之间的关系有助于解释这两种按照不同逻辑运作的力量间的矛盾。第 2 章通过借鉴资本主义、数字劳动和共有地理论,更具体地概述了这些差异;在其中我的目的是通过将对资本主义的批判纳入共有地的理论中,发展数字共有地的批判理论。
在第 3-5 章中,我提供了三个详细的案例研究,从不同方面展示 FLOSS 社区与企业之间的动态关系。我将企业参与 FLOSS 的讨论分为三个主题领域,每个案例研究都是该主题下的典例。这三个主题是过程(Processes)、产品(Products)和政治(Politics)。综合来看,这三个案例研究体现了公司参与 FLOSS 项目的一般趋势。此外,每个案例研究都提供了对这些动态复杂性的细微理解,并允许对这些关系中固有的一些矛盾进行详细解读。
首先,第 3 章关注微软公司与 FLOSS 的曲折关系。这种关系表明,FLOSS 的生产过程有效地开创了工业软件生产的新时代。虽然其他公司也表现出与 FLOSS 社区合作的意愿,但微软在 20 世纪 80 年代和 90 年代个人计算软件市场的主导地位使其成了解软件生产如何随时间推移而变化的一个重要案例。这里的主要历史事件是针对微软的反垄断裁决,它标志着主要由一家公司完成软件生产并试图排除其他公司访问产品代码的时代的终结。事实上,微软反垄断裁决中的一项同意令(Consent Decrees)就是要求微软向第三方提供访问其应用程序编程接口(Application Drogramming Interfaces, API)的权限。这与微软早先的做法大相径庭,当时它是通过反竞争的商业行为崛起的。
20 世纪 90 年代,在微软主导软件市场并最终被判定违反反垄断法时,其他软件公司也在想方设法将 FLOSS 产品转化为成功的商业产品。我在第 4 章中对红帽公司(Red Hat, Inc)的分析,说明了 FLOSS 产品是如何被纳入一家商业公司的整体业务战略的。红帽公司仍然是最大的、也是唯一一家提供完全基于自由软件去提供软件和服务的上市公司。因此,红帽公司无法依靠传统的版权保护来阻止他人使用其软件的源代码。所以,我在对红帽公司的分析中探讨了它如何在自由软件的基础上创建盈利性业务。
最后,第 5 章中的第三个案例研究关注 FLOSS 社区如何应对公司对其项目施加的不受欢迎的影响。太阳微系统公司(Sun Microsystems)曾是 FLOSS 项目的重要赞助商,但后来被甲骨文公司(Oracle Corporation)收购,而后者对这些项目有不同的计划。在这一章中,我重点介绍了 OpenSolaris 操作系统、MySQL 关系数据库管理系统和 OpenOffice 办公软件这三个项目的不同命运,以及参与这些项目的社区如何抵制甲骨文公司对其项目的侵蚀。实际上,这个案例研究说明了在 FLOSS 社区与公司协商边界时所涉及的政治问题,同时也展示了 FLOSS 社区可以用来保护其项目的一些策略。
在这篇导言的其余部分,我将提供更多背景资料以帮助理解 FLOSS 的重要性。这包括将 FLOSS 置于历史情境和更广泛的共有地讨论中,还包括一般的软件开发以及 FLOSS 历史中的一些关键时刻。在这些部分中,我还将介绍贯穿全书的一些术语,希望能有助于避免概念混淆。之后,我将讨论 FLOSS 的文化意义。最后,我介绍了当前研究的方法论。已经熟悉 FLOSS 的历史及其特征的读者可以直接跳到下一章,或本章末尾关于方法论的说明部分。
尽管自由软件社区和开源社区相互关联,且在某些情况下并不相互排斥,但它们各有其鲜明特点,因此最好的方式是依照每个运动底层的精神实质来描述它们。为了将 FLOSS 的出现置于计算机和软件产业发展的背景中,下文将简要介绍这些产业的历史。讨论结束后,我将重点介绍与 FLOSS 相关的两位关键人物——Richard Stallman 和 Linus Torvalds——以及他们身处的历史情境。他们分别代表自由软件和开源运动。
在使用机器处理信息或计算数字上的差异之前,这些工作都由人工完成。但人类的计算有时容易出错。为了减少这种不确定性,1822 年在剑桥大学工作的哲学家兼数学家 Charles Babbage(查尔斯·巴贝奇)提出,「只有通过机械制造表格,才能消除这种错误」(Gleick,2011: 95)。基于此巴贝奇提出了「差分机(Difference Engine)」,它以机械方式进行常规计算,可以说是我们今天熟悉的现代计算机的起源。后来,巴贝奇扩展了他的想法,计划制造一种新型机器,该机器能够被可编程和存储的指令控制,以方便操作。这个迭代被称为「分析机(Analytical Engine)」,但这仍然只是提供了实现这种过程所必要的硬件或机制。然而,这种硬件需要结合软件去发挥作用。
可以说,软件的想法起源于 Augusta Ada Byron King,即洛夫莱斯伯爵夫人 ,简称 Ada Lovelace(阿达·洛夫莱斯)。1843 年,她提出, 巴贝奇的「分析机」除了能进行数字计算之外,还可以执行一系列其它操作。通过对两个事物之间的差异进行抽象,洛夫莱斯认为,可以对分析机编程,使其执行依赖于符号和意义的运算,而这些符号和意义又能被机器理解。尽管洛夫莱斯在有生之年未能看到她的想法实现,但她发展了「软件」的想法,被誉为第一位程序员。
尽管巴贝奇和洛夫莱斯被视为发展了现代计算机和软件思想的先驱,但直到第二次世界大战期间,才开始真正建造这类机器。计算机科学和信息论的发展——例如库尔特·哥德尔(Kurt Gödel)的不完备定理、阿兰·图灵(Alan Turing)的通用图灵机(Universal Turing Machine)概念、克劳德·香农(Claude Shannon)的通信的数学理论和诺伯特·维纳(Norbert Wiener)的控制论——为这类机器的发展带来了理论启发。在第二次世界大战之前、期间、和之后,现代计算机的许多发展成果都被用于军事目的。其中最知名的例子可能是德国用于加密秘密信息的恩尼格玛密码机(Enigma machine),以及英国用于破译这些信息的机电炸弹(Smith,2011 年)。1941 年,德国电气工程师 Konrad Zuse 制造了 Z3,这被认为是第一台机电式、可编程、全自动的数字计算机(Zuse,1993 年)。美国第一台类似的计算机由爱荷华州立大学的 John Atanasoff 在 1942 年研制成功(Copeland,2006 年)。仅仅一年后,英国布莱切利公园的密码分析人员就开始使用第一台全功能的电子数字计算机,这台机器是政府密码学校(Government Code and Cypher School)的一部分。这台新机器被称为「巨人」(Colossus),在战争期间被用来破译德国的通信。战争结束时,布莱切利公园有 10 台用于破译德国通信的「巨人」(Copeland,2006 年)。
在这些最初的里程碑之后,随着许多早期先驱在战后开始为学术机构和私营公司工作,现代计算机的发展加速了。在美国,格蕾丝·霍珀(Grace Hopper)在二战期间作为美国海军后备役「女子志愿急救服务队」(WAVES)的成员,被分配到哈佛大学船舶计算项目管理局(Bureau of Ships Computation Project)。在那里,她参与了 IBM 于 1944 年制造的 Mark I 计算机项目。后来,霍珀开始为私人公司工作,她推广了独立于机器的编程语言(machine-independent programming languages)的理念。这促成了 1959 年通用商业导向语言(Common Business-Oriented Language, COBOL)的开发。此外,是霍珀让「调试」(debugging)这个词流行开。「调试」是指从程序中删除有缺陷的材料或代码。虽然霍普可能不是这个术语的发明者,但她在哈佛大学的一台 Mark II 计算机上清除了一只导致计算机短路的飞蛾,使这个术语广为人知(Deleris,2006 年)。
20 世纪 60 年代,微处理器的出现大大降低了计算成本。因此,业余程序员和计算机爱好者社区在随后几年开始尝试使用这项技术。其中一个著名的例子是:在 1975 年,Gordon French 和 Fred Moore 在加州门洛帕克(Menlo Park)的社区计算机中心创立了家酿计算机俱乐部(Homebrew Computer Club)。家酿计算机俱乐部为业余爱好者们提供了一个开放的论坛,让人们可以就个人计算机的构造交换零件和建议,而其目的是让更多人能够使用计算机。第 3 章将详细介绍这个业余爱好者社区,因为它在微软的崛起过程中发挥了重要作用。除了这些业余爱好者社区,大部分计算机开发都发生在军队、学术机构和私营公司中。
最著名的是成立于 1958 年的美国国防部高级研究计划局(DARPA)以及成立于 1970 年的麻省理工学院(MIT)人工智能实验室的最初发展。当时的程序员使用的是一种名为 Unix 的专利编程语言,其知识产权归 AT&T 公司所有。Richard Stallman 是麻省理工学院的一位程序员,他于 1971 年开始在实验室工作。Stallman 发现,当他想在官方认可的范围之外使用 Unix 编程语言时,AT&T 拒绝他访问代码。作为抗议,他于 1983 年在计算机公告栏上发布消息,宣布他正在开发一种基于 Unix 的语言,这种语言将免费提供给其他人随意使用。1985 年,Stallman 发表了《GNU 宣言》(The GNU Manifesto),其中概述了他的新项目的目标、开发该项目的原因,以及该项目旨在反击的对象。这一编程语言名为「GNU」,是「Gnu's Not Unix」的递归式首字母缩写。除编程语言外,Stallman 还开发了 GNU 公共许可证(GNU Public License, GPL),其中规定任何人都可以免费获取源代码,使用 GPL 的人也同意自己的贡献具有同样程度的可用性。这将确保计算机程序员可以自由地相互分享工作成果,从而创造出一种共有地形式的财产,与其它专有和封闭的同类产品相对立。
Stallman 成为反对专有软件运动的代表人物。他认为获取源代码是一项基本权利,并希望其他人也能相信这一点。他在一个著名的论断中总结了这一观点:「是自由中(Freedom)的自由,而不是免费啤酒(Free beer)中的自由」,从而将自由软件定位为一种道德权利(Stallman, 2002)。自由软件的定义规定,「用户拥有运行、复制、分发、研究、更改和改进软件的自由」(Free Software Foundation, 2012)。随着自由软件的原则逐渐走出美国国界,其他人试图通过使用法文术语 libre 而不是 Gratis 来减少对英文术语 Free 的混淆。Stallman 成立了自由软件基金会(Free Software Foundation, FSF),以推动他反对专有软件的运动,他是一位充满激情的反文化人物,继续支持着自由软件的哲学。
人们普遍认为 Stallman 是自由软件运动的领军人物,而开源软件(Open Source Software)通常与 Linus Torvalds 联系在一起。Torvalds 和 Stallman 的故事在许多方面相像,但在哲学上有所不同。20 世纪 80 年代,自由软件项目开始发展,但规模普遍较小。当时,自由软件还没有找到在更大范围内协作的方式。Torvalds 希望为开源操作系统开发内核。他没有依靠众多各自工作的程序员完成这项任务,而是发布了他的项目源代码,并将其命名为「Linux」,这是他的名字 Linus 和他使用的编程语言 Minix(本身是 AT&T 的 Unix 衍生的简化版本)合成的词。Torvalds 鼓励任何对这个项目感兴趣的人去做贡献,只要他们将自己的工作向社区公布,这样其他人就可以逐步完成内核。事实证明,这个项目是成功的,并最终促成了开源操作系统 Linux 的诞生。通过要求那些正在编写代码的人发布他们的工作成果(无论改动看起来有多小),这一大规模的编程项目得以完成协调。这样做的理由是,协调的努力可以减少冗余工作的量,就如这句被 Eric Raymond 称作是「林纳斯定律(Linus’s Law)」(Raymond,2000 年)的格言:「众目睽睽下,一切错误都肤浅」。
在如何看待自由软件与专有软件之间的关系方面,Stallman 和 Torvalds 的观点有所不同。在反对专有软件方面,Stallman 倾向于采取对抗的态度,而 Torvalds 则不那么强烈。Williams (2002) 描述了 1996 年某次会议上的一个决定性时刻:Stallman 和 Torvalds 一起出现在一个讨论小组中。Torvalds 对微软所做的工作表示钦佩,并认为自由软件倡导者可以与公司们合作。这样的建议通常被视为禁忌,因为 Stallman 在编程社区中备受推崇,而自由软件基金会通常对专有软件公司采取非常强硬的立场。Powell (2012) 对自由软件与开源之间的区别作了类似的阐述:
「开源软件作为一种工业流程,是在自由软件开发文化的基础上发展起来的,但它偏离了自由软件开发文化对共享和维护知识共有地的价值的政治关注,而是侧重于开源软件生产流程的效率」(692)。
因此,1996 年大会上的这一时刻标志着一个分水岭:自由软件运动的狂热稍稍解冻,因为 Torvalds 开始代表一种更加自由(Iiberal)的自由软件。我这里所说的「liberal」是字面上的含义,而不是指特定的政治立场;这个词应被理解为对新观点或新行为持开放态度,同时愿意放弃传统价值观。从这个角度看,Linus 对微软所做的工作表示支持也是在表明他愿意与微软(或其他商业公司)合作,只为生产出最好的软件,而不是坚持 Stallman 和自由软件基金会的反企业立场。
总之,我们可以根据不同的哲学立场来理解自由软件和开源运动。Stallman 和自由软件倡导者们倾向于提出反对支持专有软件的道德主张,而 Torvalds 和开源支持者们则倾向于采取更加自由和包容的立场。虽然 Stallman 和 Torvalds 被用来说明自由软件社区和开源社区间的差异,但不应将他们视为相互排斥的社区,也不应将他们视为整个自由软件和开源社区的代表。自由和开源软件社区的一个特点是,尽管整个社区一致认为软件应该免费供用户研究、修改、改编或定制,但其成员往往会激烈地捍卫自己喜欢的自由软件项目,同时嘲笑其他软件项目。从某种意义上说,这向其他人表明了他们的忠诚所在,并在更大的自由和开源软件社区下的小众(Niche)社区内建立更紧密的联系。本项目不太关注这些群体内部的裂痕,而是关注该群体与依赖其劳动的企业之间的关系。为此,我们使用「自由与开源软件(Free (Libre) and Open Source Software)」或「FLOSS」来指代整个社区。
1.2.2. 自由与开源软件:无声与无处不在
从上世纪八九十年代开始,FLOSS 已被证明是一种高效且有效的软件生产方式。无论我们是否意识到,在日常计算活动中大多数人都依赖着 FLOSS,因为它为互联网的运行提供了重要基础设施。以本章引言中讨论过的 Linux 内核为例,我们可以窥见一些 FLOSS 项目的规模和范围。1991 年首次发布时,Linux 内核约有 10000 行代码。Linux 内核 4.13 版本于 2017 年 9 月发布,拥有近 2500 万行代码,由近 1700 名开发人员和 225 家公司共同完成(Corbet and Kroah-Hartman, 2017: 11)。此外,Linux 操作系统已被广泛使用。例如,在超级计算机操作系统市场上,Linux(或其他源自 Linux 的操作系统)占据了 100% 的市场份额(Top500.org,2018a)。这些世界上功能最强大的计算机全部依赖 Linux 或基于 Linux 的操作系统。其中包括美国能源部在田纳西州橡树岭国家实验室(Oak Ridge National Laboratory)的超级计算机,在撰写本报告时,该实验室拥有世界上速度最快、功能最强大的超级计算机(Top500.org,2018b)。虽然 Linux 在个人桌面计算机市场上的份额尚小,但该操作系统已被定制和用于各种场合。
在美国,Linux 被用于高级军事行动。例如,美国海军宣布,其耗资 35 亿美元建造的驱逐舰「朱姆沃尔特号」(USS Zumwalt)被描述为「世界上技术最先进的水面舰艇」,它将有效地充当武装浮动数据中心,配备运行着各种 Linux 发行版和 600 多万行代码的服务器硬件(Mizokami,2017;Gallagher,2013)。此外,据美国国家航空航天局空间运行计算经理 Keith Chuvala 所说,国际空间站从 Windows 操作系统转向了 Debian Linux,因为他们想拥有「......一个稳定可靠的操作系统——能让我们进行内部控制」(Bridgewater,2013 年)。
事实上,Linux 和及其衍生系统也为一些最著名的科技公司提供了重要组件,这在本章开头已有简要讨论。尽管在后续章节中我只对几家公司进行了深入研究,但我们还可以找到其他类似的有趣案例,以说明企业和 FLOSS 社区间的不同动态。因此要提一下,此处的几个著名案例只是为了强调 Linux 的无处不在。例如,谷歌的 Android 操作系统是世界上最流行的移动平台之一,它就是基于 Linux 内核。不过,安卓操作系统的某些关键组件仍为谷歌专有(见 Amadeo,2018)。除谷歌外,Canonical 等其他公司也依靠 Linux 去创建定制的操作系统发行版。Canonical 生产的 Ubuntu 是目前使用最广泛的 Linux 发行版之一。
Linux 已在全球范围内得到广泛应用。一些国家开发了符合自身特定需求的 Linux 版本,有些城市甚至立法要求优先使用 Linux 操作系统。例如,在 1999 至 2001 年间,巴西的四个城市——安帕罗、索洛诺波尔、累西腓和里贝朗皮雷斯——通过法律要求政府机构使用或优先使用 Linux。这一决策主要是基于经济考虑,因为据报道,巴西在 1999 至 2004 年间向微软支付了近 10 亿美元的软件许可费。转向自由和开源软件后,巴西预计每年可节约约 1.2 亿美元。在支持自由软件方面,巴西仍是较为进步的国家之一。在巴西,许多与自由和开源软件相关的政策和倡议都是由社会行动者社区推动的,他们能够影响决策过程,制定与主流的新自由主义意识形态相反的政策。在 2011 年的一篇精彩文章中,Shaw 将这些行动者们称为「叛乱专家(Insurgent Experts)」。
印度的喀拉拉邦也采取了类似的支持自由软件的措施——从教育系统中淘汰专有软件。据估计,这一举措每年为该邦节省约 5800 万美元。德国慕尼黑市开发了当地版本的 LiMux(Linux 在 Munich),并在 2017 年之前将其作为 15000 名市政官员的操作系统。中国国防科技大学也开发了基于 Linux 的 Kylin 操作系统。此外,「每个孩子一台笔记本电脑(One Laptop Per Child)」项目所使用的电脑采用了基于 Fedora 的自由与开源操作系统。Fedora 是由红帽公司赞助的自由软件项目,我们将在第 4 章谈论它们。
除了 Linux 的广泛使用,开源原则也被应用到信息技术之外的领域。例如,开源硬件(见 Söderberg,2011 年)可以增加人们获得实物商品的机会,如家具、乐器、建筑材料和风力涡轮机等。这些项目对生活在发展中国家的人们尤其有吸引力,因为这些地区的信息、商品和服务获取可能受限。开源生态(Open Source Ecology)是该领域中较为雄心勃勃的一个项目,提供了「开源文明蓝图」,并包含使用回收或低成本材料建造工业机器的指南。虽然这只是一个出彩的例子,但它展示了将开源原则应用于整个生活方式而不仅是信息技术的乐观精神和创造力。然而,这些项目的核心价值观并不一定源于开源软件。相反,开放、共享、互助、尊重和友善等文化价值是建设社区的基础价值理念。当这些原则在更大范围内得到应用时,就会带来一个更可持续的未来,尤其是当这些原则与环境和生态保护实践联系在一起时。但只有在不鼓励或很少鼓励重视它们的系统中,这些原则才会成为激进的主张。
尽管 FLOSS 社区是一个社会技术系统,但 FLOSS 爱好者也通过全球的 Linux 用户组网络(Linux User Groups, LUGs)进行面对面合作。LUG 会定期举行会议,以推广 FLOSS、帮助新用户安装 FLOSS、解决使用中遇到的问题、或仅仅是为了结识其他爱好者。这些群体中的社会联系以他们对技术的共同兴趣为媒介。由于社区成员因共同的技术热情而聚集,她们的文化实践依赖于相互连接的网络技术,并得到这些技术的支持。随着越来越多的人接入网络,这些社区中的新参与者的贡献机会也随之增加。
最后,值得注意的是,我们越来越多的社会生活在互联网中展开——在网上工作、与朋友和同事交流、阅读新闻、观看影视、听音乐等。当我们连接到互联网并访问网站时,信息请求会通过一个由相互连接的服务器组成的网络相继中转转发,这些服务器会促进网络上其他客户端之间的通信。运行这些服务器的操作系统越来越多地采用 FLOSS 项目,如 Linux 或 FreeBSD,但微软也设计服务器软件。这是另一个 FLOSS 项目与微软等专利公司竞争的例子。因此,无论我们是否意识到,我们连接互联网的能力可能部分取决于 FLOSS 项目与专有软件协作的能力。这进一步表明,我们有必要了解专有软件和 FLOSS 项目的合作方式,以及当这些关系破裂时会发生什么。对这些关系中存在的动态进行分析,可以帮助我们理解和他人在线上联系的能力是由哪些因素促成,又受到哪些因素制约。
这些例子说明,Linux 以及更广泛的 FLOSS 已不仅是计算机爱好者社区使用的工具。它在全球各种高层次环境中的广泛应用和持续增长,证明了 FLOSS 生产模式的力量及其产品的有效性。随着 FLOSS 被越来越多地应用于各种场合,了解企业、政府、非营利组织和其他机构参与 FLOSS 项目的方式将变得越来越重要。因此,FLOSS 成为了一个重要的研究领域,这不仅是因为它越来越普遍,还因为人们对其产品和生产过程的特性的主张——民主、平等和非市场。这正是这本书试图为这些辩论做出贡献的角度。
1.2.3. FLOSS 与黑客文化
近来,「黑客」一词常带有负面含义,但它通常指的是那些「摆弄(Tinkers)」或改变技术以创造新事物的人。Steven Levy 在 1984 年概述了黑客伦理的原则,他认为计算机还可以用于创造性目的,黑客的评价应基于工作质量而非性别、种族、民族等其他特征,而且掌握黑客技能是成为黑客的先决条件。最后一点看似显而易见,但要进行黑客活动,必须接触到相关技术,即源代码。换句话说,不允许摆弄的、封闭的、专有的技术可能被视为是不公正的。
事实上,面对封闭、专有或以其他方式保护的技术时,黑客可能会试图规避或消除这些限制。有时这么做是为了证明信息安全方面的观点,或是向他人发出信号,展示其黑客行为的复杂性。这种发出信号的动机在开源软件社区中也得到了认可(Lakhani 和 Wolf,2005 年),特别是因为 FLOSS 程序员对重新混合、修改、改编或从给定产品中创造出新东西很感兴趣。同样的信号动机也被用来阐释程序员为什么要为 FLOSS 项目做出贡献。Lakhani 和 Wolf(2005 年)解释说,信号至少可以发生在几个层面上。在个人层面上,一个黑客可以通过黑客行为向他人展示自己的技能。黑客还可能利用这种信号向潜在雇主传达自己的技能,以获得有偿工作。如果能在更广泛的社区中获得认可,有效地完成某些编程任务,就能为自己带来来自于寻找特定技能的公司的、更多的工作机会。
然而,黑客群体之间会发出另一种信号。黑客团体或集体可能通过关闭网站或以其他方式扰乱服务,以向他人展示其实力。这通常是出于竞争精神,但也可能是受某种意识形态的明确驱动。例如,在叙利亚就有以国家为基础的黑客组织,亲叙利亚政府的黑客组织「叙利亚电子军」(Syrian Electronic Army)与亲叛军的黑客组织「叙利亚自由军」(Free Syrian Army)展开了黑客大战(Fitzpatrick 2012 年)。在这种情况下,黑客团体战略性地攻击对手的网站,以显示其运动的力量。
在一项对自我认同为黑客的群体进行的调查中,受访者称他们为 FLOSS 开发做出贡献的主要动机是渴望挑战自我和从事创造性工作。这似乎支持了 Levy(1984 年)所认为的黑客伦理的主要原则:创造性和美学。Weber(2004 年)的调查还发现其他动机,包括认为所有软件都应该是自由(Free)的,这与 Richard Stallman 和自由软件基金会的理念相呼应。Weber 的结论是,动机多种多样,这些调查结果应当被置于适当的情境中。例如,许多 FLOSS 开发的贡献者并不公开自己的身份或任何机构隶属关系。事实上,查看一下参与 Linux 内核开发的用户的贡献者文件就会发现,大多数贡献者都被列入了「未知」类别。这意味着 FLOSS 社区中的很大一部分人选择不去进行自我识别。因此,对于任何声称代表整个 FLOSS 社区的调查结果,我们都必须持一定的怀疑态度。
对于理解黑客和 FLOSS 贡献者的动机而言,信号和创造力无疑是重要因素;但我个人认为,对于自由软件和 FLOSS 生产的文化意义来说,Christopher Kelty 的研究最有力。Kelty(2008 年)将自由软件定位为递归公众(Recursive Public),他将其定义为:
「一种公众。它极其关心对其作为公众的物质和实践——技术、法律、实践和概念手段——的维护与改进;它是一个独立于其他形式既定权力的集体,能够通过生产实际存在的替代方案来向现有的权力形式发声。」(Kelty, 2008: 3)。
换句话说,在积极为 FLOSS 项目做贡献的过程中,FLOSS 程序员也在积极创造、重构、或再生产那些使他们的活动得以开展的基础设施。这与其他将共有地视作一种过程或一种生成(A way of becoming)的理论有概念上的联系(Dyer-Witheford,2006;Linebaugh,2008;Singh,2017)。同样,Rossiter 和 Zehle(2013 年)也认为,共有地并不纯粹是「作为一种脆弱的遗产而被给予保护」,以防止被圈占,而是必须被积极构建。FLOSS 社区以代码的形式积极生产数字共有地,并在允许用户使用代码并为自身目的改编它的知识产权许可证下进行生产和获得许可。这些可供选择的知识产权许可证有许多不同形式。最开始被广泛使用的 Copyleft 许可证是 GNU 通用公共许可证(GNU General Public License)。其他著名的例子还有「知识共享(Creative Commons)」许可证,它允许在创作者设定的条件下对受保护的财产进行不同程度的使用。例如,用户可以免费提供自己的创作,并允许他人使用,条件是这些用户必须注明原作者。
Kelty(2008)进一步声称,FLOSS 程序员「并不是从意识形态开始,而是通过参与创建自由软件及其衍生品的实践来接触到这些意识形态」(7-8)。Coleman(2004)在提到 FLOSS 的「政治不可知论(Political Agnosticism)」时也表达了类似观点。这种不可知论中的复杂力量源于对特定政治立场的从外部出发的否定,尽管「政治否定是通过对言论自由原则的重新阐述而在文化上进行,这种文化定位受到计算机技术的影响,并从外部表达,因而构成黑客价值观」(Coleman, 2004: 509)。Coleman 继续解释说,FLOSS 社区倡导的道德哲学核心是「致力于阻止对于他人自由的限制」(509)。这种开放的功利主义伦理是 FLOSS 程序员继续构建最先进计算机程序所必需的,因为正是对软件进行修改、调整和改进的能力使软件开发中的创新成为可能。
这些原则以及对特定政治立场的外在否认,在一定程度上是 FLOSS 社区能够吸引如此庞大的群体的原因。当然,这并不是说 FLOSS 社区的所有成员都拒绝接受特定的政治意识形态。Eben Moglen(2003 年)的「网络共产党宣言(dotCommunist Manifesto)」就发起了反对私有财产制度的论战。事实上,他在宣言的最后提出了为「自由言论、自由知识和自由技术」而斗争的七项原则,并在最后说明了这场斗争将怎样带来一个更加公正的社会(译注:引用的 Moglen 的话来自于这里的译文):
1、废除一切形式的对于思想和知识的私有产权。
2、取消一切排他性使用电磁波段的许可证、特权及权利。废除一切永久性占有电磁频率通路的权利。
3、发展能够使人人实现平等交流的电磁频谱设施。
4、发展社会公共性的计算机程序,并使所有其他形式的软件包括其「基因信息」,即源代码成为公共物品。
5、充分尊重包括技术言论在内的所有言论的自由。
6、保护创造性劳动的尊严。
7、实现在公共教育体系的一切领域,让所有的人都平等地、自由地获取公众创造的信息和所有的教育资源。
我们要通过以上以及其他措施,发动一场解放人类观念的革命。我们要推翻当前的知识产权体系,建立一个名副其实的公正社会。在这个社会裏,每一个人的自由发展,同时就是所有人的自由发展。(Moglen, 2003)
同样,Dmitry Kleiner(2010 年)的《电信共产党宣言》(Telekomunist Manifesto)概述了发展网络工人阶级政治的建议。他的风险共产主义(Venture Communism)和「Copyfarleft」(译注:虽然 Copyleft 高效地创建了软件的共有地,但要实现文化作品的共有地则需要 Copyfarleft,这是一种自由许可证,拒绝向那些将自身资产排除在共有地之外的组织提供免费访问。)许可证制度为在现有框架内开发替代选项作出了具体建议,但以激进政治为指导。这两项建议都旨在维护和保护独立生产者共同拥有的财产,使其免受资本主义剥削或吸纳。
因此,从整体上看,FLOSS 社区对软件生产具有巨大的价值。上文讨论的作者,尤其是 Kelty(2008 年)和 Coleman(2004 年;2013 年)的著作,位列于理解 FLOSS 的文化意义以及 FLOSS 社区伦理的最好一批作品。然而,当 FLOSS 社区的特定文化、政治和经济价值观与资本积累的循环发生交集时会发生什么?这仍然是一个紧迫的问题。这也是 Kleiner(2010 年)在提出替代方案时试图处理的矛盾之一。此外,FLOSS 社区以何种方式去协商并证明同时倡导开放知识和市场成功的双重立场?Alison Powell(2012;2016;2018)是探索这方面复杂动态的最佳代表。在探讨大众生产(Peer Production)社区的参与者们如何为项目协商相互竞争的道德愿景时,Powell(2018)认为她们经常采取「可操作的实用性(Operational Pragmatics)」,以证明各种设计决策的合理性。在这样做的过程中,参与者会将对开放知识的倡导与市场成功之间的区别混为一谈,即使这些区别看起来不相兼容。实际上,两者都被视为「好的 (Good)」或正当的(Virtuous),在做出相关设计决定时作为「正当性的体制(Regimes of justification)」发挥作用(Powell, 2018: 514)。
那么,我们如何理解大众生产社区内部复杂而交织的文化差异谈判的方式,以及它们与资本积累循环的交集?如果大众生产社区想要设计能够获得市场成功的产品,那么他们会不会可能被资本剥削?毕竟,企业对利用 FLOSS 社区的生产力非常感兴趣。下一节将讨论对公司与 FLOSS 社区间发生联系的各种方式的理论化。然而,下一章将从资本主义、数字劳动和共有地的理论出发,更详细讨论具体的动态,同时探索当资本和共有地交叉时,剥削是如何发生的。
欢迎加入深潮TechFlow官方社群
2024.12.26
2024.12.26
2024.12.25