如今,无论是否了解开源软件(open source software,OSS),各个领域的人都会用到它。
不过开源软件刚问世的时候并非如此。上世纪60年代末至70年代初,封闭式软件盛行,人们对开源软件还没有什么概念。值得注意的是,虽然开源软件在当时就存在,但是还没有“开源软件”这个表达。因此,没有法规来制约专利软件和免费软件。
在软件产业还没有兴起的时候,人们意识到了它的潜在价值,并想从中分一杯羹。但是,即使人们意识到了这一点,毫不夸张地说,在当时创造的软件的价值几乎是不稳定的。但凡有一个错误的指示,系统就会崩溃。刚开始有一套零件和操作手册,需要根据上面的指示来组装。
随着计算机革命的到来,一些爱好者会聚到一起,把编写代码当作消遣。于是涌现了如今的许多商业巨头,他们也参与创建了开源软件。软盘大约在70年代中期出现,那时没法在计算机上安装外部软件,除非自己进行编写。许多软件开发爱好者会在技术杂志上公开自己的代码,供大家复制操作。虽说繁琐但也没有别的选择,一个小错误就会导致编码的失败。最棘手的是没有智能感知或代码补全的协助。不过代码不仅免费,还可根据个人需求进行调整。
什么是开源软件?
随着科技的进步,更多复杂的操作系统和软件也纷纷出现,大家开始将自己编写的代码卖给一些企业,或直接卖给顾客。但也有小部分人仅仅想让大家看一看自己创作的代码,挑其所用。这期间,微软和苹果公司的上市、以及已建立的一些公司如施乐(Xerox)和IBM都推动了微型计算机革命的进展。
众所周知,目前苹果、微软、IBM是世界上较大的企业之一,而它们之间的竞争很大程度上来自开源软件的变革。当今许多初创公司以及一些大型企业都会在已有开源软件代码的基础上打造自己的产品,怎么说这都比一切从零开始容易得多。
让我们以微软公司为例来更好地理解这一点,它利用Chromium的开源软件代码对其Edge浏览器进行了重新改造。谷歌浏览器也如此,而且更能说明这一点。作为一个软件公司,微软建立了操作系统和其他一些软件,提供给IBM等公司,它们会复制代码并安装到其计算机上,而每次代码的复制都会收取费用。微软当时没有遇到什么挑战,它垄断市场获得了巨额利润,事业风生水起。直到开源软件变革的到来,市场才发生改变。不过微软仍是领先者,仍保持着垄断的地位。但消费者开始抱怨购买的软件不允许他们选择自己想要或不想要的东西。
开源软件革命就这样毫无征兆地到来了。Linux创始人林纳斯·托瓦滋提供了大力支持,网景公司(Netscape)命名了开源软件导航,创建了第一个浏览器网景导航。林纳斯·托瓦滋一开始就大力支持开源软件,那时每个人都熟知或者已经用过他的Linux系统。像理查德·斯托曼和林纳斯·托瓦滋这样的权威人士也提供了支持。理查德·斯托曼是这场开源软件运动的的领袖,同时也是GUN工程的发起者。
开源软件的起源
在详细介绍之前,先了解一下开源软件究竟是什么。
开源软件意味着人们可使用其开放源代码、设计记录格式或内容。通常来讲,它主要与开源软件的模型有关。开源软件和其他的一些软件都会在此模式下发行,这也是开源软件运动的一部分。
只有推动开放源软件运动的开展,人们才会更广泛地应用它,虽然迄今为主用户基础仍不大。
开源软件运动是什么?
开源软件运动致力于传播开源软件的理念。支持开源软件理念的软件开发人员/程序员为开源软件的发展做出了贡献,他们自愿为软件开发编写或改编程序代码。
“开源软件”要求不能阻碍任何团体或个人从中获取或编辑开源代码。通过这种方式,任何人都可以利用改编开源代码。而修改代码的任务也会再次移交给程序员,这些人在开源队伍中的工作都与软件有关。
如此一来,所有参与到代码编写过程中的人员身份都会公开,代码的变化也会一直有所记录。单独给一套代码找主人很难,我们能做的是不断保持开源软件运动的思想。因为这些目标,我们有了高质量的程序设计,同时也跟那些志同道合的人协作推进了开源科技的进步发展。
开源软件为何优于专用软件?
相比专用软件,开源软件有更多的优势。首先,要知道OSS是一个涵盖性术语,包含各类软件,如操作系统、核心程序、浏览器、播放器和办公应用程序。所有主要的开源软件公司与专有软件公司开展合作会更有利,不过也有不合作的,例如谷歌浏览器与IE浏览器。前者是在Chromium浏览器的基础上建立的,它在各个方面都优于IE浏览器。大部分程序员/软件开发者首次使用系统时就用IE浏览器下载了谷歌,他们了解自己创造的工具。
开源软件取胜的原因有哪些?
1. 开源软件为最终用户提供了一定水平的定制化服务,这恰恰是专有软件做不到的。用户自己就可享受定制化服务,或者借鉴其他内行人的技术。而专有软件只支持其母公司允许的定制化服务。
2. 如果遵守软件使用条例的话,便能随意使用开源软件或者对其进行改造。但对于专有软件,首先通常需要一定的费用,再者也不能改动,因为没有软件代码。有时可能还要订阅该软件,按月收费,从钱包里扣钱。使用他人设计的产品时收费是不违法的,但这种行为有时会导致用户分布的不均衡,比如市场垄断问题,不限于软件市场,基本上其他市场也如此。
3. OSS旨在助推世界进步,因为这些程序员乐于助人,不追求利益回报,然而当其竞争对手也想在世界范围内制造大影响时,往往会与利益捆绑在一起。
4. OSS背后的贡献者很多,帮助提升功能和速度,按照世界标准给用户提供安全保障。尽管一个项目会有很多人参与,但难免有差错。专有软件开发商有指导团队,工作对象就是软件。后者也有好的地方,在某种程度上他们比OSS团队更有组织,只不过创造力受到了约束。
5. OSS团队不会区别对待新手、老手或者有一定积累的人。但在专有软件团队中,雇员大部分经验丰富,如此一来软件会更符合标准。
开源软件对世界产生了怎样的影响?未来如何发展?
开源软件已经改变了软件行业,并使其朝着好的方向发展。如今,几乎没有软件会利用和垄断用户,因为用户可以选择其他具备相同功能的开源软件,而且是免费的。随着越来越多的用户和开发者关注到各种OSS的可用性,更多的开发者也会参与进来,为美好的未来做努力,这对世界也会产生深远的影响。
目前,OSS在大众中的普及度并不高,因为没有丝毫相关的广告宣传,普通用户自然而然不知道除了收费软件还有免费软件可以选择。
对开发者来说也可以提升他们的个人技巧。
你可以从从非常有经验的并且从事该项目的开发者那里,可以学到新的技能,有效解决问题。
如果你开发或者发行自己的OSS系统,相关专家就有可能注意到。他们会对你的编码产生兴趣,帮助你,从而使你的软件更受欢迎,使你在同行间小有名气。
你会加入一个团体,至少在编码这方面,大家有着共同的目标和想法。
未来OSS会胜过其竞争对手,因为现在用户基数已在增长。
不断增长的用户和开发者数量意味着对软件功能需求更多,保障措施也要跟进。
软件开发者队伍庞大,可以不断实现产品的更新,弥补大量的软件漏洞,软件安全有保障。
值得注意的是,开源软件是一种趋势,但不一定意味着专利软件会消失。可以看出两大竞争对手都在互帮互助的道路上前行。倘若没有竞争,软件市场将变成一潭死水,它们的性能也一如既往,并且别无选择。只要每个人意识到开源软件的价值,OSS时代便指日可待。