我们需要拯救使 Linux 和 FOSS 成为可能的原因
如果我们认为自由和开放是理所当然的,我们将两者都失去。这种情况已经发生了,我们需要反击。问题是如何反击。
读者 Alan E. Davis 在一封信中写的这段话让我难以释怀(全文在我们的“读者来信”栏目中)
“...我写这封信的真正原因来自于我在寻求在线帮助时意识到,Linux 文档项目已经名存实亡,而 Linuxprinting.org 项目——我认为现在已被 open printing 接管——远未良好运作。Linux 已经转型为容器和嵌入式系统。这些以及其他类似的项目是自由软件运动的核心和灵魂,我不希望它们消失!”
这正是 Bradley Kuhn(来自 软件自由保护组织)在去年 Freenode.live 的 演讲 中感叹的事情。 Kyle Rankin 在同一次活动的演讲中也表达了类似的观点(视频,幻灯片,以及后来在 LJ 上发表的 文章)。在同一个舞台上(那真是一场精彩的演出),Simon Phipps(来自 开源促进会)和我在 早先的对话 中也表达了我们的惋惜。
我们都认为,把 Linux 和 FOSS 视为理所当然已经变得太容易了,而这样做的风险是可怕的。以下是一些具体情况:
- 我们在专有环境(例如 Slack 和 Google Hangouts)中协作。今天使用的大多数聊天和消息系统也是专有的和封闭的。大多数视频会议系统及其使用的编解码器也是如此。
- 今天,许多 Linux 和 FOSS 爱好者仅在专业领域使用 Linux。 他们的大部分个人工作都在专有的 Apple 和 Microsoft 设备上完成。许多人在关于 FOSS 主题的演示文稿中使用 Windows 或 macOS 电脑。
- 我们没有以身作则来践行我们的价值观。 Bradley 从 Benjamin Mako Hill 那里引用了这句话:“使用非自由工具会发出令人无法接受的信息……开发者似乎在说,‘软件自由对你们用户来说很重要,但对我们来说不重要’。这种行为破坏了自由软件运动核心的强烈道德承诺的基本效力。”
- 我们已经允许基础理念崩塌。 我们顺应了 Web 复杂化的趋势,不再尊重 HTTP 和 HTML 中的简洁性,而正是这些简洁性使得 Web 最初能够正常运行。例如,我们几乎不再为 Bradley 所说的“渐进增强和优雅降级”而设计。我们在 Web 开发领域看到了这种失败,该领域现在几乎完全依赖 JavaScript,而 JavaScript 大部分是专有的,并且不断地在运行时下载到浏览器中运行。
- 我们也在忘记(或者可能从未学会)像 GPL 这样的互惠许可如何能让一个项目保持活力并将社区凝聚在一起。 Simon 将 SourceForge 的失败归咎于其决定用专有软件库替换其最初的自由(GPL 许可)软件库。现在,即使我们有了 Git,他说我们当中仍有太多人不知道 Git 和 GitHub 之间的区别,也不知道 GitHub 运行的是在我们浏览器中执行的专有 JavaScript。
早在 2002 年,当我写 《三种文化的故事》 时,就已经有迹象表明这种情况即将发生。我将稍微展开解释一下这些文化:
- 极客 当时正忙于发明世界的基本软件构建材料。他们在一个重视自由、开放和最大化对所有人、所有事物有用性的文化中运作。他们也强烈地感觉到,他们正在赢得软件开发和产品设计中争取自由和开放的斗争。用极客的俚语来说,他们正处于 “甘地大会 3”。(背景是莫罕达斯·甘地的一句名言:“起初他们无视你,然后他们嘲笑你,然后他们与你战斗,然后你获胜。”)
- 好莱坞 作为一个标签,代表着商业中所有专有的东西。我选择这个标签是因为当时最大的公开斗争是关于版权的,而好莱坞是(并且仍然是)版权最大化的化身。 Larry Lessig 与 Aaron Swartz 等人共同创立了 知识共享,他将这场斗争描述为硅谷与好莱坞、北加州与南加州之间的斗争。
- 嵌入式开发者 是我所说的“纯技术……前网络时代、前 UNIX 时代,甚至可能是前文化时代”的人,他们关注的是“完全实用”的问题。换句话说,不是 关于自由软件、开源或 Linux——超出其功利价值之外。这是我在参加嵌入式系统会议后写的,Rich Lehrbaum 为 Linux Journal 写过关于该会议的文章,这里。(这可能是网络上唯一幸存的关于该会议的记录。)
我当时没有预见到的是,好莱坞和嵌入式会变得几乎相同:一切照旧的商业模式。发生这种情况的原因是,对于太多的开发者来说,基于 Linux 和 FOSS 基础,以完全实用的方式,通常是为了嵌入式目的,埋头构建专有和封闭的东西太容易了,而他们很少尊重这些基础所体现的优点。到现在,我们已经构建了很多这样的东西。甚至有人可能会说,当今世界上部署的大部分 Linux 都嵌入在专有和封闭的设备中。
所以问题是,我们现在应该做什么?
根据我的笔记,以下是 Bradley、Kyle、Simon 和其他人在 Freenode.live 上说的一些话。不完全是逐字逐句,但意思相近。
- “实时聊天对于自由软件的进步绝对至关重要。”
- “我们现在是抵抗力量。” “我们需要发起大规模运动。”
- “自愿编写自由和开放的代码,参与社区。”
- “如果你没有经历过这段历史,那就向那些经历过的人学习。”
- “如果你确实从历史中学习到了东西,那就教导那些需要了解它的人。保持尊重。”
- “保持耐心。记住,乌龟获胜不仅是因为它有耐心,还因为它无视侮辱、嘲笑和轻视。”
- “以身作则践行你的价值观。使用自由软件和硬件。”
- “始终记住‘复制、分享、修改、再分发和改进软件的权利’是关系到人们的基本权利。”
- “努力说服开发者,他们的软件自由很重要。”
这些都是必要的,但还不够。我们需要更多。需要一些更大的举措。
我建议我们挑起一场战斗。因为战斗能激发情感,并且有目标。
我刚刚在浏览器中的多个标签页上对许多不同的战斗进行了一场淘汰赛。获胜者——最后一个站立的标签页——是 《通用计算机时代即将终结》,作者是 Michael Feldman,发表在 The Next Platform 网站上。这是对一场失败的斗争历史的悲哀总结,Cory Doctorow 在 2011 年用 《封锁:即将到来的通用计算战争》 和一年后用 《即将到来的关于通用计算的内战》 进行了预测。请阅读所有三篇文章。
我选择通用计算作为获胜的战斗——最值得进行的战斗——因为如果没有通用计算机来开发和使用它们,我们今天就不会有 Linux、自由软件或开源。通用计算是下金蛋的鹅。这场战斗是为了保持它的活力。