2013 Eclipse社区报告,2013eclipse社区
2013 Eclipse社区报告,2013eclipse社区
简介
Eclipse自2012年发布年度社区报告,内容涵盖Eclipse社区定位、战略、关键性决策、财务、会员发展、创新等方方面面的信息。
欢迎阅读第二次Eclipse基金会社区报告(2012年度报告请看这里)。您对报告任何内容和形式的评论或反馈请发送到emo@eclipse.org,我们将不胜感激。
本报告除了财务部分内容都将涵盖从2012.4.1至2013.3.31这段时间的所有信息。
2013.6发布
关于我们
Eclipse基金会章程中的定义如下:
Eclipse技术是一个厂商中立的开放开发平台,提供框架、示范性可扩展工具(Eclipse平台)。Eclipse平台工具的示范性体现在它们验证了Eclipse框架的通用性,展示了如何合理使用这些框架并支持Eclipse平台自身的开发和维护。Eclipse平台工具的可扩展性在于可以通过编程接口扩展自身功能。Eclipse基金会公司(即Eclipse基金会)成立的目的是推动Eclipse平台的创建、发展、推广和支持,培养开源社区和生态系统的配套产品、功能、服务。
简而言之,Eclipse社区的愿景是:
成为个人和组织协作开发商业友好开源软件的主导社区。
战略
董事会制定的Eclipse基金会2013战略目标如下:
- 成为开发人员的首选平台。Eclipse的目标旨在定义一个免费授权覆盖整个软件生命周期的开源开发平台,在不同的问题领域成为桌面及Web应用开发和部署的首选平台。自2004年开始,Eclipse项目采用了创新的运行时技术,比如Equinox和富客户端平台(RCP)。最近几年Eclipse运行时技术稳步提升,与此同时OSGi的关注程度也在快速上升,Eclipse的插件开发模型正是基于该技术。展望未来,我们期望采用Eclipse构建的项目和采用了Eclipse运行时技术的项目都能有快速地发展。
- 在高速发展的web、云和移动平台上发展Eclipse技术,而不仅仅是Eclipse IDE。当然,这个目标必须要建立在Eclipse社区不断发展的技术集合基础上。体现该目标的项目有Orion和我们的machine-to-machine项目。
- 为各个层次的会员创造价值。Eclipse基金会服务于那些有志于在商业产品和服务领域提升Eclipse技术的成员。Eclipse基金会专注于Eclipse生态系统中的商业机会,寻找并持续改进Eclipse市场及其它有益于会员的创新。提交者不仅是Eclipse基金会的一分子,他们在很多方面可以看作Eclipse的中流砥柱。Eclipse基金会及其员工年复一年地持续寻找服务和项目社区可以改进的地方。在2013年里,主要的改进目标有web、下载、代码管理、构建以及其它关键的基础设施。
- 培育生态系统,尤其要在纵向上培养。创建一个基于Eclipse并不断完善Eclipse技术的大型商业和开源社区是Eclipse成功的首要因素。每一次将Eclipse技术应用到某个产品、服务或应用程序的开发都会让Eclipse社区变得更加强大。2013年我们的目标是继续专注于创建特定产业的工作组和Eclipse新项目,例如航空、汽车和金融领域。
- 继续发展多样化收入模式。依赖单一资助会受到特定产业商业周期的负面影响,让基金会陷入更大的风险。发展多样化收入模式的目标是确保收入来自多种类型组织并寻找其它收入来源,比如会议和赞助等。
重要决策
过去的一年中,董事会制定了很多影响Eclipse未来发展的战略决策。详细内容可以参见董事会的会议记录。
- 签署了Oracle TCK协议:经过长期曲折的过程,Eclipse基金会签署了Java TCK协议。所有Eclipse项目如果需要都可以使用TCK。由于TCK协议会给开源项目带来障碍,因此使用TCK的过程会严格控制。对于请求使用Java TCK的项目,必须满足下列条件:
- 项目PMC必须公开讨论并同意向EMO申请TCK
- 项目的战略合作伙伴希望使用TCK
- 董事会绝大多数对该项目使用TCK投了赞成票
到目前为止,EclipseLink和Virgo项目经过董事会批准使用TCK。
- 贡献者许可协议:以前,Eclipse项目不依赖贡献者许可协议(CLA)就可以得到合并提交所需的必要权利。项目的提交者会向每个贡献者提3个关于他们贡献代码来源的问题。然而,随着Eclipse社区迁移到git并采用像Gerrit这样的代码审查工具,之前的做法会明显地阻碍贡献。因此在2013年Eclipse基金会将会为贡献者制定CLA。
- 审查Eclipse公共许可证:Eclipse公共许可证的草稿差不多是15年前完成的。董事会决定向Eclipse社区和开源社区征求反馈进行改进和更新。一个透明的由社区主导的讨论在2013年已经启动。
财务
Eclipse基金会的财务年度截止日期是12月31日,由Deloitte & Touche, LLP进行审计。它是在美国特拉华州注册的一家非营利性组织,总部位于加拿大渥太华。
2012年Eclipse基金会的财务表现稳定。谷歌的会员等级升级为战略开发者,网站广告收入保持强劲,来自工作组的收益持续增长。除了原先预计的30万美元亏损之外Eclipse基金会只亏损了10万美元,现金储备还在持续增加。整个组织整个财务表现稳定。
过去3年的财务审计数据都包含在下面的表格中。
会员
截至2012年,Eclipse总共拥有186名会员。到2013年末,会员总数达到190名。去年加入Eclipse的公司包括Architexa、Checkmarx、Combitech、Coverity、DevBoost、Eucalyptus Systems、HP、Intecs、Itpearls、Lucierna SL、OpenGeo和WireframeSketcher。
长期支持
长期支持项目(LTS)是2012年启动了 一项针对Eclipse会员的新项目,旨在:
- 在提供Eclipse技术支持和维护的基础上鼓励组织间的协作。
- 提供长期(数年)和超长期(数十年)的Eclipse技术支持和维护。
本质上,LTS是为那些已经开发了基于Eclipse产品并需要基础架构支持和维护的公司节省时间和资源。从历史来看,构建并修复老的Eclipse发布版本是一项非常困难的任务。更糟糕的是,每个公司都要根据自己的需要开发必要的功能和流程。LTS工作组的目的就是提供一个单一、共享的服务,在商业产品中更容易地支持和维护Eclipse老的发布版本。
工作组
随着Eclipse社区的成长,对Eclipse“风格”的开源项目开发方式需求越来越多,关注点都聚焦于在开发代码的同时维持一个商业生态系统。Eclipse工作组因此蓬勃发展。Eclipse工作组是独立的、具有相同利益的社区组织,这些社区拥有自己的财团和项目。有时候,工作组会维护自己独立的代码库、网站和品牌。然而,所有工作组都会在Eclipse开发流程和知识产权政策下运作。
- 汽车制造领域:汽车制造业的创新主要在于电子和软件功能的创新。汽车系统变得越来越复杂,一个涵盖整个供应链的开发工具台已经成为了业界的迫切要求。要加速产品开发、创建高质量的软件功能、改善供应链集成就必须对件开发工具进行改进和创新。过去的一年里,Eclipse汽车制造工作组定义并发布了第一个针对汽车制造软件开发者的工具。这次的发布包含了一个稳固的平台,该领域的工具提供商可以在这个平台上进行构建。工作组的其他项目专注于环境、工具认证流程以及各种其他工具扩展。目前该工作组包括了 BMW Group、Continental AG以及Robert Bosch GmbH。
- LocationTech:LocationTech工作组专注于拓宽位置感知技术的应用。目前该小组选择了4个关注的领域
- 存储和处理大数据
- 模型驱动开发
- 桌面、Web和移动地图
- 实施分析重要商业数据
LocationTech工作组于2013年2月5日正式启动,工作组不断成长并表现出了强劲的势头。创始成员包括IBM、Oracle、Actuate和OpenGeo,成员包括OSGeo和卡尔顿大学的测绘学和制图研究中心。目前已经有4个项目和提案准备启动。
- 机器对机器 (M2M):EclipseM2M工作组在构建M2M应用开发平台、协议和工具方面取得了重大进展。目前有3个活跃的Eclipse开源项目针对M2M领域:1)Koneki提供了Lua开发工具;2)Paho提供了MQTT客户端的开源参考实现;3)Mihini提供了设备管理框架。Eclipse还加入了OASIS技术协会参与MQTT协议的标准化工作。M2M工作组的活跃成员包括Sierra Wireless、IBM、Eutrotech和Axeda。
- Polarsys (航天):Polarsys的目的是构建并维护一套开源工具,用以开发苛求安全性、密集型的嵌入式系统。相关的领域包括航天、国防、运输、通信、能源和医疗保健产业。这些行业对开发工具有很多特殊的要求,包括长期支持和维护等。在Polarsys成立后的一年时间里,发布了他的第一个路线图。目前正在开发Polarsys IDE的第一个版本,预计2013年10月发布。除此之外,Polarsys成员还启动了其他项目。目前成员列表包括Airbus、 CEA List、Ericsson、Thales、Atos、Intecs、Obeo、Combitech和SoyaTec。
会议和活动
谈到Eclipse基金会活动就不能不提到我们成功的社区会议。EclipseCon和EclipseCon Europe 都取得了巨大的成功。这两项活动无论从参与者、赞助商和参与者的积极反馈方面都大大超出了我们的预期,作为参考数据EclipseCon 2012的参与者给出了总体评分是1.77(1=出色,2=非常好),这是我们举办会议中得到的最高分。2013年的第一场会议是EclipseCon France。
EclipseCon会议、Eclipse Days和DemoCamps 是Eclipse基金会的主要活动,通过这些活动增强社区间的个人关系,创造面对面交流的机会。我们强力推荐所有Eclipse社区的参与者都能够参加这些活动。
知识产权管理
在2012年4月1日至2013年3月31日这段时间,Eclipse基金会收到了920次代码审查请求完成了其中的740次请求。随着Pablo Jacubovich加入IP组担任知识产权分析师以后,在知识产权(IP)领域相关的资源限制得到了缓解。
除了Pablo加入IP组以外,相比去年Juno的审查次数(136)Kepler同步发布版本的审查数量大幅减少(27)。这使得IP组的工作量达到有史以来的最低点。截止到撰写本文位置,代码审查的总次数为70次。
随着工作组活动的增加和更多的现有开源项目迁移到Eclipse,可以预期接下来的一年里会有大量的代码审查请求因此代码审查数量会有所上升。基于预期的增幅,2013年IP组不再需要雇佣新员工。
创新
过去的一年里Eclipse社区出现了大量可喜的创新。一些关键项目和技术领域都在下面列举出来,包括他们的最近动向和未来走向。虽然不是非常详尽,但是希望能够突出Eclipse社区正在进行的那些令人激动人性的技术。
在2012年Eclipse活跃项目和提交者出现了一定下滑,然而总体的提交次数却有所提升。(这些数据基于对代码仓库活动的分析)
Juno同步发布
2012年6月Eclipse社区发布了Juno,这是Eclipse的第七次年度同步发布。包含前一次的Eclipse平台发布,这已经是第9次准时发布。Juno同步发布包含了71个项目,总计6千万行代码。
这次既定的发布是Eclipse近几年来成功的一个关键性标志,也是Eclipse生态系统的重要一环。
随着Juno的发布,Eclipse 4.2已经成为了Eclipse社区的默认平台,也是自2004年以来Eclipse平台的第一个主要版本。Eclipse平台4.x版本包括:
- 编写插件更简单(例如,让Eclipse成为更好的富客户端平台)
- 更好地控制基于Eclipse产品的外观
- 提升平台贡献者的多样性
- 向后兼容API清洁的客户端
随着2013年发布的Kepler,Eclipse将不再继续支持3.x系列。
其它Eclipse Juno新特性包括:
- 新的Koneki项目为M2M应用开发提供了世界一流的Lua开发平台
- Equinox提供了新的OSGi R5规范参考实现
- Eclipse Virgo 3.5提供了新的Virgo Nano使得开发者可以部署小巧、快速、基于OSGi的应用程序
- Xtext成为了Java开发者的新语言,并将引入调试支持、改进的IDE支持以及新语言特性,包括property、数据类和成员类型推断
- Xtext 2.3将会支持对使用Xtext创建基于JVM的DSL进行调试,此外还会更紧密地结合Java开发工具(JDT)
- Eclipse Code Recommenders让开发者更加精明地使用API。基于一个知识型高级分析器对现有的API使用情况进行分析, Code Recommenders在构建Java应用程序时会向Eclipse开发者提供智能化API推荐。
新项目的完整列表包括:
- Orion
- Graphical Modeling Framework (GMF) Tooling
- Model Focusing Tools
- Intent
- Virgo
- BPEL Designer
- Koneki
- Code Recommenders
- Sapphire
- Xtend
值得注意的是,在Eclipse发布Juno之后报告了严重的性能问题。其中的大多数都是因为那些难以测试的插件和使用。Eclipse平台组作出了快速反馈,在2013年发布的4.2.2版本定位了绝大多数已知问题。
有趣的新项目
过去的一年里,Eclipse基金会吸引了很多有趣的新项目。一些这方面的例子包括:
- Vert.x: Vert.x项目在2013年2月决定迁移到Eclipse基金会。Vert.x是一个基于JVM的多语言运行时项目。尽管Vert.x加入了EclipseRT社区,但是该项目并没有使用OSGi。
- Eclipse Bundle Recipes:EBR项目提供了”处方(recipe)“,通过模板文件的形式将开源函数库Jar文件转成OSGi Bundle。EBR是EclipseRT的一个子项目并且提升了现有项目的功能。
- uDig:uDig不但是Eclipse第一个定位技术项目,还是一个基于Eclipse富客户端技术(RCP)构建的开源桌面软件框架。
- Sirus:Sirius旨在提供由图形、表格或者树形模型编辑器组成的多视图工作台。用户只需要了解极少的Eclipse技术就可以随意定制自己的模型工作台,在需要时还可以进行深度定制。
- Mihini:Mihini项目是一个嵌入式运行时的开源实现,提供的高层Lua API可以用来开发可移植的M2M应用程序。这是Eclipse上的第一个Lua语言项目。Mihini与Koneki紧密相关,并提供了一个基于Eclipse的Lua IDE。
提交者和项目社区
EMO是一项旨在为Eclipse提交者和所在项目提供稳定改进的服务。下面是一些相关数据,包括一些去年作出的改进。
- Eclipse社区已经从CVS迁移到Git作为源代码管理工具。在2012年12月21日CVS已经关闭,于此同时SVN也已经不鼓励使用。到今天为止,git.eclipse.org已经涵盖了500个代码仓库。
- 关键性的三项服务:Bugzilla、Git和网站www.eclipse.org总体可用性达到了99.94%,其中Bugzilla和Git的可用性甚至达到了四个9(99.99%)。然而针对论坛的DDoS使得站点的可用性降低到了99.83%。
- 我们整个服务器基础设施都已经迁移到了一个新的数据中心,并且提供了额外的存储空间,改进的空调系统,增加了42%的带宽已经更强大的电源支持,降低了基金会的运作成本。
- 部署了新的服务器:为额外的CBI(构建和测试)提供了虚拟主机,数据库方面增加了一台新的服务器以及2TB的存储单元执行构建相关任务,取代了8年半之前的老机器。
- 截至2012年9月,我们已经实现了基于开源软件进行备份和系统恢复。这个解决方案比起之前的系统除了更加经济以外,而且实践证明更加灵活可靠。
通用构建基础设施
通用构建基础架构(CBI)是由Eclipse基金会为项目提供的一项服务。CBI是一组帮助项目在Eclipse服务器上构建代码的技术和服务。这些技术包括Maven、Tycho、Hudson和Nexus。核心的无法包括一个Jar签名工具、MacOS签名工具和Windows签名工具。
CBI已经部署到很多项目上,目前已经涵盖了60个以上的git仓库。值得一提的是Eclipse平台项目也采用了CBI。对于CBI的第一印象是非常积极,因为他们可以在几分钟内构建Eclipse平台。
CBI的主要目标是进一步减少向Eclipse项目贡献的障碍。通过降低构建和测试Eclipse代码门槛,我们希望鼓励更多的开发者向Eclipse项目贡献代码。我们会继续投入CBI并尽可能地推广到其他Eclipse项目。
项目管理基础设施
2012年晚些时候,Eclipse基金会完成了取代现有项目管理基础设施的首次发布,其中包括开发者门户网站。改进后的门户网站提供一体化基础框架,所有项目都能够更加容易地对项目活动进行统一管理。
Eclipse在这方面的努力包括:
- 更好地一致性:我们实现了配置/数据驱动项目Web并为项目的发布、审查和计划提供了直接链接。提供的信息包括项目基础元数据、项目计划和发布审查信息。这些信息都来自(易于提升的)一致性数据,这些数据都采用相同的格式(而不是任意格式的多个文档)。
- 信息更集中:提交者可以在项目信息页面即时编辑。只要有可能,只要能在一个地方发布的文本或信息不会提供其他链接。与审查、投票等相关的评论和讨论都会直接在讨论的地方显示。
- 启动项目更快速:通常,由数据驱动的项目站点会包含相同的项目发布、生茶、下载等链接。项目也可以根据需要覆盖默认配置给出定制的Web。设置项目站点只需要进行一些配置,不用PHP编程以防止使用私有API。
译文链接: http://www.wld5.com/5025.html
[ 转载请保留原文出处、译者和译文链接。]
用户点评