当大多数人看到亚马逊的时候,他们可能会认为亚马逊是一个不断成长并进入新市场的零售巨头。但亚马逊几乎所有成功的核心都是开源——但你很少看到亚马逊参与和贡献。这是怎么回事?
格林喜怒无常提出这一点我不得不说他说得很对穆迪比较了亚马逊和谷歌这两家规模相似的公司,它们都严重依赖Linux和开源。然而谷歌是开源领域的积极参与者和贡献者,而Amazon在很大程度上是旁观者。
以Linux内核为例。亚马逊使用了大量的Linux操作系统,不仅为所有用于零售的服务器提供动力,也为亚马逊的网络服务提供动力——还有它自己的Kindle设备,据所有人所说,Kindle的销售非常火爆。但亚马逊没有出现在前20位内核贡献者中。(谷歌可以,不过比人们想象的要低一些——仅次于三星和甲骨文。)为什么亚马逊不更加活跃呢?
为什么亚马逊应该做出贡献
公司“应该”做出贡献的想法遭到了许多人的反对,他们认为自由/开源软件许可证是对自由/开源软件最重要和最重要的承诺。换句话说,如果许可证不要求企业或实体做某事,也不禁止做某事,那就万事大吉了。
我称之为小海豹之争。以最常见的许可证GPLv2为例,只要你尊重“四项自由”并遵循许可证,你可以做任何事情。但是GPLv2说绝对不关于用棍棒打小海豹——赞成还是反对。因此,如果您使用Linux内核创建一个自动的小海豹敲击机,那么跟随只使用许可证的人群(我们将他们称为海豹敲击者),这是完全可以的,我们不应该吵闹。
是的,这是一个极端的例子,很愚蠢。但是,坚持在正常商业行为中允许的任何行为都是可以接受的,这也是愚蠢的。GPL和其他许可证的开发并不是为了鼓励标准的商业行为“我已经得到了我的,现在让我生气”,我们不应该鼓励像亚马逊这样的公司在没有做出重大贡献的情况下袖手旁观,消费软件。
即使是最宽容的BSD许可证,也不是来自于鼓励不参与的文化——它们只是接受这样一个事实,即实体可能不希望全部或部分地做出贡献。如果没有愿意参与和贡献的社区,bsd许可的项目就不会存在。
亚马逊应该参与并做出贡献。不仅因为这将使其他公司、组织和个人受益,也因为这对亚马逊也有好处。
那些参与他们使用的项目的人有机会帮助指导他们使用的项目。他们有机会确保他们需要的功能在主线项目中,所以他们不需要自己处理这些功能。
当公司向社区推出项目和功能时,他们通常会发现这些项目和功能得到了改善——至少当公司作为一个好公民参与到它加入和/或开始的社区中时。
这对公司的开发团队也有好处。根据我的经验,许多(如果不是大多数,但我确定不是全部)开发人员就像能够与更大的社区合作。毫无疑问,亚马逊有一些强大的大脑,但并不是所有的都有。我敢打赌,很多Amazon的开发人员都愿意花一些他们的有偿时间与自由/开源软件社区一起工作。
最后——我并不害怕说这一点,尽管许多支持者似乎是——它是做正确的事.作为社区的一员,你有责任维护社区。我完全相信,如果亚马逊成为自由/开源软件的积极参与者和贡献者,它将受益匪浅,但我也认为应该比现在做得更多。
我不是说人们应该因为亚马逊不是一个重要的贡献者而抵制它,也不是说人们应该说亚马逊的坏话。但像穆迪在帖子中所做的那样,温和地鼓励这家公司是一个好主意。我不得不说,我非常喜欢亚马逊的“夏日文档”理念。多年来,我一直在劝说谷歌的同事们向文档开放GSoC,或者创建一个文档程序。但是为什么谷歌要承担所有的责任呢?文档正是亚马逊的拿手之处——正如穆迪指出的那样,公司可以通过发布Kindle版本的文档而受益。
你觉得呢?你是跟海豹俱乐部的还是跟投稿人的?