一直以为开源软件的优势仅仅在于免费和拿来主义。今天在《程序员》上看了一篇文章发现,原来公布源代码最大的优势在于——你可以修补软件中原有的缺陷,或者根据自己的需要增加功能。
举个例子,你有一支手电筒,制造商忘记在上面装开关,你只能靠装上和卸下电池来开关手电(事实上,我的确有这么一支手电)。你觉得很不爽,想装个开关,可手电严丝合缝的结构让你无从下手。如果这支手电是“开源”手电的话,你就可以轻易拆开它,在后盖上加一个小按钮做开关。
再或者,你希望给手电装个支架,让你在仓库里翻箱倒柜时可以多出一只手来,“开源”的手电也一定能让你轻易达到这个目的。
这个优势对于初级用户的吸引力可能不大,因为他们没有软件编译的相关知识。但对于高级用户和拥有大量技术人员的公司、企业来说,价值就大了——你永远无法想像50个电工围着一支没有开关的手电无从下手,只能老老实实的等着制造商推出一款有开关的新版本手电。
有同感。
我觉得开源的优势在于两点:
一是不用重复发明轮子,可以利用集体智慧。
二是可以根据需要量身定制。
有没有授权费倒是很次要的了。