Return-Path: Delivered-To: apmail-xml-cocoon-cvs-archive@xml.apache.org Received: (qmail 12045 invoked by uid 500); 25 Jun 2003 14:06:08 -0000 Mailing-List: contact cocoon-cvs-help@xml.apache.org; run by ezmlm Precedence: bulk Reply-To: cocoon-dev@xml.apache.org list-help: list-unsubscribe: list-post: Delivered-To: mailing list cocoon-cvs@xml.apache.org Received: (qmail 11963 invoked by uid 500); 25 Jun 2003 14:06:07 -0000 Delivered-To: apmail-cocoon-site-cvs@apache.org Received: (qmail 11949 invoked from network); 25 Jun 2003 14:06:07 -0000 Received: from icarus.apache.org (208.185.179.13) by daedalus.apache.org with SMTP; 25 Jun 2003 14:06:07 -0000 Received: (qmail 18853 invoked by uid 1389); 25 Jun 2003 14:06:06 -0000 Date: 25 Jun 2003 14:06:06 -0000 Message-ID: <20030625140606.18852.qmail@icarus.apache.org> From: crossley@apache.org To: cocoon-site-cvs@apache.org Subject: cvs commit: cocoon-site/src/documentation/content/xdocs incubation.xml index.xml X-Spam-Rating: daedalus.apache.org 1.6.2 0/1000/N crossley 2003/06/25 07:06:06 Modified: src/documentation/content/xdocs index.xml Added: src/documentation/content/xdocs incubation.xml Log: Added new doc to help explain incubation. Content gleaned from cocoon-dev: http://marc.theaimsgroup.com/?l=xml-cocoon-dev&m=105641055101484 Revision Changes Path 1.6 +5 -8 cocoon-site/src/documentation/content/xdocs/index.xml Index: index.xml =================================================================== RCS file: /home/cvs/cocoon-site/src/documentation/content/xdocs/index.xml,v retrieving revision 1.5 retrieving revision 1.6 diff -u -r1.5 -r1.6 --- index.xml 25 Jun 2003 13:09:11 -0000 1.5 +++ index.xml 25 Jun 2003 14:06:06 -0000 1.6 @@ -21,14 +21,11 @@
  • Apache Cocoon - itself,
  • + itself. -
  • Lenya, an incubating website content management - framework based on Cocoon.
  • - - +
  • Lenya, an + incubating + website content management framework based on Cocoon.
- \ No newline at end of file + 1.1 cocoon-site/src/documentation/content/xdocs/incubation.xml Index: incubation.xml ===================================================================
The meaning of Cocoon sub-project incubation

After years of software development and hundreds of developers coming in and out, a concept crystallized around the ASF and it basically says:

A development community is more important than the software that it develops

The reason for this is simple: Software does not evolve by itself. Since software lives in an environment which is continously changing, then software that is perfect for the job today, might not be so in the future.

The existence of a healthy development community around code guarantees that software evolution will evolve to fit the environmental constraints.

What does make a community "healthy"?

Again, after years of successes and failures, there is general consensus that a development community is healthy if:

1) it exhibits diversity

2) it presents an open attitude toward confrontation, changes, and new committers

Note that the above rules do *NOT* take into consideration technological concepts: the ASF is *very* open to technological differences, so much so, in fact, that technical considerations are left to the users or to the markets, but are not filtered out by the Foundation itself.

The ASF cares *exclusively* about the quality of the communities and the reason is mainly because a healthy community brings back more energy to the foundation than it consumes (positive engine!), while a non-healthy community is very likely to drain more energy from the foundation than it is able to donate back.

The ASF can sustain its growth only if new efforts bring more energy into the system than they use, thus contributing positively to the entire energetic equation.

However building a community takes time and effort, expecially if it was never done before.

For this reason, the ASF created the concept of "incubation" to allow healthy communities to be bootstrapped.

A project under incubation is basically a project that is not yet considered healthy enough to be able to give back to the Foundation more energy that it consumes.

Many times incubation is done because lack of diversity. For example, if one entity (company, group or individual) donates software to the Foundation, but only people belonging to that entity work on it.

Diversity is important because it creates long-term stability. It has happened in the past that, for example, a company goes bankrupt and all the people who worked on the project are gone, leaving the project with no development community. This is unacceptable because a project without a working community drains an incredible amount of human resources and energy from the foundation to fix things and normally much more than the project is able to give back in the short term.

Incubation is a way to protect the ASF from the potential negative impact of social problems happening inside the effort being under incubation.

Projects under incubation can develop the community qualities that will make them exit the incubation period, or can simply die out. In this last case, the effort is simply cancelled or kept there in a limbo until somebody else shows up some interest.

Incubated projects are to be considered not ready from a community perspective. Importantly, this does *NOT* mean any judgement from a technological perspective but only from a community perspective! This is a of community infants that need mentoring by older communities to achieve the long-term stability that is valued by both the ASF and by the users who base their effort on the software the ASF produces.