近日,一种“开发者讨厌GPL新版本”的谬见四处流传,流毒颇深,不批不行。9月27日,在CSDN上出现一个帖子,标题是“开发者讨厌GPLv3,近半数表示永不接受”。从标题上来看,似乎开发者不喜欢GPL新版本,而且对其厌恶到“永不接受”的程度。读后,颇觉奇怪。这到底是什么一回事呢?
GPL新版本(即v3),经历一年多时间,在全球范围内,经过无数开发者的“大讨论”,听取和集中了各方面的不同意见,四异其稿,才得以在今年6月29日最后“定稿”,由美国自由软件基金会正式发布,可谓“来之不易”也。那么,为什么GPL新版本还如此讨人厌呢?难道GPL新版本里面当真存在着很大的问题?情况究竟是怎样的呢?
今年9月25日,国际知名的Evans Data集团发布一份调查报告,题为“Open Source/Linux Development 2007 v2”。Evans Data集团每年两次(分为上半年、下半年)对全球开源运动的实际情况进行详细的调查(跟踪),调查的目的是设法精确地搞清楚,开源开发者究竟在想什么,这一切往往涉及到许多方面,比如:他们使用什么开发语言、什么开发工具、参与何种开发项目、存在的主要问题(或障碍)、介入国际开源运动的深度,等等。今年下半年的调查报告,执笔人是Esther Schrindler,调查报告共计229页(PDF格式),有详细的内容目录。
在CSDN上出现的那个帖子,是这样说的:“国外媒体消息 日前的一份调查发现,只有很少的开源开发者采用了GNU General Public License Version 3。这份调查由Evans Data在当地时间公布,只有6%的开源开发者已经采用了GPLv3”,还说:“调查显示,三分之二的开源开发者表示一年内不会采用GPLv3,43%的甚至表示永不接受这一新标准——比例接近半数。另外,如果某项目或社区实施了GPLv3,开发者则不愿加入,人数是愿意加入的两倍”。我查对了此文的出处(原文作者是Darryl K. Taft),结果发现,该原文的题目为“Open Source Developers Slow to Adopt GPLv3”(“开源开发者缓慢接受GPLv3”),奇怪的是,中译文的题目却变为“开发者讨厌GPLv3,进半数表示永不接受”,明显地曲解了原文题目的内涵。我们应当承认,英文原文的作者(Darryl K. Taft)从229页的调查报告仅仅抽出几个数字,容易对读者产生误导作用,造成误解。比如,“只有6%的开源开发者已经采用了GPLv3”,从表面上看,这句话确实有问题,怎么才有6%的开发者采用了GPL新版本?细细想想,这一现象也没有什么可以奇怪的。今年6月29日,GPL新版本才得以通过正式发布,Evans Data的调查期间正好是从下半年才开始,在7、8月两个月份,能有多少开源项目转移到GPL新版本上来?实际上,有6%就不错了。至于所谓“43%的(开发者)甚至表示永不接受这一新标准——比例接近半数”的说法,也没有什么值得大惊小怪的。实际上,所谓“永不接受”的原意是“will never implement”(其准确意思是“将永不执行”)GPL新版本。为什么这么说呢?因为,Evans Data调查的所有“开源开发者”在平时执行(implement)的开源协议多达60来种,比如:GPLv2、BSD、MPL、CDDL等,其中有不少开发者原本执行某种非GPLv3的协议,一般说来,他们将不会再去执行一种不同的GPL新版本。43%的开源开发者将不执行GPL新版本,这有什么好奇怪的?这些人“将永不执行”GPL新版本,是出于某种客观需要(根据原有的习惯),这和“永不接受”GPL新版本的意思全然不是一回事,这不是(有意或无意)曲解、丑化GPL规则是什么?撇开具体的客观情况,空谈什么“43%的(开发者)甚至表示永不接受这一新标准”,有何实际意义?“永不接受”和“永不执行”是全然不同的两种含义,“implement”怎么能够说成是“接受”的意思?完全是胡说!
实际上,在我国境内,真正的开源软件(自由软件)还远远没有发展起来,但是,曲解、丑化开源软件(特别是自由软件)的种种偏见和谬论倒是不少。丑化GPL,不狠狠批评一下,能行吗?让我们还是仔细研究一下Evans Data的229页的开源调查报告原文吧!