商业软件开源有什么好处?

伤心在所难免


前言

源代码是大多数计算机用户从未见过的软件的一部分,软件开发人员可以通过修改源代码来改变一个应用程序的工作方式。

开源软件(Open-Source Software,缩写OSS)是一种在开源协议下源代码可以被任意获取和修改的计算机软件,这种软件的作者在软件开源协议的规定下保留一部分权利并允许任何使用者修改和重新发布软件(重新发布的软件也要遵守开源协议),同时任何组织和个人都可以免费使用开源软件。

与开源相对应的闭源软件仅可获取编译后的二进制可执行文件,只有拥有软件著作权的自然人拥有程序的源代码。部分开源软件代码被发布到公共互联网上,被世界各地的开源拥护者合作开发,诞生了很多伟大的软件产品,比如,Linux、Android、TensorFlow等。并且,不是只有软件开发人员才能从中受益,普通用户也可以将开源软件用于任何他们想要的目的。


开源动机

现在开源软件的开发已经受到了如此多的关注,但是为什么软件开发者要免费向社区提供他们的服务呢?显然,利他主义并不是唯一的答案。

事实上,只有当一个软件开发者能够从软件项目中获得一些净收益时,才会参加到这个软件项目中,这个收益可以是直接的回报(当前的利益减去当前的成本)或者是延迟的回报(延迟的利益减去当前的成本)。

延迟的回报比如有,与开发者未来的职业发展有关,当你开发的软件非常优秀,则更容易被大公司注意到,从而有更好的职业发展平台;或者来源于自我满足,软件开发者所完成的有价值的工作,可以得到同行的肯定等等。

除此之外,营造良好的开源环境,大大有助于开发人员避免重复“造车轮”的低效开发行为。


成功开源案例

1. Linux

Linux是一个自由和开放源代码的操作系统,是目前运用领域最广泛、使用人数最多的操作系统。只要遵循GNU协议,任何个人和机构都可以使用Linux的所有源代码,也可以修改和再发布。Linux被看做开源软件发展中最著名的例子,现在其市场占有率也是位居首位,这得益于它的开源。

2. Android

Android是一个基于Linux内核的开源移动终端操作系统,谷歌以Apache License开放源代码许可证的方式授权,发布了Android的源代码。由此,各大手机制造商和运营商纷纷加入到Android阵营中,并通过与运营商、设备制造商、软件开发商结成深层的合作,建立了标准化、开放式的移动终端硬件与软件平台,在移动产业链形成了一个开放式的生态系统。

3. TensorFlow

TensorFlow是一个用于深度学习的开源软件,其提供了Python和Java的接口,用于建立各种机器学习的模型,比如卷积神经网络、循环神经网络等。目前已被超过五十个团队用于研究和开发,许多谷歌商业产品,如语音识别、Gmail、谷歌相册和谷歌搜索都应用到了TensorFlow。


总结

由上述开源软件案例可知,软件开源对行业的发展有着积极的推动作用,开源是信息技术发展引发技术革命所带来的面向未来的方法创新,是以人为本的创新模式在软件行业的具体体现。但是,也并非应该将所有的软件都开源,在软件行业的发展过程中,开源和闭源各有优势,它们将长期共存,共同促进软件行业持续、健康、稳健的发展。


以上观点仅供参考,欢迎大家关注交流!


Fortitude


赢利模式是开源软件发展的根本

开源软件的免费说至少就目前看来,可能是人们的一种误解。


让我们简单地扫描一下当前开源软件的运营模式:

第一种,软件完全免费,后续服务收费。

第二种,软件免费,没有售后服务,在软件市场成熟后,靠出售专利谋生。

第三种,应用服务提供模式。在这种模式下,软件和服务都是免费,企业按时间交纳使用费。最主要的运营模式也就是这几种,其他种类的模式其实都是这几种模式的演化和变种。


从中我们可以看出,开源软件本身的确是免费的,但开发者最初的意图其实是为了通过后续服务或出售专利等方式获利。从这个层面来说,天下的确没有免费的误餐。当然,不排除一些真正的免费的开源软件,不过这只能是一些小型的软件。


这些软件不需要集中太多人的就能开发出来,后续也不需要太多人的来维护和升级。而对一些大型软件诸如操作系统等,当前不可能成为免费的开源软件。因此说,如果开源软件找不到自己的赢利模式的话,就很难生存下去,更别提发展了。开源软件企业要想生存和发展下去,肯定得寻找自己的赢利模式。


然而,就目前来说,能通过开源软件赢利的太少了,即使像Red Hat这样的业界巨头,2004年才实现2亿美金的营业额,别的企业业绩如何可想而知。


事实上,当前无论是国际还是国内的开源软件组织和企业都是少之又少,原因何在,就是因为这些组织和企业没有找到可行的赢利模式,从而没有足够的资金支持企业持续发展下去。


高级人才是开源软件发展的瓶颈


当前,开源软件业的一致观点就是:人才数量不缺,缺的是质量。

实际上这句话更准确地表示应该是:人数不缺,缺的是人才。据业内人士分析,开源软件目前能够想到的赢利模式都是为企业服务的。但是,目前的开源企业总体上规模很小,由几个人到几十人公司都有,然而,大型企业对这样的小企业,包括几百人的软件企业,都会持不信任的态度。


然而,开源软件虽然发展几乎与商业软件同步,甚至可以说更早,但其真正以产业的形式问世,不过几十年时间。在这么短的时间里,又受限于规模的制约,不可能培养大批的开源软件人才,而缺乏开源软件人才又进一步制约着开源软件的发展,这就形成了开源软件当前面临的恶性循环。


同时,由于开源软件本身的免费,对于刚起步的企业来说,就存在资金的瓶颈,在没有投资者注资的情况下,企业就很难持续提供高薪给企业员工,这实际上也是制约开源软件发展的重要原因。毕竟,高级管理人才是从普通员工培养而来的,没有大批的后备队伍,高级管理人才从何而来啊?就目前来说,虽然开源软件的高级管理人才工资很高,但这只不过是极少数的人,对普通员工来说,工资其实并不高。所以说,从行业的角度分析,开源软件缺的可能不是人才,而是资金。大丈夫何患无妻,开源软件业有钱了又何患无人呢。


开源软件的优点

与拥有专有许可的软件相比,开源的优势在于:

灵活性:众所周知,开源软件具有很大的灵活性。其代码是开放的,这带来了极大的灵活性——人们可以根据自己的需要进行定制。

速度:数字时代的竞争比以往任何时候都更为激烈。决定公司在竞争中成功与否的决定因素之一是创新速度。好消息是,使用开源软件的公司都知道开源有助于提高速度。通常开源软件可以避免处理专有软件所面临的官僚作风,一切工作方式都快速可靠。

节省成本:开源软件的另一个法宝是节省成本。任何人都可以免费使用开源,由于注册了GNU通用公共许可,因此任何使用开源软件的人都必须确保代码也可供其他人使用。成功的开源社区为社区提供了良好的基础架构,可以充分利用社区的力量来共享和审查软件的扩展和改进。

安全性:人们常说专有软件比开源软件更安全。部分原因是由于人们普遍认为,如果源代码没有公开,那么就很难被黑客攻击。然而,事实并非这样。虽然所有人都可以随便查看开源软件的代码,这反过来可能使其更容易受到攻击,但是,由于每个人都可以访问开源软件的代码,因此开源软件中的漏洞更容易被发现,而开发人员也更容易修复这些漏洞。

开源软件的缺点

既然我们谈到了开源的优点,那么我们也应该讨论它的缺点。

不够人性化:开源项目中一个常见问题是缺乏设计和良好的人性化。与竞争对手的专有平台相比,开源软件的界面可能更难以让人们适应。当然,并非所有开源项目都是如此,但通常资金充足的公司能够更好地吸引并提供最优秀的设计师。

隐藏的成本:

尽管大家都以为开源软件可以免费使用,但实际上并非如此。在企业采用新软件时,决策者还必须考虑不同的因素。例如,不要忽视公司设置和定制软件的成本,员工培训的费用或雇用实际操作软件的技术人员的费用。即使采用开源软件不是为了商业目的,那么仍然需要投入大量时间才能充分发挥软件的潜力。

缺乏支持:通常,专有软件都有专门的部门帮助陷入困境的用户解决问题。相比之下,大多数开源软件都没有同等级别的支持。但是,开源软件的周围往往聚集了一些专门的社区,这有助于解决一些问题。但是,请记住,没有人为他们的服务付费,也可能无法解决所有的问题。

孤儿软件:专有软件享有比开源软件更长的使用寿命。使用开源软件的一个风险是,社区或开发人员(甚至两者同时)都对项目失去兴趣或转移到另一个项目。那么这个软件就失去了支持。软件的用户就会被搁浅,必须迁移到另一个平台。当然,也有大量商业软件项目停业,但强大的商业支持确实可以增加用户对软件持续性的信心。


hello周报


开源软件意味着公开、透明、免费,让人有安全感和踏实,用户还可以对其加以修改和完善。非开源意味着商业化软件,封闭和不透明、收费,用户无法对其做任何改动,但是功能和用户体验也相对完善,也有软件厂商的售后保障。


分享到:


相關文章: