Acknowledging Incubators

The Eclipse Development Process (EDP) defines “incubation” as a phase that projects go through on their way to maturity. New projects start in incubation to allow the project’s committers time to familiarize themselves with the state of being an Eclipse project, give them time to start developing a following in the community, and allow them some leeway to make and correct early mistakes. Projects in incubation can make releases, but they must be pre-1.0 releases, and must be labeled as “Incubating”. Frankly, I think that incubation is a fantastic idea and intend to keep it very much a part of the EDP.

An interesting use of the incubation phase as emerged and is the topic of discussion on Bug 300000 (which sounds a little like the title of a really bad sci-fi movie): the perpetual incubator. Many mature Eclipse projects now have projects that are intended to remain in perpetual incubation. These never-grow-up “Peter Pan” projects are an excellent place to innovate, test new ideas, and grow functionality that may one day be moved into the mature project. It is a curious, however, that the very notion of an incubator project is essentially (though not explicitly) forbidden by the EDP in its current form.

With the next revision of the EDP, I’d like to acknowledge the notion of an “Incubator” project. In Bug 300000, Holger Voorman and others propose that we adopt the name “Labs” for this notion to conform with precedents set by other open source organizations. Frankly, though, I believe that we’ve already established our own precedent and intend to run with it (I’m sure you’ll let me know if you disagree).

As I see them, Incubators are operating projects that never have releases; they do not require yearly continuation reviews; and they are not part of the release train. Incubators have builds, and downloads. They conform to the standard incubation branding are subject to the IP due diligence rules outlined for incubating projects. Incubators do not graduate.

I’d like to avoid creating any new process around the notion of Incubators. I’m hopeful that it will be enough to change some of the language in the EDP (and the Incubation HOW TO document) to allow projects to simply declare themselves as an incubator and leave it at that.

Unfortunately, I think that we may have a language issue. An “Incubator” project is in the incubation phase. However, a project in the incubation phase is not necessarily an incubator. A project like Mint, that one day intends to graduate, is in incubation. The Examples and the Equinox Incubator projects never intend to graduate and so are incubator projects in the incubation phase.

Maybe it’ll help if I stop thinking about it so much.

This entry was posted in Community, EDP. Bookmark the permalink.

3 Responses to Acknowledging Incubators

  1. Jeff McAffer says:

    Sounds like a good idea. Keep the changes minimal. I would not be too concerned about “incubators” vs “incubating”. Orbit never releases either but is not an incubator or incubating. As for yearly reviews, actually, they probably should have one to see if it still makes sense. For convenience this can likely be rolled into say the Equinox project release review. That is, as part of the parent project release review we add something that explicitly talks about the continuation of the incubators.

    As a side note, I think this is and example of where we went wrong in calling everything a “project”. Then we end up saying that all projects need reviews and then we end up with hundreds of reviews and lots of process. IMHO we would do well to simply say that certain things fall under the management and oversight of a parent project and leave it at that. But that would be a bigger change and I’m not really proposing that.

  2. I would prefer keeping incubator for what it is, a young project with aspirations of someday hatching.

    The labs should be adopted to those projects that are incubators for life.

  3. Holger says:

    @Wayne: Thank you for acting on my suggestion

    @Jeff: “Keep the changes minimal” doesn’t sounds like an innovation. Is our goal to keep the existing community by avoiding changes? If we’d like to increase our market share then external consistency seems more important than internal consistency.

    @Scott: Probably, you rhetorically used “incubator” instead of “Incubation”. 😉


Leave a Reply

Fill in your details below or click an icon to log in: Logo

You are commenting using your account. Log Out /  Change )

Google+ photo

You are commenting using your Google+ account. Log Out /  Change )

Twitter picture

You are commenting using your Twitter account. Log Out /  Change )

Facebook photo

You are commenting using your Facebook account. Log Out /  Change )


Connecting to %s