-
用户市场
早期OpenOffice.org的用户主要分布在欧洲地区,这和OpenOffice.org起源于德国、所以西方语言支持比较好有很大关系。欧洲的很多政府机构、公司、学校、非盈利机构甚至个人都在广泛使用OpenOffice.org。Jupiter Research在2003年的一项研究报告中认为OpenOffice.org在小型商业机构的市场份额已经达到6%,另有3%在2004年有应用计划。
团体用户在削减IT预算的时期,更加注重于从降低总持有成本的角度来考量。德国慕尼黑政府经过一年的评估,最近决定将市政当局的14000台PC从Microsoft Windows/Office迁移到Linux和OpenOffice.org,这一降低政府开支的举措引起了各国政府的广泛关注,具有强烈的示范效应。
随着OpenOffice.org的不断推广,其他地区的用户也开始注意和尝试OpenOffice.org。北美和拉美地区的一些企业、学校、和政府机构也在评估将OpenOffice.org作为日常办公套件的可行性,并已经开始了试用。37
OpenOffice.org所具有的优秀特性使它获得了广泛赞誉。38例如Linux Format 2001年读者选择奖“最佳商业软件”;XML Journal 2002年读者选择最终奖“最具创意的XML应用”;Linux Journal 2002年编辑选择奖“最佳办公软件”,2003年读者选择奖“最受欢迎的办公软件”;Open for Business 2003年开放选择奖“最佳办公软件”;O'RELLY下属的OSDir.com 2003年编辑选择奖“桌面开源软件最佳应用”,等等。
-
OpenOffice.org社区
-
理事会
-
OpenOffice.org社区由社区理事会39进行管理,理事会章程40也是由社区成员起草,经过全体社区成员讨论和修改,几乎以全票通过。理事会是由社区成员志愿组成的非自治组织,建立理事会的目的是在战略规划与资源分配、协调与资助者和公众的关系、在整个社区内提供仲裁这些方面提供指导。理事会可以调节冲突并为社区成员提供论坛,它也可以对项目的目标发表意见。理事会除此之外的权利在章程中被严格限制。
理事会由九名成员组成,这些成员都是各个项目的代表,他们也基本上都是项目中活跃的贡献者,在若干方面颇有建树,获得了其他贡献者的尊敬。这九名理事会成员包括:
-
五名成熟类项目代表,其中有一名作为项目领导的Sun雇员,一名作为项目领导的非Sun的程序员,一名非程序性项目的管理者,其他两名项目领导或社区管理者;
-
两名本地语言类项目代表,从成熟的本地语言类项目领导中选出;
-
一名社区贡献者代表,来自于孵化类项目领导和杰出成员;
-
一名Sun公司代表。
理事会每月至少召开一次会议,如有必要也可临时召开。会议以互联网中继聊天(Internet Relay Chat,IRC)的形式召开,会后通过电子邮件确认会议记录。任何社区成员都有权查看会议记录,并向理事会提案。
-
项目
OpenOffice.org社区内的资源是以项目的形式组织起来的,分为四大类:理事会、成熟类41、孵化类42、本地语言类43、网站资源。理事会类包含了与社区管理运作相关的信息,网站资源类包括OpenOffice.org下载、技术支持、开发资源的信息。
成熟类项目是指那些包含核心技术、或者关键用户信息的项目,现在共有22个。比如应用架构、组件技术、应用程序接口、XML文件格式、编译工具和环境、安装工具、数据库访问、图形系统层、用户界面、文字处理、电子表格、图形应用、语言模块、本地化、移植、文档、质量保证、市场推广等等。成熟类项目通常是社区开发者关注的焦点。
孵化类项目用来给社区成员提供测试想法的空间。这些想法可能是编程性的,也可能不是。只要能表明想法对社区明显的支持,任何社区成员都有权利创建一个孵化类项目。现有的孵化类项目共11个,包括:参考文献、商务拓展、软件发布、群件、KDE集成、项目管理、脚本、技术规范、社区统计、用户FAQ等。
本地语言类项目用来以用户的本地语言提供更多信息和资源,相关的工作包括翻译OpenOffice.org社区内的资料,介绍本地语言版本内所特有的资源和信息等。现在已经包含的本地语言包括:汉语、阿拉伯语、印地语、日语、韩语、老挝语、泰米尔语、泰语、越南语等37种语言。其中的汉语项目--“OpenOffice.org中文计划44”是由台湾地区的几名志愿者维护的,支持繁体和简体中文两个版本。
-
参与贡献
OpenOffice.org社区欢迎公众对OpenOffice.org的关注与支持,为此建立了必要的设施使得开放源码技术能够被所有感兴趣的参与者获得。参与者可以很方便地下载软件、获取技术支持、以及开发资源。
实际上无论角色如何,每个人都可以对OpenOffice.org项目提供帮助。参与越多则越能获得他人的信任和支持,项目的长期有价值的贡献者会获得直接向代码库提交代码的权利。OpenOffice.org网站上注册的用户都是OpenOffice.org的“成员”,社区鼓励成员参加到项目中并订阅该项目的电子邮件列表。参加到项目中的成员首先的身份是“观察员”,如果对项目的贡献频繁并确有价值,就能够获得 “开发者”的身份,拥有对代码库的写权限,只对项目文档有写权限的成员称之为“内容开发者”。开发者在提交不止于微小改动的代码前必须要签订《共同版权委托协议》8。项目开发者定期选举项目领导,项目领导负责指导该项目的方向,确保相关问题都被解答,并负责创建友好并相互支持的社区环境。
现在已经有很多个人和团体对OpenOffice.org社区作出贡献。Debian、SuSE、RedHat对软件打包,GNOME、KDE、Ximian对桌面集成与用户界面修饰方面都有贡献。Ximian甚至还建立了专门的OpenOffice.org网页45提供非官方的资源。虽然国内OpenOffice.org及其衍生软件的应用已经非常广泛,可惜的是,迄今为止只有寥寥几人签订了《共同版权委托协议》承诺为OpenOffice.org社区贡献代码。
其实开发者可以参与OpenOffice.org社区的方面很多,编写脚本与宏、扩展与集成组件、编译除错并提高源码、向新平台移植、本地化与国际化、撰写使用与开发文档、测试与质量保证等等。都是不错的开发型入手点。另外,技术支持和市场推广也是不错的非开发型参与方式。
OpenOffice.org社区由CollabNet提供主机并负责日常管理,代码库采用CVS维护,以IssueZilla管理“问题”。社区成员的主要交流方式包括电子邮件与邮件列表、IRC、网络日志(Blog)、时事通讯(News Letter)等。社区成员也会经常为媒体撰写文章并接受访问。由于OpenOffice.org社区成员来自于世界各地,所操母语千差万别,为了沟通方便起见广泛采用英语作为通行语言。
-
相关开源软件社区
全世界众多开源社区能够进行交流的基础是他们都认同开放源码软件的基本理念。OpenOffice.org社区作为三大开源社区之一,在获得开源软件领域广泛关注的同时,也获得了普遍的支持,与其他开源社区建立了密切的协作关系。比如:
-
Mozilla社区为了实现OpenOffice.org在Mozilla浏览器中的插件而密切合作;
-
Apache社区为OpenOffice.org提供了优秀的XML/XSLT46软件,并且在POI47项目中与OpenOffice.org合作将MS Excel文件格式文档化48,它的Cocoon49项目及其子项目Forrest50在服务器端能够把OpenOffice.org无缝集成进内容管理系统;
-
OpenGroupware51社区与OpenOffice.org群件项目52协作以提供邮件、日志、即时消息和白板等功能,其客户端软件Glow正在开发中;
-
Zope55/Plone56社区用Python实现了内容管理系统/架构,OpenFlow57以此为基础实现了工作流管理系统,它们现在都是非常流行的开源软件。Zope中所包括的CMFOODocument58和ZooDocument59支持对OpenOffice.org文档的访问,由此OpenOffice.org可以作为内容著作工具而集成进该内容管理系统。基于Zope/Plone的软件商icoya60就提供了包含OpenOffice.org的内容管理解决方案。国内也有一些Zope/Plone的相关社区,例如:Python中文社区61、Zope/Plone中文社区62、中文Zope用户组63,中蟒(中文Python)64等等。
OpenOffice.org及其它相关开源社区相互协调、共同发展,就可以为个人消费者和团体用户提供更优秀的软件以及整体解决方案。比如在办公自动化、电子出版、工作流、内容管理等领域,OpenOffice.org及其解决方案就有广阔的应用前景。
本篇对OpenOffice.org进行了简要介绍,概述了它的发展轨迹、应用现状与前景、社区组织结构等基本信息。读者可以看到,OpenOffice.org的应用范围不断扩大,与用户和开发者积极参与社区建设、第三方软件厂商的大力支持都是分不开的。作者在此也很希望国内能够有更多的软件开发者和其他志愿者积极参与到OpenOffice.org社区的建设中来。这不仅有利于促进OpenOffice.org的提高和应用,同时也有利于提高国内软件行业人员的技术与交流水平,从而有利于从整体上提高国内软件行业的国际化程度与竞争实力。
OpenOffice.org之所以能够获得广泛应用,原因不仅如此,更深刻地是在于它优秀的跨平台架构和开放的XML文件格式这些技术特性。下一篇将会重点介绍OpenOffice.org优秀的跨平台技术架构。