General Principles of Incubation
This document is meant to be a guide to the incubation process in general. The goal is to introduce you to the concept of incubation in open source and how we do it here at OSGeo.org. It is currently a work in progress.
Introduction
Open Source (OS) is often associated with anarchy or certain rights to do as you please. However, software is complex, hard to manage, and most software projects are prone to total failure or riddled with debilitating bugs. The story is true in OS as well as proprietarily produced software. The simplistic view is that software is software. The primary difference between OS and proprietary software is that in OS, we can all see the code and in some cases see the process of code creation.
Open Source Project Principles
The key to success for software is elusive. There is no silver bullet. However, we can say that there are a few things that can contribute to success:
- Utility
- Some type of leadership and/or decision process
- A process for changes to the code
- Documentation (design and end-user docs)
End Users Principles
Software is useless, or at least unused, without end-users. We want to ensure that the project targets present in the OSGEO foundation are accessable to end-users. Thinking up front about end user needds helps by reducing the time that the project developers have to spend on support.
Here are a few things important to end-users:
- End-user documentation
- user email lists for supporting user questions
- Issue Management (on OSGeo we user Project Tracker)
- Home page and content (including documentation)
- Simple to use downloads with automated installation
OSGEO Foundation Principles
The OSGeo Foundation has a few things that need to be done:
- Intellectual Property verification of ownership and choice of OS license
- Contact with owners of the project
- A review of the merits of the project and if it is worthy of hosting at OSGeo.org
- Ensuring that the project is healthy
More about Intellectual Property
Intellectual Property verification is required for due diligence. It helps us all ensure the code is truly open source and that the licenses have been applied directly. The foundation is a legal entity and should cover its self. The license is also imortant as we must ensure that the open source license you are using is compatible with the foundation.
Incubation and You
Incubation is aimed at getting the above items to be done in some manner. The actual processes, content, and organization of the OS project is less important in this process as the actual execution and verification that these things are done. Incubation is meant to ensure that the project is ready and will succeed within the bounds of the foundation and that the foundation can help the project succeed.
Requirement One: Management
Projects should document how they manage themselves
Care and Feeding of Volunteers
Contributors are the scarce resource and successful projects court and encourage them.
Playing Nice with Others
Projects are encouraged to adopt open standards and collaborate with other OSGeo projects
Hatching
Here is a checklist:
- Projects should maintain developer and user documentation
- Projects should maintain a source code management system - svn or cvs
preferred
- Projects should maintain a discrepancy tracking system
- Projects should maintain project mailing lists
- Projects should actively promote their participation in OSGeo
- Projects are responsible for reviewing and controlling their code
bases to insure the integrity of the open source baselines
- Projects are encouraged to adopt OSGeo look and feel, branding, logos
on their project sites
- Projects are encouraged to participate in OSGeo standardization
efforts to present a common interface for OSGeo visitors and members
Assistence in the Inccubation Process
The OSGeo will in turn attempt to make available the best of breed open source collaborative tools and resources to support those efforts, if we offer better tools and resources projects will naturally migrate to the better implementations.
Discussion
I'm sure I've missed several important points, the main point being that we lead vs control.
New projects compete for our approval with the same guidelines - hopefully they will be included based on their perceived value to the OSGeo overall goals and objectives.