论坛首页 海阔天空论坛

中国开源软件的发展问题

浏览 19942 次
该帖已经被评为精华帖
作者 正文
   发表时间:2008-11-25  

开源软件在中国的市场可谓庞大,但是开源软件的商业在中国却发展的不好。

 

上周日我参加一次SOA草根论坛 的聚会的时候和大家聊到这个问题, 感觉现在大家对在企业应用中使用开源软件是又爱又恨。 爱的是使用开源软件可以降低商业项目开发的前期成本,提高商业项目的开发效率; 恨的是开源软件对于项目开发人员是黑盒,需要花费大量的精力去研究,同时对于开源软件的日后的维护缺乏相应的支持。

 

在当天的讨论中我听到来自开源软件使用者程序员的声音:

 

1. 开源软件 vs 免费软件

在 国内大多数的公司CXO的眼中,开源软件就等于免费软件,首先我不需要支付任何版权费用, 从网上下载下来就可以直接使用, 既然源代码都能看见了,我无非就是投入几个程序员让他们好好研究研究就可以应用到我的商业产品中了。在CXO的心目中对开源软件使用过程中的投入基本上为零(反正我是要给程序员开工资的), 而在开源软件使用过程中涉及软件许可(软件再包装), 开源软件后续版本维护的成本基本上都不在考虑之列。

 

可以说这是一个典型的中国特色, 而这个特色是由于中国的官本位思想所造成的。 很多有能力的程序员在干了几年编程工作之后为了他的职业发展需要基本上会变转向管理, 而一旦他转向管理之后,很少有时间去专研技术。这样就造成了有决策权利的管理者对于技术不那么热衷,技术对于他开说只是一个结果(你就说这个问题你能解决 不, 而不是一个漫长艰辛的磨练过程)。

 

这样开源软件使用过程中产生的一切后果都由程序员来扛了,虽然使用开源软件的程序员很想请人来做商业咨询,但是他们却很难想向公司领导开这个口,因为技术是他们在是公司领导眼中的价值之所在,公司领导会认为有源代码都有你还搞不定,这不是就说明你的能力不行吗?由于程序员的流动性比较强, 对于产品上线后的维护问题, 程序员考虑得并不是太多, 他们只是暗暗祷告别让我成为那个救火队倒霉蛋就行了。

 

爱在心里去口难开, 程序员在使用“免费软件”的同时,背负了太多的责任。

 

2. 开源社区

在当天的讨论中,我曾经问过大家一个问题, 就是大家在使用开源软过程中发现了bug会这么做?

我得到的回答是自己研究,到相关论坛上发帖子问?

我接着问还有其他什么途径吗?有没有试图和你使用的开源软件作者联系 ? 有没有在开源软件项目的网站上提交Bug 报告? 还有如果你发现了这个开源项目有问题,在抱怨这些问题时候,有没有试图去做出你自己的贡献帮助修复这些错误。

 

在 我成为Apache CXF 和 Camel 的Committer之前, 我也使用过开源软件 ACE,和大家有着很类似的经历。当时使用ACE完全是靠个人兴趣,也许是语言的问题,也许是在中国的开源项目太少了, 当时我没有一点融入到ACE开发社区的想法,遇到的问题基本上就是在国内的论坛。可能是成为Apache 开源项目的Committer之后,由于角色发生的转变, 我考虑到问题的角度不同了。

 

我发现开源项目最大的财富不是那些放弃版权等代码, 而是开放交流的开源社区。在社区中菜鸟和大牛可以平等地对话,客户与开发者直接进行交流, 这是一个程序员与程序员平等对话场所, 只要你说的有道理你的意见或者建议就能被接受。如果说开源项目中的那些代码是可交付成果, 那在开源社区中的讨论就是这些可交付成果的灵魂, 如果你在使用这些开源软件,如果你想对这些开源软件做出自己的贡献,那请加入开源项目的讨论组, 社区论坛, 在那里寻求帮助和贡献你的智慧。

 

现在让更大的程序意识到开源社区的重要性, 发展好本地的开源社区, 似乎成为了我向社区贡献代码同时,最迫切的一件事, 因为只有这样,才能让开源软件在中国走得更好。

 

3. 开源软件商业支持

 

对 于开源软件来说, 如果是它是一个使用范围很广的软件,可能需要商业支持的需求就比较小。例如Spring, 会使用Spring的人太多了, 一般在Spring使用过程中遇到的配置问题大家都能解决,这个可能和国内多从事应用软件开发的人员比较多有很大的关系。 对于他们由于他们只是使用Spring, 不需要在理解Spring内部代码基础之上进行二次开发,自然没有什么对Spring的商业支持。

 

但 对于ServiceMix, Camel,CXF 这样软件来说,由于使用范围比较狭窄, 熟悉的人员就不多, 如果想把这样的软件应用到企业集成或者是在其之上进行包装,二次开发。如果没有商业支持, 程序员们需要的投入的精力那是可想而知。 对于开源软件的商业支持, 在国内开展的不是很好, 这可能是各大软件集成公司对咨询有着很大的认识误区。 在他们眼中咨询只是大公司在售前推销自己商业产品的一种手段, 很多时候都是免费的。 当然大公司的咨询成本最后可以转嫁到销售的产品之中, 对于开源软件来说起商业支持收入的最大来源是依靠咨询和培训,以及日后的订阅服务。对于开源软件商业支持厂商来说要从本来不多的商业收入中拿出大量的资源 来进行免费的咨询服务基本上不可能的。

 

试想一下如果开源软件项目没有办法养活自己,哪还有开源软件能让你免费使用,改变这种现状是开源软件在中国发展过程中所必须解决的一个问题。

   发表时间:2008-11-25  
没有一个回帖就已经精华了?
我认为有几点阻碍了开源软件的发展
1.准备开源的东西是不是足够优秀,不够优秀的东西开源也吸引不了人来关注,更没有人一起参与、开发
2.国内大部分程序员并没有太多精力为开源做些贡献
0 请登录后投票
   发表时间:2008-11-25  
这是一个奇特的帖子,没有回复却已成精华帖。。。
0 请登录后投票
   发表时间:2008-11-25  
语言也是一个方面,,学习英语并且熟练沟通,在很多程序员眼中还是一个遥远的梦。。
0 请登录后投票
   发表时间:2008-11-25   最后修改:2008-11-25
在中国这么一个国家,整个民营软件公司普遍生存都很艰难的情况下,谈什么开源软件的前途都是扯淡。首要解决的问题是体制问题,真正释放生产力,让整个软件产业蓬勃的发展起来,有了这样的基础,才能谈其他的事情。开源软件才有发展的可能性。
19 请登录后投票
   发表时间:2008-11-25  
robbin说得一点都没错。

所以我现在依然相当敬佩那些试图为中国开源事业做出贡献的人。
0 请登录后投票
   发表时间:2008-11-25  
很烦没有支持的软件,遇到bug靠自己搞定,小的软件还成,大的成万上百万行的,从哪看起?
0 请登录后投票
   发表时间:2008-11-25  
是啊  中国有那样得福利政策保证一个开源爱好者呆在家里没工作还有烙饼稀饭房子住么?
0 请登录后投票
   发表时间:2008-11-25  
eyejava 写道
没有一个回帖就已经精华了?
我认为有几点阻碍了开源软件的发展
1.准备开源的东西是不是足够优秀,不够优秀的东西开源也吸引不了人来关注,更没有人一起参与、开发
2.国内大部分程序员并没有太多精力为开源做些贡献


我觉得大家在关注开源的时候想到最多如何开放代码,其实开源软件的发展的真正动力是来自于社区的。
如果说你的准备的开源的东西不够优秀, 没有关系, 只要你有好的想法, 你可以借助开源社区的力量来完善你的开源项目。

如果说国内的程序员很辛苦,在养家糊口之余没有时间和精力为开源做出贡献, 我这里有一个小小的请求, 就是你在使用开源软件完成你日常工作的时候,如果发现的bug请及时向开源社区反馈。

其实在Apache上做开源软件开发的程序员很多都是商业公司的雇员, 他们的日常工作就是维护代码回答开源社区的问题。
2 请登录后投票
   发表时间:2008-11-25  
wangdi 写道
这是一个奇特的帖子,没有回复却已成精华帖。。。


楼主上面有人。。。。

救火队
想来就抓狂
0 请登录后投票
论坛首页 海阔天空版

跳转论坛:
Global site tag (gtag.js) - Google Analytics