在这篇文章里,艾伦·图灵的《好绿色地球》到底是“开源”吗?提示可怕的风琴音乐。是时候谈谈“专有”软件了。一个简短的开源哲学和软件的历史一个简短的世界上运行的大规模开源项目列表,OSS和专有软件的优缺点OSS如何改变了整个互联网OSS和InternetOpen源代码服务器技术的现状到处都是开源CMS软件运行几乎所有网站大部分前端代码都是开源的(某种程度上)如何为你选择合适的OSS复杂性和用户友好性之间的权衡评估生态系统关于OSS
的未来,你想知道更多关于互联网的工作原理吗?你想学习如何为你的企业或网站选择合适的(开源)软件,并在此过程中学习一些书呆子的历史吗?或者只是阅读一些过时的、晦涩的文化参考资料怎么样?
最重要的是,你想了解更多关于这个软件的信息吗?它已经帮助你和你的网站每天赚钱,而你甚至都没有意识到这一点?
如果你对这些问题中的任何一个回答“是”,我就是你的人,这篇文章绝对适合你。
我在网站Planet的老板犯了一个可怕的错误——呃,我的意思是,慷慨地给了我机会详细介绍开源软件,通常被称为OSS。如果你以任何方式上网,那么你每天都会直接或间接地使用OSS。
因为它在互联网上无处不在,OSS和它周围的社区以某种方式影响着你的底线。你对公司使用的软件了解得越多,你就越有可能最大限度地发挥其积极影响,并将消极影响降至最低。这就是我来这里的目的。
充分披露:我不是一名开发人员,但我一直在修补OSS,因为我一直是一名网页设计师——换句话说,到目前为止,我大约有一半的生命。这就是我十几岁时不运动或不交很多朋友的原因之一。对于那些书呆子来说,我的第一个Linux发行版是Mandrake,就在他们与Conctiva合并制作Mandriva之前。对你们其他人来说,我很抱歉你们不得不读到这些。
所以拿一杯含咖啡因的饮料坐下。我将带您了解有关OSS的所有信息,包括它是什么、它来自哪里,以及对您的业务最重要的优缺点。从现在开始,我会尽量让事情不那么乏味。但没有承诺。
在艾伦·图灵的《绿色地球》中,什么是“开源”呢
你会在互联网上找到一些OSS的定义,这些定义非常技术化。他们将讨论GNU GPL、MIT、Apache等软件许可证,或知识共享许可证的一些变体。以下是所有这些的简化版本:不要偷东西。对于本文,您不需要了解更多的法律信息。感谢上帝。
与其说是所有的技术术语,不如说是OSS的总体概念,以及背后的理念:
真正的开源软件就是:开放。构成该程序或应用程序的源代码可免费提供给公众。任何人都可以访问、复制或修改OSS代码,以制作自己的软件版本。他们甚至可以在上面贴上自己的名字,如果愿意的话,还可以把它卖掉。
唯一的问题是,您对OSS所做的任何更改都必须发回“上游”换句话说,您必须将修改后的代码发送回原始软件的开发人员,以便他们能够看到它。此时,他们可能会选择将您的更改集成到原始软件中,并与社区共享更新版本。因此,每个人都从其他人的创新中受益。
整个OSS系统基于以下原则:
你应该拥有你的软件,并且可以用它做任何你想做的事情,无论你是付费购买的还是从社区维护的项目中获得的。
您应该能够确切地了解软件中的内容,以及它在各个级别上的具体功能。当然,这需要编程知识,但如果你有这些知识,代码应该是可用的。你的软件永远不应该监视你。开发人员应该尽可能地共享他们的代码,以便其他人可以改进。从理论上讲,如果每个人都能检查源代码,那么漏洞就会更快地被发现,因此很难将病毒或间谍软件植入软件。把它贴在那个男人身上。不要相信超过30岁的人。(这是20世纪60年代的参考资料,请查阅。)
我确实喜欢这场运动的务实方面,这可能比自由软件运动更严格的意识形态承诺更有效。
我个人反对这样一种观点,即我们必须选择一种只关心实用性的二元选择,或者完全专注于事物的意识形态方面。”
不足为奇——Reddit用户
如果上述原则听起来很理想,那是因为它们是理想主义的。开源运动是由梦想远大的活动人士发起的。然而,在实践中,每个开源项目的运行方式都略有不同,具体细节在该软件的许可证中定义。一些操作系统甚至包含了一些专有软件(基本上是受保护的机密内容,接下来是详细信息)。艾伦·图灵是数学家、逻辑学家、密码分析师和理论生物学家。他被认为是理论计算之父,如果你对二战时代的风格感兴趣的话,他是一个书呆子式的时尚偶像。别用谷歌搜索他是怎么死的,因为那太令人沮丧了
提示可怕的管风琴音乐。是时候谈谈“专有”软件了
开源软件是免费提供的,技术上属于所有人,而专有软件则与此相反。它由一家公司或个人所有,只有在他们给你许可证的情况下,你才能使用它。通常,你必须支付许可证费用。
然而,有时候,你可以免费获得宝贵的许可证,这通常是人们所说的“免费软件”的意思但在这种情况下,你只能免费使用该软件。它不是你的,你不能以任何方式改变它。
开源运动的最初创始人认为这是错误的、不道德的,甚至是邪恶的。(嘿,我说他们是热情的活动人士。)如果你看不到软件中的代码是什么,那么你就不一定知道它是否包含间谍软件(企业、犯罪或政府)、某种病毒,或者其他你可能不想要的东西。如果软件开始干扰你的电脑,即使是由于一个错误导致的意外,你也无法修复它。
开放源码软件运动中最强硬的领导者不允许任何专有软件进入他们的机器,甚至连MacOS和微软Windows这样的操作系统都不允许。从技术角度来说,操作系统(OS)是一个软件层,它将服务器作为硬件(计算机的电子设备)和应用程序(谷歌Chrome、微软Office等)之间的桥梁。
那么,如果你不打算使用Windows或MacOS,操作系统的替代方案是什么?实际上有几百个,但知道的人并不多。这两个大的版本被称为Unix和GNU Linux(大多数人只说“Linux”)。
大量(如果不是大多数的话)连接到互联网的服务器运行这两个操作系统中的一个,或者它们的衍生产品,包括Ubuntu、Debian和Red Hat。顺便说一句,Android手机操作系统基于Linux,而MacOS基于Unix。就我自己而言,我不会说专有软件不道德或邪恶。我有点伤心。一方面,如果我们可以拥有数据隐私(几乎所有OSS倡导者都在为之奋斗),为什么不能有私有编程代码呢?
另一方面,看看苹果,它似乎在无休止地寻求让人们更难修复自己的设备。这相当于约翰·迪尔(John Deere),一家农业设备公司,试图合法地限制农民停在农田里修理拖拉机。强迫人们支付更昂贵的支持和维修费用肯定会伤害小企业,这是OSS正确地着手纠正的一个不公平现象。谢天谢地,越来越多的州和国家正在依法为其公民确立“修复权”。这是一个积极的步骤,但如今,主要的问题来自软件的销售方式。你不会像拥有拖拉机或其他实物产品一样拥有它;它只是授权给你的。许可证可能是永久性的,但在法律上,它与真正的所有权截然不同。您拥有使用该软件的权利,但该公司或开发人员拥有该软件本身。这一切都让软件进入了一个模糊的法律领域。它似乎既被视为一种产品,如搅拌器,也被视为一项知识产权,如商标搅拌器设计或歌曲。
当你的软件一切正常时,很难看出专有软件和开源软件之间的区别(除了价格标签)。当业务蒸蒸日上,你不记得上次服务器崩溃是什么时候,谁在乎呢?然而,当出现问题时,OSS和专有软件之间的差异就非常重要了。下面我还有很多话要说。但首先,我们来看看OSS从何而来。