我知道编辑这个网站吗?

为什么闭源是错误的

此页面有一些关于必须与开发软件进行战斗的战争故事,而您不需要战斗。

There are places for closed-source. Research, however, is only impeded by closed-source.

Java 版 QuickTime

QuickTime for Java 是 QuickTime SDK(软件开发工具包)的一个小组件。理论上,它应该可以轻松创建 QuickTime 之上格式的电影。实际上,这是一个麻烦:

  • QuickTime 仅在 Windows 和 macOS 上受支持。再见,Linux 用户。
  • 64 位 macOS 不支持 QuickTime for Java。这意味着每次您尝试在该平台上编写 QuickTime 时,它都会满足未安装电影 QuickTime。再见,几乎所有 macOS 新用户。
  • QuickTime for Java 不遵循标准 API(另请参阅下面的“Java 媒体框架”)。所以你永远无法编写一般的电影代码。您总是需要 QuickTime 的特殊情况。再见,不幸的开发者。

总而言之,QuickTime 只是一个麻烦,如果不是苹果公司在每台计算机上都默认提供它,这种格式已经消亡了:.avi 格式是一种更加开放和广泛传播的格式,它可以完成 QuickTime 所能做的一切,甚至更多。

如果 QuickTime for Java 是open source,那么我们至少可以对这些问题采取一些措施。

变换J

长期以来,TransformJ插件套件都是闭源的。由于它是为了科学,我们询问作者是否可以查看来源。科学过程必须透明,以便其他科学家能够理解和质疑。科学上的怀疑不是因为不信任,而是因为我们都是人类,而人类都会犯错。

令人高兴的是,TransformJ 的作者 Erik Meijering 同意让我们重新分配源代码,为了这个目的:让您能够理解它是如何工作的以及为什么。

因此,TransformJ 这里说的是为什么闭源是错误的例子,不如说是为什么open source是正确的!

Java 媒体框架

太阳从来没有真正开放过,除非有必要。

它开放Java源代码只是因为IBM和其他公司面对了Harmony项目,对他们构成了巨大的威胁,该项目基本上是对完整Java套件的open source重写,通过Apache License获得许可(它允许公司获取源代码,它制作的产品,并且永远不会向原始作者返还任何东西 -与GNU Public License)。如此巨大的反对,Sun有一个机会来保持他们的优势(已经有了完整的实现):让他们的Java版本真正§§8§§§,并以一种保证其他公司本身不利的方式进行许可,即通过GNU Public License。从某种意义上说,这个许可证的使用损害了它的初衷:作为对抗IBM及其国防商业武器。但普通程序员至少在这个过程中有了一些好处:真正的(公平的)自由代码。

可能几年时间,Java Media Framework 才能以真正的 open source 方式获得许可:目前,您可以下载二进制文件,但不能重新分发它们;您只能在您相当严格的研究许可下获得源代码,并且只有在请说明的情况下,也不能重新分发它们。

由于这些限制,每个人从一开始就知道API一定要失败。如果你不得不依赖一家公司的突发奇想,如果他们愿意的话,他们可以收回你的软件的基础,那么你甚至不会开始编写该软件。

苏珊

听说过SUSAN边缘检测器吗?如果你有,那么你就是少数幸运者。为什么?这是一个悲伤的故事,劳永逸如何彻底摧毁你的研究价值。

诚然,SUSAN 不是闭源的,但对于所有“实际”问题来说,它是闭源的。它的许可证非常严格(很像 Java 的“Java 研究许可证”),并且它非常强烈地指出该算法有专利,而且你不能随意使用任何东西。

其中,this是Java中SUSAN算法的唯一改编,它甚至不检测边缘,而只是平滑图像。它使用依赖于平台的SUSAN库,该库仅针对32位Linux和Windows系列,这与Java应该提供的平台无关性背道而驰。

是的,他们想保护他们的研究——我们甚至不要试图欺骗自己相信(或者假装侮辱人们的天赋)这与“财产”有关——通过申请算法专利,将代码成功安置在非常严格的许可范围内。不幸的是,他们完全阻止了他们的研究得到加强、广泛使用,甚至对任何人都没有意义。