开源≠白漂 别毁灭代码的这般美好(二)

开源≠白漂 别毁灭代码的这般美好(二)

首页角色扮演代号:熙攘更新时间:2024-06-07

为了重现软件界开源代码合作互助的精神,理查德斯托曼Richard Stallman起草了通用公共许可证GPL协议,只要使用者的软件有一点来自GPL协议的代码,软件代码也要跟着一起使用GPL开源协议。

公共许可证GPL协议

那些厌恶闭源软件的程序员大佬们如获至宝,纷纷选择加入斯特曼的队伍,向著名的Linux就是使用的GPL协议,在这个基础上发展出了GPLV2、GPLV3、AGPL、LGPL等协议,理查德甚至发明了一个词叫做CopyLeft,从这个词就知道他要的是和Copyright版权相对,不过问题在于这些协议只是看上去很不错,表面上它既保持了开源,又能让你使用修改后的代码获利,但实际上这两者天生犯冲,有一个很著名的词儿叫做GPL传染性或者GPL病毒,只要你的项目里包含了GPL代码,整个项目就变成了GPL,比如Linux就是用的GPLV2协议,因为这导致基于GPL协议的软件很难实现商业化,当然也有例外,基于Linux 的安卓就避免了GPL传染性,用了更为宽松的Apache 2.0协议,允许手机上基于安卓开发后的闭源,谷歌用了很复杂的方式把Linux包在内核层,规避了GPL传染性,不然其他基于安卓的UI根本发展不起来,但这事儿争议很大有,很多人到现在依旧认为安卓违反了GPL协议,其他的商业公司都在尽可能避免沾到任何基于GPL协议的代码,所以斯通曼的这个自由软件运动,只有对开源抱有极大热情的人才会以实际行动去支持。

有什么办法在保证开源的同时又能商业化呢?这个问题到1998年才算有了结果,在此之前,开源(Open-Source)这个词并不存在,基本上称呼当时的开源软件都是用自由(Free)这个词,很明显Free代表自由,也代表免费。大家的第一印象,那就是不要钱?所以这一年来自Linux用户组的一群大佬开会,从网景浏览器的事儿获得灵感,决定摒弃Free这个词,而使用Open-Source来指代开源软件,并且重新定义开源。开源与后续的商业使用分开,也就是说就算你代码开源,也可以拿开源的代码做封闭的发行版。

为了更好地制定开源规则,OSI组织也就成立了,它的主要任务就是评估开源许可证,从此开源界分裂成了自由软件基金会和开源组织两大阵营。这两大阵营分别代表了两种开源理念,自由软件基金会代表了一种极端自由主义的思想,他们认为这个世界所有代码必须绝对自由,而刚刚提到的Apache2.0,这是另一个阵营的典型代表,这些协议相当宽松,除了要求用户必须披露原始作者之外,可以闭源可以随便搞,还有BSD,MIT协议,谷歌的AOSP和Chrome,华为Open Harmony都是基于Apache2.0,这些宽松的开源协议发展出了强大的商业价值。

曾经微软因为商业的理由,选择了闭源,但现在有越来越多的公司同样因为商业选择了开源,2019年,中国信息通信研究院发布开源产业白皮书,调查了多个行业,国内已经用了开源技术的企业占比达到86.7%,有计划用开源技术的企业占比10.6%,那些大的科技公司更是积极拥抱开源。百度有700多个开源项目,阿里有1200多个,而谷歌则是高达2000多个……

时至今日,选择代码是否开源,对于那些厂商来说,已经不单单只有一个软件卖不卖钱的问题了。那些厂商更多的是将软件开源作为自己抢占商业市场和赢取口碑的一种武器,利用自己资金充足、研发速度快、流量渠道多的优势,抢先一步将实现某种功能的源码发布出去,这才是他们的核心。

欢迎大家关注“科技双面胶”查看后续文章:《开源≠白漂 别毁灭代码的这般美好(一)》、《开源≠白漂 别毁灭代码的这般美好(三)》。

查看全文
大家还看了
也许喜欢
更多游戏

Copyright © 2024 妖气游戏网 www.17u1u.com All Rights Reserved