关于开源软件的思考

今天看了别人的一篇评论。转过来分享下。


在黑暗森林里一定要扮猪...作者的错误是把产品开源了,开源生态最重要的一点就是不能把一整套离终于用户太近的东西开源。开源是指的对程序猿开源,而不是用户。能够开源一个技术,不能是一个软件。

    古时候人类开拓疆域。为了获取很多其它的资源,部族之间互通有无。各自专心做自己的擅长。

开源世界也是。你做你的内存数据库,我做我的高性能转发框架,脱离了彼此,什么优秀的产品都出不来。互通了有无。终于大家都做出了对用户实用的产品,节省了时间。

人类历史上从来没有不打仗就把一整个部族交换给对方的部族,相同也不存在纯粹开源的“产品”。

开源,是为了更好更快地做出产品,产品的商业价值未被榨干,产品还会发展的时候,产品仅仅会给人模仿超越的机会,除非你的目的就是把自己的产品传播出去。开源与否是一个值得好好思考的问题。我自己会这么考虑:

要解决什么问题
问题是否足够明白
问题是否足够一般化
问题是否可解
目标受众是哪些人员(这里一般不可能是终于用户。一般都是业内)
我要花多少精力达到什么高度
怎样建立一个良好的环绕这个问题本身的生态来面对问题的发展变化
能带来多少影响力


开源事实上也是商业模式,不是教会,何况教会免费给你发书唱歌。都是为了教会的发展。与其去分析与指责人性的不是。不如去思考怎样建立起一个能够互惠合作的模式。最后的最后要我是作者,仅仅会把协议和加密的弄弄像。多做几个迭代,公布最老的,被抄了就出下一代,剩下的简单做一做,交给开源世界吧。做太多反而会把自己害了。

原文地址:https://www.cnblogs.com/clnchanpin/p/7039325.html