左版:实用的理想主义

理查德 斯多尔曼

(译者注:本文已经收录200210月出版的“Free Software, Free Society: The Selected Essays of Richard M. Stallman.”)

人作决定取决于他的价值观和目标。人的目标和价值观会有很大的不同;名望、利益、爱、生存、 娱乐和自由都只是一些一个好人所拥有的目标。当一个人的目标不但能帮助自己,而且还能帮助他人时,我们就称之为理想主义。

我致力于自由软件的工作是被一个理想的目标激发起来的:传播自由和协作。 我要鼓励自由软件的传播,以取代阻碍协作的私有软件,以此使我们的社会变得更加美好。

这就是 GNU GPL 要写成现在这个样子,即 左版的方式的基本理由。 所有写进 GPL 覆盖的程序中的代码都必须是自由软件,即使被插入一个独立文件中也是这样。 我编写的程序源代码都能在自由软件中运用,而不是用于私有软件,为的是勉励其他人,使他们也来编写这样的自由软件。我认为,既然私有软件的开发者们用版权来限制我们共用, 那我们协作者也可以用版权来给其他的协作者一个便利:他们可以使用我们的代码。

并非所有使用 GNU GPL 的人都拥有这个目标。许多年前,有人要求我的一个朋友以 非-左版 方式散发 左版 程序,他的回答大致是这样:

我有时为自由软件工作,有时则编写私有软件--但当我编写私有软件时,就希望得到 报酬

他愿意与一个相互分享软件的社团分享他的成果, 但他认为没有理由施舍一个其产品不能进入我们社团的公司。他的目标与我的不同,但他肯定 GNU GPL 对于他的目标也同样有用。

如果你想在这个世界上实现什么,仅有理想主义是不够的--你还需要能够使你达到理想的路径。换句话说,你需要实用 GPL 实用吗?那就让我们来看看它的结果:

GNU C++ 为例。我们为什么编写了自由的 C++ 编译器?仅仅因为 GNU GPL 认为它必须是自由的。 GNU C++ 是由一个工业社团,MCC,在 GNU C 编译器基础上开发的。这个工业社团(MCC) 通常尽可能使自己的工作成为私有的。但他们使 C++ 前端(front end)成为自由软件, 因为 GNU GPL 说这是他们发布 C++ 的唯一方式。C++ 前端包括许多新档, 但由于设计它们的意图是要与 GCC 连接,因此 GPL 就适用于它。对我们的团体来说, 这样做的好处是明显的。

再来看看 GNU Objective C NeXT 最初想把这个前端作为私权软件; 他们提议把它作为 .o 档发布,并且让使用者们把它与其馀 GCC 连接, 认为这可能是一个绕过 GPL 要求的办法。但我们的律师说,这也不能规避 GPL 的要求, 这是不允许的。最后他们还是(只好)让 Objective C 前端成为自由软件。

这些例子发生在多年以前,但如今, GNU GPL 继续给我们带来更多的自由软件。

许多 GNU 库档是受 GNU 库档通用公共许可证(GNU Library General Public License)保护的, 但并非都是如此。 Readline 是受到一般的 GNU GPL 保护的一个 GNU 库档,它的功能是执行命令行编辑。 一个月前,我发现了一个用来运行 Readline 的非自由程序。我告诉开发者,这是不被允许的。 他本来可以把(我们的自由的)命令行编辑程序从他的程序中删除,但他没有那样做,而是在 GPL 许可证保护下重新发布了他的程序。现在这个程序已经成为自由软件了。

那些编写改进 GCC 的程序师(或者是编写了 EmacsBashLinux、或任何一种 GPL 覆盖下的程序) 往往是受雇于某公司或大学的。当他们想把他们所做的改进融入(自由软件)社团, 把他的代码放进新的发布版本时,他们的老板也许会说,嗨,嗨!你们的代码属于我们, 我们不想让别人来共用,我们已经决定把你改进过的版本注册为私有软件

这个时候, GNU GPL 就可以发挥作用了。程序师将警告他们的老板,把那些改进了的版本注册为私有软件(按照 GPL )将是侵犯版权。现在老板只有两个选择:要么把新代码作为自由软件发布,要么就不发布。 老板们差不多总顺应了程序师的选择,代码进入了新的(自由软件)版本。

GNU GPL 不是好好先生。它对人们有时想做的某些事情说。 有些使用者说这不好: GPL “拒绝接纳某些自由软件社团所需要的私有软件发展者。

但并非我们拒绝接纳他们进入我们的社团,而是他们选择了不进入。他们既然决定把软件做成私有的, 那他们就是决定不进入我们的社

 

团。成为我们社团的成员意味着与我们协作;如果他们不想进来的话, 我们也不能拉他们进来

我们所 做的就是提供一个诱因来使他们加入。 GNU GPL 就是根据我们现有的软件设计来作为一个这样的诱因的:如果你们让你们的软件成为自由的,你们就可以使用这些代码。 当然,这并不能把他们完全争取过来,但有时可以争取到一些。

私有软件的开发对我们的社团毫无贡献,但其开发者却常常有求于我们。 自由软件的使用者能够献给自由软件发展者赞誉和感激,但当商业公司告诉你,让我们把你的套装程序置入我们的私有程序,你的程序便会被成千上万的人使用时,这会是一个极大的诱惑!(译注:这 是强调自由软件与开放源码软件的区别, 开放源码为了争取更多的用户-这有可能使他们忘掉真正的目的-自由,自由软件的目的是争取自由, 更多的用户只是手段)诱惑的力量的确可能十分巨大,但从长远来看,只要我们努力抵制它,我们就会更好。

当诱惑和压力是以间接的方式出现时, 要想通过一个已经采用迎合私有软件的政策的自由软件组织去辨别它们是很难的。 X 联盟(及其继承者开源社团)提供了一个例子:过去是由制作私有软件的公司提供赞助的他们, 十年来都一直在致力于劝说编程员不要使用左版 。如今,开源社团已经 使 X11R6.4 成为非自由软件 , 而我们中那些曾经抵抗那种压力的人为我们所做的感到高兴。

[1998 9 月, X11R6.4 以非自由条款分发后几个月,开源社团改变了他们起初的决定, 以 X11R6.3 曾经使用过的 非-左版 自由软件许可证再分发了 X11R6.4 。谢谢你们, 开源社团--但是后来的这个改变并不会使我们从事实中得出的结论无效,这个结论就是,( GPL 对私权软件所做的)那些限制是 必要的]

从实用的角度来说,一想到我们那更加宏伟的长期目标,就能使你有力量去抵抗这种压力。 如果专心于自由和那靠你的坚定就能建立的社团,你就会有力量来完成它。坚持下去, 否则你就将一事无成。

如果愤世嫉俗者嘲笑自由,嘲笑社团,……如果硬鼻子的现实主义者说, 利润才是我们追求的唯一理想……不要管他们,我们只需坚持我们的 左版 。

----------------

翻译:贾 星客
   
校审:张 镇环
    GNU
中译成员:马 雪萍、刘 昭宏  
   
根据20023202113时更新版本翻译