Good good study, day day up

aleung的学习笔记, aleung的idea

自由软件质量不如软件企业自己开发的可靠?

在软件企业中开发产品/项目,做技术选型时经常会听到的一个说法是:选择开源自由软件,会不会质量不够有保障?还是我们自己做好一些。

自由软件遵循的是完全的市场经济,面对的是残酷的竞争。如果项目做得不好,满足不了需求,就会无人问津而最终被废弃掉,使用者才不心痛已经有多少人力物力已经投入到这个项目中。项目设计太差,代码太烂,同样也吸引不了贡献者,导致原有贡献者的离开或者另起炉灶。对比的看,软件企业中开发的软件项目就如受着国家保护的国企,虽然也面临外部竞争,但在内部怎么也还是自家孩子,再烂也很难让大家承认它的失败,要放弃更加是艰难的决定,往往意味影响好些人的仕途。因此,你会看到很多企业开发的软件项目很烂,因为它们本来应该死掉的,但被强制维持着生命。

从软件开发者的平均水平这个角度来看,自由软件项目也优于企业开发的软件项目。当然,这里谈的自由软件项目是指有一组稳定贡献者有明确蓝图的,这样才能与企业项目相比较,个人练手的项目不算在内。试想一下,在一个软件企业里面,水平足矣为自由软件提交代码的开发者占了多少比例?但是那些尚不能为自由软件项目提交代码的开发者,在企业里面可是天天写代码的,甚至大部分代码是出自他们之手。

泛泛的说,在某个领域,如果可选的自由软件有不少,那么排名前列的项目,质量基本上不需要太过担心。

上面是我对自由软件质量担忧的看法,但这当然不代表就可以随意选择使用自由软件,技术选型中需要评估的东西还有很多。