谁将从GPL许可的Java中获益?
Sun 公司宣布将以 GNU GPL 许可发布 Java,这让许多批评者(包括我自己)感到困惑,他们曾担心该公司无法做出如此大胆的举动。 非常正确的是,它赢得了黑客世界的赞誉。 但是 Sun 公司与自由软件的关系并非一直如此田园诗般美好。
例如,Sun 公司没有支持 Dave Miller 将 GNU/Linux 移植到 SPARC 平台,毫无疑问是因为它将这个年轻的新兴事物视为 Solaris 的竞争对手。 从某种程度上说,这种对抗是具有讽刺意味的,因为在 SunOS 时代,Sun 公司的精神与自由软件世界非常接近。 正如在那段时间在那里工作的 Larry McVoy 几年前告诉我的那样
SunOS 是一个源代码库,工程师们投入精力更多是出于对知识正确性和卓越性的热爱,而不是为了我的薪水或股票期权的回报。 那是七八年的时间,工程师们在周末坐在那里打磨它。
此外,如果 Scott McNealy 听取了 McVoy 的意见,Sun 公司本可以抓住先机,并在早期成为自由软件世界的领导者。 在他 1993 年 9 月和 10 月撰写的 Sourceware 操作系统提案中,McVoy 建议 Sun 公司应该放弃其 SunOS 4 版本的 Unix 源代码,以便创建一个统一的 Unix 平台来对抗迅速崛起的微软。 更令人惊讶的是,作为替代方案,McVoy 建议 Unix 行业采用 GNU/Linux 作为这个通用平台——这在当时是一个大胆的举动,当时 Linux 才刚刚两年。
当然,事实并非如此。 相反,当 GNU/Linux 实力增强,自由软件的力量变得显而易见时,Sun 公司在场边持怀疑态度地观望——而微软正如 McVoy 预测的那样,成为了计算领域的主导力量。 Sun 公司迈向开放的第一大步是在 2000 年,当时它提供了 StarOffice 的源代码,并建立了新的 OpenOffice.org 项目来开发它。 显然,希望是这会削弱微软的 Office 套件,额外的好处是它没有威胁到 Sun 公司的主要收入来源——Solaris 和 Java。
OpenOffice.org 已经发展成为最重要的自由软件项目之一,并且很可能成为将人们转变为开源桌面的关键程序之一,正如我在其他地方所论证的那样。 但是,从开放 StarOffice 到开放 Java 的道路是漫长而痛苦的——这证明了 Sun 公司内部某些人仍然对自由软件抱有残余的怀疑。
既然事情已经完成,并且得到了 St IGNUcius 的正式祝福,那么自然而然的问题是:谁是赢家和输家? 我不想在已经提供的众多答案中再添油加醋——这里有最好的答案之一——除了反思一个似乎没有被过多提及的方面。
显然,在这件事中最大的两个“赢家”是 Richard Stallman 和 GNU GPL。 后者尤其因 Sun 公司的选择而得到极大的加强。 毕竟,就在不久之前,Sun 公司现任 CEO Jonathan Schwartz 还警告反对 GNU GPL,理由是它对用户施加了“相当掠夺性的义务,将他们所有的知识产权交还给世界上最富有的国家”,正如他所说。 Sun 公司本周响亮的认可将在很大程度上缓解其他人对著作权许可理念的担忧。
但是,这种 GPL 的友好举动有一个有趣的连锁反应。 这意味着 Sun 公司的 Java 软件最终可以进入像 Debian 这样更严格的发行版,Debian 传统上在 Sun 公司的 Java 许可方面存在问题。 这很重要,因为最近的事件表明,像 Red Hat 和 SuSE 这样的“商业”发行版在面对财力雄厚的专有竞争对手巧妙的侧翼包抄时是多么脆弱。 这使得任何主要由公司创建和支持的发行版都面临着类似阴谋诡计的风险。
在这种背景下,软件自由的堡垒是由程序员而非企业运营的发行版:它们不受专有竞争对手为削弱和分裂其商业竞争对手而采用的各种营销策略的影响。 在这些发行版中,最杰出的是 Debian 及其衍生版本,因此任何增强其范围和实用性的事物——例如添加 Sun 公司的 Java——对我们所有人来说都是一次巨大的胜利。
Glyn Moody 在 opendotdotdot 撰写关于自由软件的文章。