每年都有很多”社会活动家“搞出这样或者那样的活动,口号一个比一个响,但大部分都仅是昙花一现。现在开源不但活了下来,而且发展势头迅猛,壮大速度很快。在共享精神的背后,是真的存在时长需求和经济的规律的。
Linux从开源以来,发展的速度一直很迅猛。当然,这也离不开Linux的项目经理LInus的功劳。开源可以满足很多公司,尤其是大公司的业务和安全的需要,这给开源提供了更大更广阔的的时长。
有人说,闭源是对公司专业化的信任,也有人说,开源是全世界都有相似需求的人组成的一个联合体。在系统的管理和维护过程中,大家或多或少都会遇到相似的问题。而如果是闭源的企业,当遇到问题时,系统的管理员只能将BUG提交给公司,除此再无他法。但如果是开源的系统,每个人在解决自己遇到的问题的同时,也都潜在的解决了其他人将来可能面对的问题——这就是开源的好处之一。
但是,开源也并非是万能的。在服务器领域,Linux势不可挡。但在桌面领域却举步维艰。创作者和使用者在UI领域十分难分离,在很多方面,为了使不太习惯命令行的人便捷地进行操作,这些人基本都不是改写代码、打补丁的人群。Linux社区本身意愿并不强,因为增加那么多贴心的小功能,让鼠标点来点去,不如一长串命令行输入来的痛快高效;二则也很难理解到用户的痛点。
开源软件想要在大众领域取得成功,还需要商业的推动。海外有很多技术大牛在这方面有比较成功的案例,想要了解海外设置的人可以通过QuickQ来访问——quickq.io。在其他方面的软件中,比如WordPress,帮助很多人声称博客网站的后台,就是把网站定制傻瓜化+商业化的模板。这个定制的过程本身并没有太多的创造性,并且需要为用户的习惯和误操作进行很多的折衷和妥协,而一般只有商业化的公司,才会有动机去进行这些看似琐碎,但是会显著提高用户满意度的事情。
上面这就是从公司层面上,开源得以流行,甚至能得到商业公司支持的原因。因为商业公司自己也需要用这些开源的技术,那么和其他的公司就这一个项目上组成一个『开源互助小组』,是对彼此都有好处的。
从程序员个人的角度来说,程序员个人也有动机去参与开源的开发。因为开源就是程序界的快男快女。在闭源时代,要想当程序明星为大众所知,是一个很难的事情,因为一个人程序写的牛,往往也是隐藏在公司的产品身后,公司可以决定把这个曝光度加到公司的身上,还是某个程序员的身上。但是开源相当于让一个人的作品直接暴露在大众的眼前,很多人就是通过自己的开源作品,和Github上的Repo作为简历,找到了非常好的工作。所以自己的开源项目本身,就对程序员的职业生涯和声誉产生正面的影响。
所以自己免费的把代码拿出来给别人用,并不一定是一个纯利他的行为,因为这本身也是对市场发出的信号,可以促进自己的职业生涯。
所以,无论是从公司还是个人层面,开源的繁荣的背后都是非常浓厚的商业和利己的因素在推动,这不是『情怀』和『开放精神』能够概括的。如果想把开源精神应用到其他领域,那就要看看是不是有某个领域能够符合这个特征。
有人提到学术界,学术界和程序员一样,是一个自产自销的小社区,但是其实学术界的文章开放的激励并不是太强。因为现在大家经常折衷的做法就是把同一篇工作论文放在免费的网站上,然后发表版本交给出版社处理。并不会对业内的知识的交流和沟通造成很大的影响。如果要说对大众开放的意义,很多学术论文写出来,无论从形式还是内容确实也不是给大众看的,很多论文商业化的前景也非常有限。
其实商业化前景目前比较热门的几个学术社区,比如机器学习,Open Access的呼声就非常的高,前段时间还抵制过Nature的子刊。因为这方面公司和学术圈的互动本来就很紧密,无论是造星也好,还是商业应用也罢,机会都相对较多;至于大部分吃瓜的学科的论文,Open Access与否,更多的只是学校的政绩,能否真的能像开源那样产生很大的影响,我持怀疑态度。