The Eclipse e4 Project is a proposed open source project under the Eclipse Project.
This proposal is in the Project Proposal Phase (as defined in the Eclipse Development Process document) and is written to declare its intent and scope. This proposal is written to solicit additional participation and input from the Eclipse community. You are invited to comment on and/or join the project. If you are intending on contributing to the project, you may also edit this proposal.
Please send all feedback to the https://dev.eclipse.org/mailman/listinfo/eclipse-incubator-e4-dev mail list.
The Eclipse platform was first targetted to building an extensible IDE component framework. It has since grown to into Rich Client Platform, enabling whole new categories of scenarios and domains. As the software landscape changes, so must the Eclipse platform in order to remain relevant and vibrant. These trend lines point to web technologies, new user interface metaphors, and distributed infrastructure. Now is the time to rethink elements of the platform so that Eclipse may remain at the forefront of application development.
The mission of the e4 project is to build a next generation platform for pervasive, component-based applications and tools.
Specifically, efforts will be directed towards but not limited to:
- Simplify the programming model, make it easier to write plugins
- More uniform APIs
- Rationalized and consistent application model exposed as services
- Plugins in other (non-Java) languages
- More flexible, sophisticated UI styling
- DOM based access to model of workbench
- Improve separation of appearance and underlying function
- Enable a broader array of applications to be built from Eclipse
- Scale down to simpler RCP applications
- Server-enabled Eclipse to permit Eclipse in a web browser
- Client/server programming
- Remote workspaces
- RESTful services against workbench DOM
- Multi-user enable the platform
- SWT Browser Edition: SWT widgets in native web technologies (e.g. Dojo, Flex, Silverlight)
- More flexible resource and build model.
- More integrated connection frameworks (both UI and non-UI) across projects (See E4/Connection Frameworks details)
As this is first and foremost a community effort, the actual set of items will expand and change to reflect the interests of those who join e4.
Also of importance are the necessary tools to be able to self-host, i.e. to develop e4 using tools based on e4. Wherever appropriate, we will use or adapt tools that already exist in other Eclipse pojects.
We expect the resulting platform to be backwards-compatible to Eclipse 3.x for API-clean plug-ins, possibly at the cost of 3.x plugins depending on compatibility plug-ins.
Additional information can be found on the e4 wiki.
Additional Details of Work Areas
<This section is for the community to provide additional work area information, either as details on the above scope or as additional areas. Please add a subsection with your name/organization and a brief description of what area you intend to work on>
Out of Scope
It is not our intention to duplicate tooling efforts underway in other Eclipse projects. Where possible and practical, we will seek reuse and collaboration.
This project is proposed under the Eclipse top-level project. Being a separate project from the existing Platform project gives it room to innovate without disruption to the ongoing 3.x stream work taking place in the Eclipse Platform project. It also welcomes a new set of contributors.
We foresee the following possible paths for the e4 project:
- Work areas of the e4 project, as they graduate, are merged into the mainline Eclipse Platform project.
- The project as a whole graduates as a permanent project under the Eclipse project.
These paths are not mutually exclusive. Some combination of some or all of these paths may be the result of the work done in this project.
Proposed Initial Committers
The following list consists of the current committers of the Eclipse Incubator e4 component, and the participants of the e4 summit that was held in Ottawa, Canada, on May 22nd and 23rd, 2008.
- Bernd Kolb, Kolbware
- Bjorn Freeman-Benson, Eclipse Foundation
- Bogdan Gheorghe, IBM Canada
- Boris Bokowski, IBM Canada - Boris is a committer on the Platform UI component. He is interested in developing a new, simpler programming model for Eclipse-based applications, and generalizing the Eclipse platform to support multiple programming languages, distributed computing, and the web. He also would like to get rid of having to write listeners in UI programming.
- Carolyn MacLeod, IBM Canada
- Chris Aniszczyk, Code 9 - Chris leads the Plug-in Development Environment (PDE) project. He is interested in making e4 a reality and widely adopted in industry. His interests in e4 are improving self-hosting workflows, modularity, and being able to write plug-ins in different languages.
- Chris Recoskie, IBM Canada
- Christian Campo, compeople AG
- Dave Orme, Coconut Palm Software - Dave started VE, Eclipse DataBinding, and runs XSWT, the XML-based SWT page description language. Dave is an active Eclipse RCP contractor. He is interested in working on XSWT in Eclipse
- Doug Schaefer, Wind River - Doug is the CDT project and has been a CDT committer since the early days of CDT. He is also a member of the Tools PMC and Eclipse Architecture Council. His main focus in e4 is on the resource management system, good ol org.eclipse.core.resources and friends.
- Duong Nguyen, IBM Canada
- Ed Merks, Macro Modeling Ed does lots of stuff at Eclipse and has done so for years. He keeps his bio up to date at his website.
- Eric Moffatt, IBM Canada
- Felipe Heidrich, IBM Canada - Felipe has been an SWT committer for many years. He is a jack of all trades contributing to all areas of SWT. His main focus is on StyledText and Internationalization.
- Frank Appel, Innoopract
- Grant Gayed, IBM Canada
- Henrik Lindberg, Cloudsmith
- Istvan Ballok, CAS Software AG
- Jeff McAffer, Code 9 Jeff leads the Eclipse Equinox OSGi, RCP and Orbit teams and is the Founder of Code 9. He is one of the architects of the Eclipse Platform and a co-author of The Eclipse Rich Client Platform book. He is a member of the Eclipse Project PMC, the Tools Project PMC and the Eclipse Foundation Board of Directors. Jeff is currently interested all aspects of Eclipse components from developing and building bundles to deploying, installing and ultimately running them. Previous lives include being a Senior Technical Staff Member at IBM and work in distributed/parallel OO computing as well as expert systems, meta-level architectures and a PhD at the University of Tokyo.
- Jochen Krause, Innoopract Jochen is the project lead for the Eclipse Rich Ajax Platform (RAP) project, co-leads the Eclipse RT PMC and is a member of the Board of Directors of the Eclipse Foundation. He is interested in making e4 a comprehensive platform for desktop and web applications.
- John Arthorne, IBM Canada - John has worked on the Eclipse project for the past decade in almost all components. In recent years he has focused on the workspace model, concurrency infrastructure, provisioning (p2), and overall platform API quality. He intends to contribute to e4 in the areas of application/service model, API design, and help out with workspace/resource changes as needed.
- Kai Tödter, Siemens
- Kenn Hussey, Embarcadero Technologies - Kenn is lead of the MDT project and committer on the EMF project, in addition to several components of MDT. He is a member of the Modeling PMC and is interested in contributing to the workbench and resource models of e4.
- Kevin Barnes, IBM Canada - Kevin joined the SWT team in 2006. Before that, he has been working on the Eclipse Debug Framework and JDT Debugger. Previous to his employment at IBM, Kevin worked at IAM Training and Consulting, on projects such as IAM->Developing - a collaborative java IDE.
- Kevin McGuire, IBM Canada - Kevin is a Platform UI committer. He was one of the original Eclipse team members, in charge of the Team/CVS component. In the interim he's shipped enterprise level Eclipse based applications (IBM WSAD/IE and WID) in the role of UI Design and Development Lead.
- Kim Horne, IBM Canada - "Kim has worked on the Eclipse platform as an IBM employee since its 2.1.X releases. She is interested in the client/server split, perspectives (and their descendants), and the workbench in general. "
- Martin Oberhuber, Wind River - Martin is the lead of the DSDP Target Management Project, and chair of the Eclipse Architecture Council. He's been working for Wind River in Salzburg, Austria since 1998. Driven by his desire for constant improvement, he is involved in many areas around Eclipse and Open Source. Martin holds a Master of Engineering degree in Telematics from the University of Technology Graz/Austria.
- Matt Flaherty, IBM Westford (Lotus)
- Matt Hatem, IBM Westford (Lotus)
- Maxime Daniel, IBM France
- Michael Scharf, Wind River
- Mik Kersten, Tasktop
- Mike Morearty, Adobe Systems - Mike Morearty has been a developer on Adobe Flex Builder, an Eclipse-based IDE, since 2005.
- Mike Wilson, IBM Canada - McQ is an Eclipse Project PMC member, representing the Platform and Incubator projects. He is also the Eclipse Project Platform UI team lead and has in the past lead the Resources, Team and SWT teams. He is a member of the Eclipse Architecture Council, and one of the original founders of Eclipse. His technical interests are programming languages, UI design, and web development. He is actively involved in the technical leadership of e4, which is one of his main focuses.
- Nikola Zelenkov, IBM Canada
- Pascal Rapicault, IBM Canada
- Paul Webster, IBM Canada - Paul Webster joined the IBM Eclipse Platform UI team in May 2005 and is currently working for IBM Rational Software. Paul is responsible for command and handlers, keybindings, and menu contributions, and is interested in the evolution of commands in E4.
- Philippe Mulet, IBM France
- Rüdiger Herrmann, Innoopract
- Scott Kovatch, Adobe Systems - Scott is a developer on Adobe Thermo, which is a Flex design tool based on Eclipse. Prior to Adobe, he was the technical lead for the AWT for Mac OS X at Apple, and has contributed to the SWT on Mac OS X. He was named an SWT committer earlier this year, and is currently focused on the SWT port to Cocoa.
- Scott Lewis, Code9. Scott is the project lead for the Eclipse Communication Framework project (ECF) and was instrumental in it's initiation, design, and implementation. He is interested in contributing to the inter-process communications and application-level collaboration support within E4.
- Serge Beauchamp, Freescale Semiconductor
- Silenio Quarti, IBM Canada
- Steve Northover, IBM Canada
- Thomas Hallgren, Cloudsmith
- Thomas Schindl, Bestsolution GmbH - Tom joined the Platform UI team in 2007 as an external committer. Tom's main working area was JFace and his main interests in E4 are "Modeling the workbench" and "Declarative UI".
- Tim deBoer, IBM Canada
- Wayne Beaton, Eclipse Foundation
- Yves YANG, Soyatec - Yves YANG, Main founder of Soyatec and Committer of Eclipse VE, has over 17 years of experience working with OO software development. He was the chief architect of EclipseUML (First EMF/UML native Eclipse Modeler) and co-founder/CTO of Omondo from 2002 to early 2006. In Soyatec, regarding UI programming, he has leaded and developed a world-wide first solution of XAML for Java: eFace. He is interested in contributing to the Declarative UI/CSS Styling and the workbench model of e4.
- Brian Fitzpatrick, Sybase - Brian Fitzpatrick is a software engineer with Sybase, Inc., who has contributed to the Data Tools Project (DTP) since its inception. Brian's focus has mainly been on Eclipse tooling development for Sybase and he hopes to continue helping out with DTP for the forseeable future.
Support has been expessed by:
- Code 9
- Wind River
<Please add your company name here>
Relationship to other Eclipse projects
The Eclipse Incubator project has a component named "e4". We plan to move code from that component into the new Eclipse e4 project when it has been created.
A technical preview is planned for the summer of 2009, with the first regular release tentatively scheduled for the summer of 2010.