从专有到开源的十个简单步骤

2018-05-16 08:12


这个共同福利并不适用于专有软件:保持隐藏的东西是不能照亮或丰富这个世界的。

“开源软件肯定不太安全,因为每个人都能看到它的源代码,而且他们能重新编译它,用他们自己写的不好的东西进行替换。”举手示意:谁之前听说过这个说法?注1

当我和客户讨论的时候(是的,他们有时候会让我和客户交谈),对于这个领域注2 的人来说种问题是很常见的。在前一篇文章中,“[许多只眼睛的审查并不一定能防止错误代码]”,我谈论的是开源软件(尤其是安全软件)并不能神奇地比专有软件更安全,但是和专有软件比起来,我每次还是比较青睐开源软件。但我听到“关于开源软件不是很安全”这种问题表明了有时候只是说“开源需要参与”是不够的,我们也需要积极的参与辩护注3

我并不期望能够达到牛顿或者维特根斯坦的逻辑水平,但是我会尽我所能,而且我会在结尾做个总结,如果你感兴趣的话可以去快速的浏览一下。

关键因素

首先,我们必须明白没有任何软件是完美的注6 。无论是专有软件还是开源软件。第二,我们应该承认确实还是存在一些很不错的专有软件的,以及第三,也存在一些糟糕的开源软件。第四,有很多非常聪明的,很有天赋的,专业的架构师、设计师和软件工程师设计开发了专有软件。

但也有些问题:第五,从事专有软件的人员是有限的,而且你不可能总是能够雇佣到最好的员工。即使在政府部门或者公共组织 —— 他们拥有丰富的人才资源池,但在安全应用这块,他们的人才也是有限的。第六,可以查看、测试、改进、拆解、再次改进和发布开源软件的人总是无限的,而且还包含最好的人才。第七(也是我最喜欢的一条),这群人也包含很多编写专有软件的人才。第八,许多政府或者公共组织开发的软件也都逐渐开源了。

第九,如果你在担心你在运行的软件的不被支持或者来源不明,好消息是:有一批组织注7 会来检查软件代码的来源,提供支持、维护和补丁更新。他们会按照专利软件模式那样去运行开源软件,你也可以确保你从他们那里得到的软件是正确的软件:他们的技术标准就是对软件包进行签名,以便你可以验证你正在运行的开源软件不是来源不明或者是恶意的软件。

第十(也是这篇文章的重点),当你运行开源软件,测试它,对问题进行反馈,发现问题并且报告的时候,你就是在为共同福利commonwealth贡献知识、专业技能以及经验,这就是开源,其因为你的所做的这些而变得更好。如果你是通过个人或者提供支持开源软件的商业组织之一注8 参与的,你已经成为了这个共同福利的一部分了。开源让软件变得越来越好,你可以看到它们的变化。没有什么是隐藏封闭的,它是完全开放的。事情会变坏吗?是的,但是我们能够及时发现问题并且修复。

这个共同福利并不适用于专有软件:保持隐藏的东西是不能照亮或丰富这个世界的。

我知道作为一个英国人在使用共同福利commonwealth这个词的时候要小心谨慎的;它和帝国连接着的,但我所表达的不是这个意思。它不是克伦威尔注9 在对这个词所表述的意思,无论如何,他是一个有争议的历史人物。我所表达的意思是这个词有“共同”和“福利”连接,福利不是指钱而是全人类都能拥有的福利。

我真的很相信这点的。如果i想从这篇文章中得到一些虔诚信息的话,那应该是第十条注10 :共同福利是我们的遗产,我们的经验,我们的知识,我们的责任。共同福利是全人类都能拥有的。我们共同拥有它而且它是一笔无法估量的财富。

便利贴

  1. (几乎)没有一款软件是完美无缺的。
  2. 有很好的专有软件。
  3. 有不好的专有软件。
  4. 有聪明,有才能,专注的人开发专有软件。
  5. 从事开发完善专有软件的人是有限的,即使在政府或者公共组织也是如此。
  6. 相对来说从事开源软件的人是无限的。
  7. …而且包括很多从事专有软件的人才。
  8. 政府和公共组织的人经常开源它们的软件。
  9. 有商业组织会为你的开源软件提供支持。
  10. 贡献--即使是使用--为开源软件贡献。

脚注

  • 注1: 好的--你现在可以放下手了
  • 注2:这应该大写吗?有特定的领域吗?或者它是如何工作的?我不确定。
  • 注3:我有一个英国文学和神学的学位--这可能不会惊讶到我的文章的普通读者注4
  • 注4: 我希望不是,因为我说的太多神学了注5 。但是它经常充满了冗余的,无关紧要的人文科学引用。
  • 注5: Emacs,每一次。
  • 注6: 甚至是 Emacs。而且我知道有技术能够去证明一些软件的正确性。(我怀疑 Emacs 不能全部通过它们...)
  • 注7: 注意这里:我被他们其中之一 Red Hat 所雇佣,去查看一下--它是一个有趣的工作地方,而且我们经常在招聘
  • 注8: 假设他们完全遵守他们正在使用的开源软件许可证。
  • 注9: 昔日的“英格兰、苏格兰、爱尔兰的上帝守护者”--比克伦威尔。
  • 注10: 很明显,我选择 Emacs 而不是 Vi 变体。

这篇文章原载于 [Alice, Eve, and Bob - a security blog] 而且已经被授权重新发布。


via: https://opensource.com/article/17/11/commonwealth-open-source

作者:Mike Bursell 译者:FelixYFZ 校对:wxy

本文由 LCTT 原创编译,Linux中国 荣誉推出