开源软件在当今软件市场中的重要性逐渐凸显,越来越多的企业和开发者选择将自己的产品以开源形式发布,也有越来越多的企业开始采用开源软件。
尽管国内不乏一些优秀的开源项目,但不可否认,与国外相比,国内的开源起步比较晚,开源氛围还存在不小的差距。如何建立一个稳固发展的社区,让更多的开发者参与到社区中,是一个亟待解决的问题。
个人开发者该如何参与开源?开源能够给予我们什么?……带着这些问题,我们邀请了开源界的一些大牛,请他们来谈一谈他们眼中的“开源”。他们是(按文中回复顺序排列):
- zozoh(张志昊,Nutz作者,注:另一位作者wendal正在赶来)
- 杜玉杰(中国OpenStack用户组管理员、社区经理,息壤开源社区共同发起人)
- 姜宁(Apache多个开源项目 Camel、CXF、ServiceMix、ActiveMQ 专职贡献者)
- 庄表伟(息壤开源社区发起人)
- 程开源(程旭文,息壤开源社区发起人,开源力量社区平台创建人,“开源力量公开课”创办人)
怎么理解开源?是不是把软件源代码公布出来就算是开源项目?
程开源 :
我理解的开源其实是社会协同生产的一种模式,通过将源代码开放出来,使得使用者可以有机会参与到产品生产中。
zozoh :
同上。只公布源代码也算开源项目,因此有“比较规范的开源项目”、“假开源”等说法。
杜玉杰 :
公布源码并不意味着一定允许用户修改或再分发,所以说源代码开放的软件并不一定是开源软件,要看它是如何规范软件的使用、发布、复制和派生等整个过程的,简单来说就是看是否遵循开源软件许可协议。
早期开源软件有严格统一的定义,OSI对开源软件定义的十个条款基本上算是一个事实的标准,但现在业界也有把Free and Open Source Software(简称FOOS)统称为广义的开源软件。
姜宁 :
开源软件许可协议是理解开源的关键。简单的开放源代码并不能使其成为开源项目。在Apache社区建设中常提到的一个原则就是“Community over code”。成熟开放的社区是成就一个成功的开源项目的基石。
庄表伟 :
首先同意楼上的诸位,其实这个问题几乎是有共识的,基于某种许可协议发布的源代码,才是正式的开源项目。但是,在Github上有很多并无明确许可协议的开源项目,也有很多的开发者参与其中,这些项目,也是开源生态圈的一部分。
辛辛苦苦做了一个软件,为什么要开放出来呢?您做开源的初衷是什么?
zozoh :
当初就是为了要开放出来,才做的 Nutz……
杜玉杰 :
我是开源社区的受益者所以也希望能够让更多人受益。
姜宁 :
这是一个舍与得的关系。 只有降低了大家获取你劳动成果的门槛,才会吸引更多的人和你一起来为共同的目标前进,当有了更多人的参与,会大幅度降低你今后开发和维护的成本。
庄表伟 :
我做了一个很不错的东西,当然希望更多的人知道。当我在那里自我吹嘘的时候,有人会问:你凭什么啊?谁知道你做得好不好啊?那么,一旦开源出来,事情就很简单,大家都看得到了。再者,文人可以以文会友。Coder自然可以以Code会友。这是一种寻求同道的方法。
程开源 :
将项目开源出来通常有两个目的:
- 知识分享,想让更多的人使用自己写的作品,早期开源项目基本都是这个目的;
- 商业驱动,开源实际是企业的市场行为,通过开源占有市场,增强企业影响力,降低企业研发成本。
国内的开源环境与国外的对比?
zozoh :
不了解国外,觉得谈论环境木有意义。
杜玉杰 :
我在国内参与发起过中国OpenStack社区等开源社区,并有幸作为OpenStack基金会独立董事也参与过国际OpenStack基金会的运作,对比感觉国内不乏优秀的开发者,而最缺乏的是完善的管理体制(如开源基金会等)以及职业的社区管理者。
姜宁 :
国内开源生态环境没有国外的好,我们更多的停留在使用的层次上,很少能真正参与到开源项目的开发中。
庄表伟 :
国内有大量的开源使用着、有少量的开源开发者、开源社区(基本上是使用者的社区),但是,没有一个成型的开源环境。因为,大多数开发者没有足够的空余时间,投入与自己职业无关的开源项目。
程开源 :
国内的开源环境整体落后于国外10年以上,至今没有一个像Apache 、Linux基金会一样的开源协同生产组织出现,国内的灰狐、息壤开源社区(www.sarons.org)虽然做了一些努力,但还有很长的路要走,但毕竟开始迈出了步伐。
如何看待“外国的月亮比较圆”等类似的说法?
zozoh :
我在自己周围几乎没有听到过这样的说法,所以也没啥看法。
杜玉杰 :
没有注意过。不过亲眼所见国外的空气质量不错,天很蓝。
姜宁 :
开源,自由软件这些理念都是源于国外,很多东西到国内就有些变味了。目前大家看到开源想到最多是就是能看到源代码,我可以自己封装一下
去申请国家项目或者直接卖给客户。很少会按照开源协议的规定和开源社区的规则来为这个开源项目做贡献。这样导致的结果就是国外的大牛的开源项目很好,人家
做贡献赚人品,我们直接来用就行了。国内的开源项目很少有人问津,大家很少去想如何改善国内开源开发生态环境。
庄表伟 :
这个问题……无语ing……
程开源 :
坦率的讲,国外高质量的开源作品确实比较多,我们平时用的开源作品还大多来自于国外。 但随着国内云计算、互联网的深入发展,国内原创的好的开源项目在不断涌现,趋势逐渐向好。 |