OSGeo Community Projects

From OSGeo
Jump to navigation Jump to search

This is an OSGeo outreach initiative promoting "open source and participatory" geospatial technology. This outreach effort is undertaken by the OSGeo incubation committee to assist projects with open source and community development.

This initiative is currently being renamed (from OSGeo Labs) due to a conflict with GeoForAll committee use of the term.

Purpose

Welcome to OSGeo Technology. The projects listed here are part of the Open Source Geospatial Foundation and range from new experimental projects to established pillars of our open source ecosystem.

All projects here meet our goals as an organization - they are open source (no really we checked) and are inclusive and welcoming to new contributors. Projects that go on to establish excellence in community building, documentation, and governance can enter our "incubation" program.

Member Projects

The following projects are listed with the community projects:

The following projects have now graduated from incubation:

The following projects no longer meet the scope of this initiative:

There is an archive of the old OSGeo Technology Projects page at OSGeo Labs Page Archive.

Joining OSGeo

We would like to make joining OSGeo as simple and painless as possible. If you wish to join the foundation please send a description of your project to the OSGeo Incubation Committee Mailing List, or e-mail Landon Blake.

You will need to put in a little bit of effort (checking your license, source code and repository) before you can be listed. We will be happy to help answer any questions you have, but we do not have volunteers standing by to do this work for you.

If your project would like to join OSGeo the technology initiative asks:

  1. That your project is geospatial (or directly supports geospatial applications);
    • Data & doc projects would of course need an appropriate data or documentation license
  2. That your project is open source
    • Uses an OSI approved open source license
    • That you know where your source code came from, and that care is taken when accepting external contributions
  3. Participatory (accepts pull-requests)

Getting Started

If you need assistance meeting the criteria to be listed please ask for direction and help on the mailing list:

  1. Selection of an open source license if the project hasn't already done so.
  2. Checking your source code headers and history
  3. Setup appropriate LICENSE, CONTRIBUTING and README files (for github projects)

Once you have been accepted as an OSGeo Technology Project we would be pleased to help you with the next steps:

  1. Creation a home page for the project. The OSGeo wiki is recommended for this page.
  2. Announce and discuss the project on the OSGeo Discuss email list.
  3. Set the project software development up on the OSGeo infrastructure if appropriate (mailing lists, ec...).

Comparison with Incubation

As shown below there is some overlap with OSGeo incubation.

Responsibility Community Project
Open Source

- check headers
- See LICENSE.md

X X
Participatory

- See CONTRIBUTING.md

X X
Open Community

- communication channel
- decision making process

X
Active Healthy Community

- user and developer collaboration
- long term viability

X
Development Process

- version control
- issue tracker
- leadership open to new members
- transparent decision making

X
Documentation

- user documentation
- developer documentation

X
Release Procedure

- release process
- documented testing process

X
Foundation Resources Technology Project
Representation
incubation chair
project officer
infrastructure and facilities X X
promotion & marketing X X
budget and fundraising X X

Available branding:

Community Project
OSGeo Community Project OSGeo Project

Volunteers Needed

Assisting new projects is the responsibility of the incubation committee. If you are passionate about open source, helping development teams and making OSGeo great - we would love to hear from you!

As a volunteer you can help new projects with:

  • Project marketing.
  • Development of user and programmer communities.
  • Establishment of programs and policies for project documentation, copyright assignment, and licensing.
  • Establishment of programs and policies for software development. This includes version tracking, bug tracking, and feature request tracking, creation of a development road map, and organization of code sprints/events.
  • Establishment of project governance programs and policies.
  • Collaboration on technical standards, data formats, and code sharing with other open source geospatial software projects.
  • Utilization of software development infrastructure like mailing lists, bug trackers, version control software/hosting, and web hosting.
  • Mentor projects entering the OSGeo incubation program

How good is my project

While this can serve as a useful exercise for projects seeking to improve their game (and may be useful to incubation mentors) please note that it is only an exercise. You may also consider looking at Open HUB metrics as used by OSGeo Live (and are impartially calculated based on commit history).

In the past OSGeo Labs used an informal “project status” system to assist programmers and users evaluate projects under development.

  1. Source Code Completeness
  2. Source Code Stability
  3. Community Support (Mailing Lists, Documentation, Tutorials)
  4. Project Deliverables (Programming Libraries and/or Executables)
  5. Project Infrastructure (Source Code Versioning, Bug Trackers, Feature Trackers, Web Site, Mailing Lists, Discussion Forums)
  6. Project Governance (Decision Making Processes, Licensing, Copyright Assignment, Release Schedule, Coding Standards)
  7. Community Activity
  8. Marketing and Outreach

Here is what that ended up looking like:

  • RnD Project: This project is in the conceptual stage. There may be some source code written, but it is incomplete or very experiemental. The project may lack deliverables, community support, project infrastructure, project governance, community activity, or marketing and outreach.
  • New Project: This project is moving beyond the conceptual stage with some concrete code. However the code is still experimental and isn't stable. Projects at this status level could still experience a lot of change in their code base. This project should start to have some project infrastructure and some basic documentation.
  • Stable Project: This project has functional source code, although it may not be "mature and feature rich". For example, the code may only be usable as a programming library or a command line tool instead of featuring a GUI. The project has started to support users and programmers with communication tools, trackers, and documentation. The project has started to think about project governance and marketing, perhaps creating plans in these areas that are not fully implemented.
  • Established Project: This project has a usable and user friendly deliverable, like an executable program or a stable and well-deocumented programming library. The project is supporting users and programmers with communication tools, trackers, and documentation. It has started the initial phases of incubation. This includes addressing issues of copyright, licensing, and project governance. The project also has a marketing and community growth plan and has started to implement the plan.