为组织采用开源软件的利弊是什么?有没有人做过这件事,以及他们采用的软件的一些例子以及它是如何使用的?
通常捐款的出现是因为人们将其作为一种爱好,那么我们如何才能确保它会得到持续的支持呢?恕我直言,如果是专有软件,则对组织(金钱)有激励作用,只要软件有利可图,他们就会继续雇用人员来保持其开发。如果我错了,请纠正我。对于可能反对使用开源软件的建议的经理,我可以期待哪些论据?
为组织采用开源软件的利弊是什么?有没有人做过这件事,以及他们采用的软件的一些例子以及它是如何使用的?
通常捐款的出现是因为人们将其作为一种爱好,那么我们如何才能确保它会得到持续的支持呢?恕我直言,如果是专有软件,则对组织(金钱)有激励作用,只要软件有利可图,他们就会继续雇用人员来保持其开发。如果我错了,请纠正我。对于可能反对使用开源软件的建议的经理,我可以期待哪些论据?
“开源”一词仅描述了一种许可模式。严格来说,唯一能保证你拥有的优点是许可证赋予的自由,没有你能保证拥有的缺点。
有许多开源产品也是商业化的,由公司创建、维护和支持以获取利润。还有许多开源产品由志愿者维护,但也有商业支持。例如,如果您购买 Red Hat Enterprise Linux,那么 Red Hat 将支持您使用它附带的所有产品,甚至包括由志愿者维护的产品。
至于如何确保会有持续的支持,你不能。不是开源,不是专有软件,不是任何东西。使用开源,如果社区足够大,即使当前的维护者放弃它,您也可以有理由相信社区将继续维护它(可能以新名称),并且您可以选择自己维护或雇用别人去做。自己维护它可能不是一个有吸引力的选择,但它可以在紧要关头挽救生命。
对于专有软件,如果作者决定停止维护它,那你就很不走运了。例如,考虑成千上万的 Visual Basic 6 用户。
您的评论说明了开源软件的主要优点:
[在]专有软件的情况下,对组织(金钱)有激励,只要软件有利可图,他们就会继续雇用人员来保持开发。
问题在于,如果它不再有利可图(例如,因为代码非常稳定以至于人们购买它并继续使用它而无需升级),那么该软件的用户可能会因越来越多的运行良好的稳定产品而陷入困境古老的机器,直到有一天机器崩溃,或者必须升级到新版本的操作系统才能运行其他系统,但由于不再维护专有软件,您不得不放弃应用程序. 事实上,出售专有软件的公司倒闭并非闻所未闻。而且,如果您不能确保该软件有一个代码托管帐户来保护您免受供应商倒闭的可能性,那么您就会陷入困境。
如果代码是开源的并且你是明智的(你在获得产品时获得了源代码),那么你可以将旧产品移植到新系统中。这有多难取决于代码的性质和质量——但这是可能的。如果该软件是专有的,您可能永远无法选择。
问题是:“采用开源软件”是什么意思。如果你打算用开源软件 (OSS) 从根本上交换每一个闭源软件 (CSS),你将会失败得可怕。
我可以向您保证,您的组织已经在其 IT 基础设施的关键部分使用 OSS。
在我看来,您只需要正式确定 OSS 如何进入公司,以及公司是否(以及以何种形式)回馈 OSS。大多数公司需要关键任务软件的支持合同,并要求 OSS 需要通过提供支持的供应商购买。
在许多情况下,明确禁止回馈 OSS 项目,只有在 CTO/CIO 签署特定贡献后才允许。
只需确保您的策略足够灵活,以允许 IT 部门当前运行的内容。
反对开源的经理说什么并不重要。
您必须非常了解您将要使用的开源产品。
您必须确保它为公司提供正确的解决方案。您必须确信您可以在市场上找到知道或可以学习使用该产品的人。您必须了解该产品的 TCO。
然后你可以和经理争论,并给他充分的理由,公司可以从开源中受益。
请记住,最便宜的解决方案不是最佳解决方案。公司需要赚钱而不是省钱。
取决于情况,但通常,对于一个内部的、非关键的、不需要保护系统的系统,就像企业中所做的大多数事情一样,开源就像万圣节一样,只要你真的不需要关心遵循企业政策。
对于其他大的、重要的、需要保护的项目,它真的很简单。您需要参与您使用的项目并拥有一个托管该项目的内部存储库(因此您有一个与外部分支保持同步的内部分支)。问题是这些应用程序需要很长时间才能制作,并且支持了数千年。团队往往会发生很大变化,并且有很多人参与其中。有人需要并且可以分配到存储库/构建管理。
现在,如果它只是关于经理,那么它只是关于沟通和争论。通常他们害怕支持,因为它的长期成本。他们往往喜欢听到最佳实践,告诉他们这就是大公司所做的(和例子),他们也倾向于参与项目以及他们甚至或可能找到支持的其他时间。
此外,任何承包商都会很乐意支持 OSS。谁会拒绝金钱和开发 OSS 的能力。