本文最初由Shadowsocks开发者clowwindy发表在Shadowsocks-windows的issue#293,现已被删除。

Background: Shadowsocks-windows基于GPLv3协议开源,某项目基于Shadowsocks-windows进行二次开发却并没有按协议要求放出源代码。

那是自然的咯。这边加了什么功能,它马上扒过去合并了。它那边加了什么却不会贡献出来给其他人用,久而久之,不就是它那边功能更多了吗。

一直以来我什么都没说是因为我对他还有点希望,所以得给他一点面子不是。一开始我还只是纳闷他为什么不发 pull request,过了一段时间我才明白,这个世界上也有这一类的人。不尊重 GPL 就算了,把作者名字换成自己的,还在主页上加上官方的字样。为什么我们这边反而不说官方呢?因为我希望这个项目是没有官方的,人人都是贡献者。想不到这个社会人人都围着官转,人人都巴不得当官 。

既然他没有尊重别人劳动成果的意愿,那他那些不开源的理由想必也只是借口。说因为加了一些试验性功能会不兼容所以暂不开源。他弄了一个混淆 TCP 协议头功能,在界面上标注提升安全性,吸引用户打开,然后安装他自己的不兼容服务端。然而我分析了一下之后发现这个功能的设计就是想当然,用得多了以后反而会增加特征。如果你真有什么试验性功能,不是更应该开放出来让所有人帮你分析么,大家一起讨论么?在加密算法领域,只有经过足够多人和机构的审视的算法,才能视作是安全的,闭门造出来的怎么能用。。

当然啦,大部分用户才不会管这些,他们不会分析你是不是真的安全,也不会做道德判断,只要他们觉得好用就行。所以可以看到,这种环境下开源其实并没有什么优势,只不过为一些人抄袭提供了便利。这种环境下最后留下来的都是这些人。

我一直想象的那种大家一起来维护一个项目的景象始终没有出现,也没有出现的迹象。维护这个项目的过程中,遇到 @chenshaoju 这样主动分享的同学并不多。很多来汇报问题的人是以一种小白求大大解决问题,解决完就走人的方式来的,然而既不愿提供足够的信息,也不愿写一些自己尝试的过程供后人参考。互帮互助的气氛就是搞不起来。对比下国外的社区差好远。

最适合这个民族的其实是一群小白围着大大转,大大通过小白的夸奖获得自我满足,然后小白的吃喝拉撒都包给大大解决的模式。通过这个项目我感觉我已经彻底认识到这个民族的前面为什么会有一堵墙了。没有墙哪来的大大。所以到处都是什么附件回帖可见,等级多少用户组可见,一个论坛一个大大供小白跪舔,不需要政府造墙,网民也会自发造墙。这尼玛连做个翻墙软件都要造墙,真是令人叹为观止。这是一个造了几千年墙的保守的农耕民族,缺乏对别人的基本尊重,不愿意分享,喜欢遮遮掩掩,喜欢小圈子抱团,大概这些传统是改不掉了吧。

现在维护这些项目已经越来越让我感到无趣。我还是努力工作,好好养家,早日肉翻吧。

 

ps: 对clowwindy大触的话,作为一名Android开发者,本人深有感触。国内的开源环境烂的像一坨屎,大量开发者使用开源社区的成果,却很少有人遵守开源协议。这些人只从上游merge,却并不将自己的成果反馈回去,然后大言不惭地宣称自己的项目有多么多么强大,比事实上的upstream(他们往往并不承认)牛B多少多少,与开源社区co-operate的精神背道而驰。我前段时间在微博与某商业公司争论两天之久,仅仅是为了让他们在某闭源项目release的同时附上credits,但他们宁愿花两天时间跟我吵,也不愿意花十分钟去注明。他们甚至发表了这样的言论:不管谁站在道德的制高点,我们只关心用户体验,我们是一群实干的人。试问,没有无数开发者的铺垫,你们哪来的用户体验?这样的“实干家”,还是少一点好。

在国内使用Linux内核的手机厂商有数十家,然而遵守GPLv2的仅几家而已,某些个人开发者更将自己修改后的内核作为私有财产,不仅不开源,还在代码中加入诸多限制,绞尽脑汁使内核binary只在自己指定的环境正常工作。终端用户并不懂什么是开源协议,所以这些人就会去拉拢终端用户攻击其他试图使他遵守开源协议的开发者。

而在国外,大量的开发者乐意分享自己的代码,而且不仅仅是开源,他们会严格地附上credits,甚至是reference,其他开发者的某段代码inspire了他们,他们就会在comment注明。在全球最大的智能设备交流社区xda-developers,不论技术多高,任何不遵守开源协议的开发者都会被删帖封号,而在中国,哪家论坛敢这么干?

什么时候中国的开源社区活跃了,什么时候就是进步了。闭门造车,一事无成,对开源社区的发展只有负面影响。

分类: 深井冰

1 条评论

heaven celes · 2015年12月30日 下午9:03

………………

发表评论

电子邮件地址不会被公开。 必填项已用*标注