Starting a Project at the Eclipse Foundation
Why the Eclipse Foundation is Here?
We believe that open source and our guiding principles of openness, transparency and meritocracy provide an environment to win.
To that end, we exist to foster a community for individuals and organizations who wish to collaborate on commercially-friendly open source software.
The Eclipse Foundation is not-for-profit, member supported corporation that hosts the Eclipse projects and numerous working groups. We work to help cultivate both an open source community and an ecosystem of complementary products and services.
How Do I Move To The Eclipse Foundation?
Okay, great!
A little bit of homework is needed first. We recommend that you read over the Eclipse Development Process (EDP) and the Legal Resources pages. These will help you understand a projects responsibilities at the Eclipse Foundation.
All projects start out with a proposal. We make this easy for you. Just fill in an online form, follow the instructions provided in each section and submit. The Eclipse Management Organization (EMO) will review and email you some preliminary questions. These clarify and help us understand the proposals intent. We'll do a more in-depth review with further questions and suggestions. Our job is to help craft the proposal, in particular the scope so that it truly reflects the projects intentions. As you can expect, this is a collaborative effort with the project. Please be patient with this process, it can take a few emails and perhaps a conference call before we get it right.
Here are a few tips that will help your proposal and project sail along through our processes:
Proposal Tips
The best tip I can give, is to take the time to clearly and concisely explain the problem it addresses and the technology used. It always helps to imagine someone coming to your proposal who knows nothing about this problem area or technology.
- Remember that the background is just that, historical reasons and major inflection points that got the project to where it is today.
- The scope and description sections may seem similar but they are not. The scope is all about the bounds of the project; what is to be accomplished, produced and equally what is not going to be worked on or created. Add a line that states what's out of scope for the project. Think of the description as a non-technical pitch of the project, graphics do help. Make the first paragraph of the description an elevator style pitch; why would someone want use this or get involved in contributing code.
- Add project repository information. What type of repository do you want the project to use? Git (hosted on our infrastructure) or GitHub (gets mirrored back to our infrastructure)? Where's the initial code contribution coming from? If it's GitHub, provide the URL's.
- Fill in the future work section. What are some of the projects long term goals in both development and community building.
- Ensure you select a license type. Our projects are typically licensed under the Eclipse Public License (EPL). Each working group may allow a different default license. In all cases, dual licensing a project will require Board approval. If you have questions, we have answers.
- Provide a project lead(s). These names can change over the course of a project but we need a name to allow project creation.
- Add committers now. When we create the project, the folks listed on the proposal will be initial committers. Adding anyone downstream will require an election to be run (this is pretty easy).
- Get everyone whose name is listed on the proposal to create Eclipse accounts. This is a big help to us and will help get your project created quicker.
- Expand and explain any acronyms. You understand the domain but many don't.
- Adding URL's to are a great way to help explain complex concepts and offer more in-depth information.
- Be sure to list out third party dependencies and their corresponding licenses under the Initial Contribution section.
With the proposal finalized, we'll ask our Executive Director for approval to post for community review. Some additional questions may need to be answered before getting the approval. Community review lasts for at least two weeks. During this time we initiate a trademark search for the project name and look for project mentors. Once both of these conditions has been satisfied along with no pending legal issues, we will schedule the project for its creation review.
Once we have a successful creation review, the project is now officially an Eclipse project. Welcome aboard and congratulations!
Our Web and IP Teams work closely to provision the projects infrastructure (repositories, build servers, mailing lists etc.) and ensure that all the necessary legal documentation (committer paperwork etc) is in place.
When the project has been provisioned (repositories created, download space granted etc.), the project assembles and submits its initial code contribution. The IP Team will review and work closely with you to during this stage. Please be patient during this process. IP management is time consuming but one of the Foundations strengths and a major benefit to your project and community.
After you receive Parallel IP approval to check-in the code to your repository, the project is off to the races developing. You'll be bound by our Eclipse Development Process (EDP) and the IP Due Diligence processes. You'll have to wait until the IP Team fully approves the initial code contribution and go through a release review before you can let users download your projects code. While our development policies contribute some project administration and overhead, it ultimately benefits project adoption and the community around it.
Questions?
We're sure you have questions. This is a quick overview of getting a project started at the Eclipse Foundation. There are many details that we didn't cover.
We encourage you to review the links embedded in this article.
Remember, we're here for you; the projects.
Reach us at emo@eclipse.org.
About the Authors
![richard burcher](/community/eclipse_newsletter/2014/july/images/richard.jpg)