• Tag:OpenSource

    上个月,一个不错的机会与SUN,Intel,红旗组成的'开源行动日'团队一起到访了西安软件园,这次我第二次来到西安,这次的活动也让我对西安这座有着13年王朝历史的古城在软件方面的发展有了更深入的认识。当然这也是一次非常好的机会,让开源软件技术如此大规模的传播到西安本地的软件开发公司,技术人员和学生中。

    '开源行动日'有中国软件行业协会共创开源软件联盟组织,SUN, Intel, 红旗,Huihoo开源社区等多家组织公共参与的一次最大规模的全国性开源技术交流推广活动,在开放源代码席卷全球的大潮中,原来越多的公司都投身到这场运动中来,但是在中国,我们却很少看到有企业和专业的开发人员参与开源软件的开发,是不知道开放源码软件,还是对开放源码软件存有疑虑?带着解决种种问题的目标,我们启动这次14个软件园的巡讲活动,它的目的是让更多的中国公司和技术人员了解开源软件社区,学习和应用开源软件技术,并在可行的条件下参与开源软件的开发,通过与社区的沟通与交互,使企业在应用开源软件上获得更大的投资回报,同时也使参与开源的每一个开发者获得个人技能的提升和更好的职业发展。更多关于'开源行动日'

    下图是我们在西安活动现场拍到的一张照片,

     

    作为开源社区的一名代表,我也很有幸参与了西安站的巡讲活动,让我感到欣慰的是,西安站整整一天的活动中坐无虚席,整个一天的技术交流中,会场的人员都是满员,开始的时候由于参加的人员过多,在多加了几次凳子之后,西安软件园的组织人员不得不另开了一个会议室,将人员做一个分流,同时进行两场演讲。此次的活动中特别是来自西安邮电学院的同学,由于他们学校在长安县,离软件园有较长的路程,有的同学早上6点钟就起来坐车,赶来参加今天的交流活动。这种积极参与开源的精神,让我深刻的感觉到了西安这座文化古城对开源软件技术与知识的渴望,如何让开源软件在这个有着中国第二大高校城市之称的地方发挥更大的作用,培养更多开源软件的人才,是我正在思考的问题,同时我们也将很快在西安当地逐步建立起开源社区,让本地的开发人员能够有一个定期交流的平台,长期持续的将开源软件技术的声音传播到这里,Xi An OpenSolaris/OpenSource User Group  已经迈出了他们的第一步。

  • 开源就是社区

    2008-06-14

    Tag:OpenSource

    最近接受了IT168关于开源专题的专访,这里与大家分享一下7年后对开源新的理解:

    国内开源社区风风雨雨已经走过10年,在中国软件的发展史上也有了自己的一笔。如果要讨论中国开源社区在近年软件技术发展过程中的地位和贡献,就算只考虑对国内的影响,不考虑世界范围内的,我也只能很尴尬的说,地位没有,贡献微薄。

    话说回来,现在的国内开源社区,背后越来越多的聚集着企业的身影,发展也越来越得到国内开源软件企业的重视,如何和社区搞好、如何利用和培育良性的社区-用户-企业三者之间的关系,逐渐成为国内开源企业发展所要考虑的问题之一。

    国内开源社区的专家也有对社区和企业发展关系独到的见解,今天我们邀请到来自灰狐社区的程勇先生,程先生在国内开源行业从业多年,社区经验丰富,他的意见对我们更好地理解基于开源社区的商业模式具有重要作用。

       1. 让我们先来谈谈国内开源社区的情况吧,毕竟开源软件的产生于社区,并且他的发展、商业化道路等等都离不开社区,国内的开源企业想要做好,没有开源社区的大力支持估计也是行不通的,您能给我们谈谈目前国内社区的发展状况么?

       程勇:从我个人观点来看,我是这么认为的,开源就是社区。至于在开源软件的基础之上组建公司进  行运作,使用开源社区进行策略推广,这些都是一种基于开源的商业策略。国内开源社区从开始到现在也有十年左右的时间了,但是调查显示,都发展的不如预期,但这也是中国开源社区发展的一个必经阶段。其实开源社区一般可以分为两种,一种是开发者社区,国外比较多见,这些社区的特点是,都有自己的核心项目,然后一群有共同兴趣的技术开发人员和开源爱好者聚集在一起,进行技术交流、发布文章等等。另一种是用户社区,国内社区则以用户社区比较多,比如ChinaUnix、 huihoo.com、Linuxsir、Javaeye等,这类社区中活跃的一般是开源软件的用户---使用者,他们大多交流开源软件的使用经验,同时也包括一部分开发经验,这和第一种社区的人群是不同的。这些社区在国内的受欢迎程度比较高,而且有些这类社区商业化运作也比较好,证明他们的商业化潜质还是不错的。

       其实还有一类社区,可能大家不是太关注,但是他们也是存在的,并且有着非常好的基础和商业化的运作形式,这些就是一些国际IT企业的社区,比如IBM的开发者社区、Sun的开发者社区等等。

       就目前来说,我们和国外的社区的差距在哪里呢?我认为差距就是在方法和文化上,第一个,国内的社区在运作上缺乏一个机制和规则,第二个是社区的没有长期的规划。就目前来看,国内做的比较好的开源用户社区也是一样,或多或少的存在上述的问题。

       2. 您可能刚才也提到了,现在的社区中最常争论的是自由软件和开源软件,这两者是怎么区分的,为什么会出现今天的这种情况?
     
       程勇:首先,大家都知道自由软件和开源软件是两个不同的概念。一般来说,自由软件的标准有四个自由度,满足这个标准我们就可以称之为自由软件。自由软件中的哲学意味比较深远,这些问题问问哲思社区的徐继哲,他可能给你们更明白的解释。但是我要说的是,自由软件的一个重要特点就是采用GPL授权协议,或者折中一些, LGPL协议。简单说就是,要自由就自由到底,我把源码开放,你也要把源码开放。有什么变动更新并回馈到社区中。另外我们要明晰的一点就是,我们不能简单的认为,自由软件就是和商业软件对立,开源软件对商业软件友好。自由软件有其自身发展的历史及成长历程。但是开源软件的相关授权确实对基于其上的商业化运作比较友善。

       3. 我们的媒体老是在说国内的开源社区缺乏文化,您是怎么认为的?比如没有一个明确的开源项目,大部分是以普及开源软件为主,技术很泛,没有自己的一群人,没有一个核心的开源项目作为重点。您是怎么看的?您所领导的社区目前是个什么样子?

       程勇:这个问题其实上面也有所涉及了,国内的开源社区主要是用户社区,是以开源软件产品的使用交流为主的社区,比如chinaunix、Linuxsir等等,上面我也提到了。国外则是以开源开发者社区为主,比如Apache、Linux内核等等。可能社区性质的不同,决定了国内和国外的文化差异,还有就是语言障碍,这点也很重要。目前来说,国内开发者社区也有一些,比如huihoo.org,另外还有一些个人的项目,比如章文嵩博士的LVS项目,胡正的 StarDict,可能论影响力来说,章博士的项目可能在世界上的名声可能更大一些。这些好像和中国人的性格是分不开的,因为有人说,中国人一个人是条龙,一群人在一起做事的效果可能就不是太好了。既然我们要做开源,那么就要遵守社区的游戏规则,比如分享、贡献等等。
     
       4. 我们也可以看得出来,很多的商业开源软件公司都是从原来的开源社区基础上发展过来的,把以前的爱好变成自己的事业,能够把爱好当成事业来做应该是一件很惬意的事情,但是想要获得成功,那是要付出一定辛苦的。您能给我们谈谈,作为一个开源项目,要想商业化运作,相比较传统的软件公司来做,最重要的区别是什么?

       程勇:国内的开源企业各自的运作我也不是很清楚,因为相比较国外的开源软件企业来说,他们的运作还不是很透明,相比较国外的开源软件企业的成功,国内的开源软件企业成功的例子我还真没有怎么听说。但是既然你要选择基于开源软件社区,那么你的商业模式也好、盈利模式也好,就不能伤害到社区的利益,只能是双赢,否则这条路你是走不下去的,或者说,开源这口饭你是吃不长久的。国内公司通常的做法就是从开源社区弄段代码,然后自己维护,要是小公司自己鼓捣鼓捣还行,你要是做成商品,卖给用户,你就等着麻烦不断吧。

       商业软件的开发模式,开源企业是模仿不起的,从社区中拷贝出一个Linux内核以及其他开源软件打个包,就卖给用户,测试工作谁来做?像红帽这样的软件公司,他们都是有自己的办法,社区人员和自己的员工共同开发的Fedora项目,自己员工依托Fedora项目社区构建的红帽企业级Linux操作系统,后者作为他们的商业产品,提供企业版本的支持服务。

      其实很明白,基于开源的软件公司就要依托开源,开源既是社区,所以没有社区的支持,开源软件企业是很难成长壮大的。中国的开源软件企业要想做大做强,这点肯定不能忽视。

       5. 就像刚才所提到的那样,这些开源软件公司的商业模式,在未来的几年中,您认为,哪些将会占到主流地位?

       程勇:这里我不能作出断言,但是有的道理还是要说的,开源就是社区,社区就是江湖,商业模式不过是公司的行为,这几个是不能混淆的,社区有社区的原则,就像江湖有江湖的规矩一样,做公司也有做公司的原则,那就是盈利。我们是要依托社区、不是完全从社区中攫取而不回报社区。那些不和社区保持好的联系、做好社区关系的开源软件企业肯定不会有太好的发展,我也不敢断言他们肯定会被淘汰,因为国内的开源环境还是有别于国际开源社区。

       但是无论如何,要肯定的一点是,你不经历一些事情,企业是成长不起来的,特别是开源企业,没有社区经验是很难有所发展的。虽然我们看见IBM、Sun等公司现在在开源软件行业风生水起,但是我们要看到他们的底子,他们本来在各自的行业就是老大的地位,加上他们的众多开发人员分布于各个开源软件社区,他们的开源软件经验比我们的企业要丰富的多,他们对开源社区的原则了解的比我们透彻,所以我们看见他们现在的成功,其实背后是他们在开源软件社区多年的耕耘。我们的开源企业在这点上是跳不过去的,我们能做的就是吸取他们过去的经验教训,少走弯路。

       6. 现在开源企业和传统的商业软件公司竞争越来越激烈,而且也出现了一些新的情况,比如微软-Novell合作,Sun公司收购MySQL等,您是如何看待开源软件企业和传统商业软件公司的竞合关系的?

       程勇:天下之事,分久必合,合久必分,这句话也在不断的得到印证。不管是开源软件还是商业软件其最终目标是解决用户的业务问题。如果不能满足这个基本条件,这个软件就没有其实际的价值。对于客户来说,使用开源软件或是商业软件,需要看其实质的商业需求,其实最后选择的是一个平衡,既不可能全部使用商业软件,也不可能全部使用开源软件,所以这种竞争合作关系实质上是有利于软件的发展和创新,为客户提供更多的选择,以解决他们在实际工作生产中遇到的问题,提升其商业价值,为客户获得盈利。

       7. 正如上面所提到的,竞争激烈的市场环境下,越来越多的开源企业选择抱团,但是往往这些联盟啊、基金会啊什么的组织都是带有一定的商业性质的,他们的发展对社区和产业来说是否有利?

       程勇:商业有些时候也并不是一件坏事,就好象天下没有免费的午餐,也没有人愿意为不挣钱的工作而付出劳动是一个道理。当然,我们这里不排除一些志愿性的可能。在国外,一些行业联盟,技术联盟等,其组建的目的主要也是要创建一个更好的共同发展的环境,以改善和解决竞争过程中产生的问题,并提供平衡的解决问题的策略。最终推动整个产业的发展,这也是一种博弈的平衡。当然有些联盟和基金会的初衷是好的,只是在具体执行的时候会遇到困难和发生一些变化。我想作为社区首先是要有自己的定位和设计良好的机制策略,保证自己能够健康的发展,同时与商业联盟或者公司保持一个良好的沟通关系,这样可以促进双方的共赢和发展,使社区能够有一个可持续发展的策略和方向。

       8. 开源软件企业,虽然关注重点是开源软件事业,但是商业化的性质注定他们要在商业上面做文章,他们在和竞争对手----传统的商业软件公司竞争中如何求得生机?比如说,如何吸引用户?如何获得传统软件公司的市场份额等,您有什么看法?

       程勇:在这里我要给大家举个例子,平安保险和阳光财险,两家都属于保险行业,对IT信息化的依赖越来越大,为了满足日益增长的用户信息需求,两家企业作出了不同的回应。平安保险在深圳的web应用开发部门人员多达千人,业务系统大部分选择了Weblogic;而阳光财险就不同的,没有平安的财大气粗,他们则选择了部分红帽的JBoss系统做web应用,相应的IT开发人员才有三十多人,同样也满足了该公司的业务增长需求,作为竞争者,不能做到一样,但是可以做到最大差异化。说到底,在安全性得到保障的前提下,足够好的性价比和可靠的服务才是开源企业的真正杀手锏。

       9. 国内目前也不乏众多的开源小企业,他们是开源软件商业话探索的先行者,您从事开源软件行业已经有不少年,也见得各种开源软件企业的沉浮,您能对这些开源软件企业提些建议么?比如市场策略、公司发展规划等方面?

       程勇:国内基于开源社区的商业公司创业,就是我们所说的商业模式基于开源,但需要注意的问题还很多,因为目前的国内的开源社区和商业氛围不够,要想建立起一家有影响力的开源软件企业还是存在不少的问题。首先是起步难,为什么起步艰难,原因也是有多方面的:其一,因为我们的开源从业人员的商业操作能力严重不足,我试问一下,从事技术工作的国内开源人员有多少能够看懂财务报表的?假如你连报表都看不明白还做企业,那估计成功的几率就真的很渺小了。其二,我们向来喜欢追求大而全,上来就要做项目,做平台,做通用软件,但是我们的基础、特别是开源社区的基础不好,做这些的难度是可想而知的。比如喜欢做操作系统、办公软件等等,是的,我们目前很需要这个,但是我们还是要一步步来,特别是开源软件企业,如果没有得到足够的人力财力支持,足够的开发经验,做这些通用软件的成功率太低了。我们的企业喜欢做Linux操作系统,从社区中拷贝出一份代码然后自己做,不和国际社区交流,试问一下这么多内核的问题、不同的新硬件新软件的出现会带来无穷尽的问题,国际上做操作系统的公司要么是微软、Sun等国际巨头,资金雄厚,经验丰富,独自研发;要么就是做Linux的红帽、SuSE,他们依托社区,开源共享。我们既想做linux操作系统,又想不受开源软件社区那套规则的限制,这种做法实在是不可取,因为这注定要失败的。

       难道我们在开源社区就什么都不能做了?这也不是,我们不能做大项目、大平台和通用软件,但我们可以从应用做起,对于开源的中小企业来说,基于开源的企业应用开发起来,投入不大周期短,很快就能够看到效果,得到回报。

       另外,既然是企业了,那么我们就要关注客户的需求,开源是有很大的商业价值潜能的,这点是毋庸置疑的,国外已经轰轰烈烈的展开了,国内的IT厂商,无论开源闭源也都蠢蠢欲动了。客户关注什么,那当然是越便宜越好,前提是安全性要说的过去。

       比如说,我现在所做的聚众开源这家公司,我们的目的很明确,为用户提供企业级开源软件的咨询与策略服务。大家也许不是很清楚,目前开源软件在大企业中应用的流程,其实还是很复杂的。不是简单的从网络上下载一个源码包,编译启动后就能投入到生产环境中去的。首先,这些企业的CIO们需要对这些开放源码的软件进行审核,认为足够安全或者兼容性足够好,然后进入到公司内部的一个可靠的开放源码软件库,然后需要使用到哪些,再从可靠的开放源码软件库中挑选,经过定制、安全审计等过程后才能投入生产环境使用。这一整套流程和策略方法,正是我们目前所提供的服务。我想,像我们这种贴近客户需求的基于开源社区的商业软件模式才是客户所需要的,是顺应社区及商业发展需求的。


      10. 回到老问题上,中国的软件人员面临的生活压力比较大,对社区贡献不足,社区影响力小,在此基础上创立的开源软件企业发展不快,进而没有足够的财力物力投入社区建设,社区发展缓慢,好像是个死循环,如何解决目前的问题,政府、企业还是个人?谁更应该负担更多的责任?

       程勇:首先我要强调的一点,软件问题其实就是人的问题。中国的软件人员面临的生活压力比较大,从事开源软件工作,难道我们的程序员真的是没法生存了么?你要是做开源,做的好,没有好去处,你给我简历,我给你一个好的职位。只要你在开源社区做了贡献,基础扎实就不愁吃不好、穿不暖,相反,你会吃的很好,穿的暖和。你可以在社区中了解一下,那些从事开源的人,做的好的年薪没有低于20W的。

       在政府支持方面,因为相关的政策法规不健全,实现起来也有一定的难度,因为捐赠实体不明确,所以导致了这样的问题。在中国,政府有一笔钱,想要给某些社区,给谁合适呢?也许这个问题还好办一些,找一些有代表性的、大一点的社区,但是这笔钱如何花,如何监督他们花呢,可能是个大问题,因为在国内的信用体系不是很健全,需要监督,但又没有相关的政策和单位来做这件事情。而在美国就容易的,因为某些大的开源项目都是有一些非赢利的组织或者机构来运行的,同时,政府和社会有一整套的法规和政策来指导和监督这笔钱的用途。另外,企业或者个人给这些非赢利组织捐献是得到鼓励的,比如在税收上面给予一定的优惠。而这一些对开源社区及商业运作有良性作用的氛围,国内目前都是不存在的。

       所以说,在国内,无论开源社区、还是基于开源的商业运作,都是存在很多问题,主要就是环境的不成熟。但这一说,好像国内的开源社区和商业运作都没有希望了,这也是我们需要纠正的。就像开头我说的那样,软件问题归根结底就是人的问题,我们的程序人员难道用部分时间来从事开源,从事社区活动就会导致生活得不到保障?我想这是完全错误的。开源软件行业的门槛可能稍微高点,国内的开源软件企业和开发人员不多,交流不畅,需要和国际上开发人员进行交流,这就需要一些基本功,比如英语、网络环境和社区文化等等。开始的时候可能我们的困难时大一些,但是慢慢的会好的,首先自己要舍得投入,比如语言学习,对于一个程序人员来说,英文还是很重要的,不光是用于交流,看文档这类的都需要。所以这些个人投资还是很有必要的。只有个人提高了,开源社区的质量才能够上去。社区做好了,才能够孕育出成熟的开源商业化项目,作为政策制定者的政府也就能给出适当的支持,只有上述这些做好了,才能形成一个良性的循环。

       结束语:谢谢程勇先生接受我们的采访,给我们谈了这么多有关社区和开源企业的发展关系,也祝愿您的聚众开源公司能够越做越好!