Senior Software Engineer
Nominee for Committer Member representative
Equinox and RCP lead, Eclipse PMC member
|email:||jeff_mcaffer at ca.ibm.com|
We started Eclipse six years ago with a vision of a platform for composing function and creating toolsets for varying users in a wide range of domains. This has been a roaring success. The user-base and developer community have grown beyond our wildest dreams. Eclipse dominates the open source tooling market and the word "Eclipse" is now synonymous with "quality", "industrial strength" and "componentized".
The addition of many new language and tooling domains as well as RCP, OSGi and other technologies is a further testament to the draw of our technology and community. As a committer, you should be proud.
This success is not without challenges however.
Growth : The Eclipse community is growing by leaps and bounds. It seems every week there is a new project proposal to review. This is exciting but many of you have concerns about the strain this puts on the notions of quality and consistency that underly Eclipse. The good news is that tooling and infrastructure can help!
- API and version management. API and versioning are at the heart of the Eclipse component model. The new plug-in versioning scheme helps you express your intent while efforts like the WTP API tools help you manage your use of API. Work in these areas should be continued, expanded, and promoted across all projects in Eclipse.
- Bug management. We need to look for new and innovative ways of handling the thousands of bug reports that flow into the system on a monthly basis. Whether it is automated duplicate searching or human assistance, we need help!
- Release engineering and build support. The new build farm is an excellent idea. We must continually look for additional infrastructure and ideas that make the life of a committer, your life, easier.
- New project support. Teams attempting to start a project at Eclipse need help such as standard layouts, processes and structures, project mentors, reviews and interaction from the rest of the community.
Distributing your output : The Callisto release train is a bold and valuable experiment for both the project teams and our consumers. We should press forward, make it a success, learn from it, repeat it and broaden its scope. In addition, we should invest in new and innovative ways of distributing Eclipse plug-ins. For example,
- Plug-in repositories
- BitTorrent Update sites
- Dynamic download packaging
- Packaging and delivery consistency across projects
- Update technology investigation and use
Synergies : Eclipse has grown beyond the Platform, beyond WTP, beyond
. There are tremendous untapped synergies lurking. RCP and BIRT, DTP, Higgins, ECF, etc., WTP and DTP, STP. Some individual project teams are interacting here and there, but the power and usefulness of Eclipse as a whole would sky-rocket with modest but widespread investments in integration. We should promote and facilitate this interaction.
Similarly, we increasingly intersect with other open source communities such as Apache. The Foundation can play a pivotal role in promoting collaboration and cooperation with these communities.
Fine Print : It is surprising how often a discussion related to open source software turns into a discussion of licenses, IP, export laws, .... As committers we typically have only a rudimentary understanding of what it all means but yet getting it right is vitally important. We should look for practical but effective ways of lowering the legal barriers that block your progress and prevent your output from being used. For example, fast turn-around on legal reviews, documents of understanding between parties, license clarification or modification as needed, dual licensing, ...
I would be honoured to serve as your representative and work to further the goals and ideas outlined above.
About the Candidate
Jeff leads the Eclipse Equinox and Eclipse RCP teams. He is one of the architects of the Eclipse Platform and a co-author of The Eclipse Rich Client Platform (Addison-Wesley). He is a member of the Eclipse Project PMC and has been involved in Eclipse from the beginning. He is currently interested in helping realize Eclipse's original vision as a platform for composing general sets of application function to solve real problems. Previous lives included work in distributed/parallel OO computing (Server Smalltalk, massively parallel Smalltalk, etc) as well as expert systems, meta-level architectures and a PhD at the University of Tokyo.
IBM, OSGi Core Platform Expert Group member