开源在中国——机会和挑战.
1999 年,Eric S. Raymond 在自由软件的范畴下提出了Open Source 开源软件的概念,并出版了《大教堂和集市》(The Cathedral & the Bazaar)一书,这是开源软件发展的标志事件。
近10 年过去了,开源软件已成为软件行业,特别是互联网行业最重要和发展最快的领域,著名开源项目网站SourceForge 在1999 年还只有数百个开源项目,到2008 年初,其开源项目数已经超过17 万个,几乎覆盖软件应用的所有领域。大部分产品和技术基于开源平台的Google 已成为世界上最成功的高科技公司。今天,从全球500 强企业到中小企业,还有绝大部分的软件公司都在使用开源产品构建自己的信息系统或产品。
为什么开源能取得如此大的成功?
第一:开源社区的协同模式改变和颠覆了软件业的工作方式,可以创造出高质量的软件产品。
Raymond 在《大教堂和集市》一书中有精彩的阐述。
第二:开源软件的商业模式也得到了验证,RedHat、MySQL、Asterisk 都是非常成功的开源公司。当然最重要的是,开源软件真正释放了软件开发人员的创造力和生产力,全世界有上百万的程序员在参与开源软件的产品开发。国际软件巨头也纷纷加入开源阵营,IBM 投资10 亿美元支持Linux,Sun 也斥巨资收购MySQL,开源在全球的发展成沛不可挡之势。
但实际上,中国的开源却是这样一副景象:社区冷,企业热,使用热,开发冷。
使用开源产品的公司和人员众多,但开源社区的发展并不顺利,真正参与开源产品开发和社区贡献的开发人员非常少。
原因是什么呢?《程序员》杂志社组织过专门的研讨,总结下来有多方面的原因:
1. 语言的障碍,阻碍了中国软件开发人员参与国际开源社区;
东西方文化的差异及对开源文化的了解不足;
经济上的快速发展带来的工作和生活压力;
中国软件开发发展的时间还不长,核心开发人员的积累还不够,缺乏开源关键人物;大学教育在开源领域严重不足,教师也缺乏了解。
开源在中国的发展意义重大:第一,开源软件集合了全世界软件技术的发展精华,可以让我们的开发人员和软件企业充分学习和吸收;第二,开源软件覆盖了软件应用各个领域,中国的软件企业可以在此基础上发展增值应用,只要遵守其商业规则,就能创造出商业价值;第三,软件的用户都更愿意自己用的系统是开源的,这样便于维护升级和系统整合。
开源给中国的软件产业提供了加入国际软件大潮的极好机会,事实上中国互联网的蓬勃发展也是基于开源的产品带来的成效。但更重要的是中国的软件开发人员能够参与开源社区和产品开发,打造中国开源社区的良性生态系统。
美国开源发达的一个重要原因是出版界(特别是O'Reilly 公司)出版了大量的开源图书,推进了开源技术的普及和发展。中国软件界如果有更多高质量的中文开源内容,就会有更多的人了解开源的技术和价值,就会有更多的开发人员参与开源的使用和开发,就会有企业采用开源的应用,反过来就会刺激更多的开发人员学习和参与开源。
所以,博文视点这次组织中国开源社区的多位专家策划《开源技术选型手册》是非常有意义的。
开源有着美丽的风景,但也非常庞杂,超过17 万个项目无所不包。《开源技术选型手册》是一本开源技术和产品的导航手册,本书的作者都是涉足开源多年的专家,他们分门别类地为广大读者介绍了19 类开源技术和产品,开源的最大魅力在于提供给软件开发人员自由选择和使用的权利,读者按图索骥就可以参与开源项目,参与和回馈是开源成功的关键。衷心希望作者的努力能帮助更多读者的参与。
开源在中国有很好的机会和前景,希望我们的开发人员和软件企业能把握机会,去迎接这样的挑战。
.CSDN 总裁 蒋 涛
2008 年5 月..
经过近半年的努力,也经历了很多先前所没有预料到的困难,《开源技术选型手册》这本书终于告一段落。虽然仍然有诸多的缺憾,但我们把它们称之为“遗憾之美”,就像软件开发中的建模一样,我们相信目前这个版本是可用的,而将来如果有机会会加以完善。
版式定义.
针对本书面向中高端技术人员选型手册的定位,我们将本书的版式进行了严格统一,在每一个篇章开始部分你会先看到一个关于该领域技术的综述,从中可以了解到该领域的过去、现在和未来;然后在对该领域单项技术的探讨中,你会看到该技术的活跃度,了解到它在社区中是否很受欢迎,文档是否齐全等;通过简介和上手指南,你可以简单了解到该技术是什么,主要解决什么问题,使用是否方便等;参考资料一般包括网络和图书两部分,你可以了解到目前社区对该技术的支持;最后的社区观点是使用者对该技术的评价,有的评论来自于社区大牛,有的来自一线开发人员,它们可以作为你技术选型的有力参考。
开源共享
从2007 年开始Java 就开始了自己的开源之路,而且在2008 年的JavaOne 大会前夕,Sun 公司表示他们正在为Java 的彻底开源做最后努力;在不久前,Sun 还成功完成了对MySQL 数据库的收购,而且也表示会继续将MySQL 开源;在Java 开源技术领域里,IBM 也绝对是一个不能被忽略的角色,在很多开源软件(如Eclipse 等)里都可以看到它的痕迹,微软现在允许并支持其他语言基于CLR 平台进行开发,尤其是多用于Web 开发的动态语言,如Ruby 和Python 等,另外微软非官方的开源社区也非常活跃,许多知名的Java 社区开源软件都有对应的.NET 产品,如NHibernate、NUnit等。当然不能排除上述这些都是大公司的商业策略,但我更倾向于将它们看成是开源社区多年斗争而取得的胜利。
在这些开源软件的开发者中,也不乏中国技术人员的名字,但也应该清醒地认识到我们的很多参与还是在外围打转。在2008 年1 月份,Linux 内核的创始人Linus Torvalds 在接受媒体采访时表示,“虽然亚洲国家有大量的互联网应用,并拥有许多教育和培训机构,但他们并没有为Linux 内核和其他开源项目做出太多贡献。”近期社区有人说技术人现在也开始玩“政治”了,由于某种原因PHP 官方网站上的中文文档全部被删除,一时激起民愤无数,但据内部人士透露,真实的原因是这些文档常年没有更新,已经无法跟上PHP 新版本的需要,官方才决定删除……往事总是能让人警醒,希望在将来我们的开发人员不仅能积极参与技术文档的翻译,还能够参与到核心的技术研发中去。路漫漫其修远兮,激励我们艰难地去求索!..
开放合作
曾几何时,在制造业我们习惯了看到别人好的东西,迅速拿过来模仿,然后大规模地复制,将老师“扼杀于摇篮”;曾几何时,在软件业我们习惯了合理地利用开源协议,心安理得地进行二次开发,然后紧紧地将“劳动成果”捂住并申请专利,将开源在自己这儿止步。这种情况应该不是从鲁迅先生当年提出“拿来主义”开始的,我在想如果鲁迅先生生活在今天,而且恰好是一个软件开发人员的话,他对开源会仅仅是“拿来主义”和“捂住主义”吗?他会不会举起开源的大旗,号召大家都来使用开源软件,但更要积极地参与开源软件的核心研发,输出自己的智慧呢?
合作才是永远利己的绝佳策略。在开源软件领域,我们长久以来奉行的是“拿来主义”,我想等我们意识到“输出主义”更能够创造价值,更有利于自己和整个社区的发展时,那就是国内开源技术领域希望的春天!
致谢
这本书之所以能够顺利完成,和每一位参与撰写的专家的辛苦劳动密不可分,这里向他们表示深深的感谢,感谢他们开源共享和开放合作的精神;感谢InfoQ 中文站的编辑李剑、郭晓刚、胡健、高昂和张凯峰等,他们不仅参与了相关内容章节的撰写,而且在本书遇到困难时给予我很大的精神鼓励;感谢本书责任编辑Lisa(杨绣国)的耐心与勇气,没有她在我身后坚持不懈的催促,就没有这本书的及时面市;感谢好友孟岩和方舟在内容和版式上必要的指导;感谢周筠老师在后勤上的有力保障;感谢张海峰在文案、市场方面的有效协调;感谢那些我到现在还不知道名字的审校人员。没有大家的努力,就没有本书的出版!
再次感谢我的父母和兄弟姐妹,虽然远在家乡,但他们永远是我的精神港湾和前进动力!最后特别感谢我的老婆吴志民同学,在本书紧要的制作过程中,有多少个夜晚我无法给她安静的睡眠,她也很好地忍受了我的那么多无名之火,并在我偷懒的时候不嫌啰嗦地提醒我早日完稿。
霍泰稳
2008 年5 月于广西阳朔...