You are here:

Types of Contributions

Question: What types of contributions are being made?

Overview

Multiple, varied contributions make an open-source project healthy. Contributions may include writing code, managing the community, triaging bugs, evangelizing the project, supporting users, or helping in other ways. A variety of contribution types demonstrate that a project is mature and well-rounded with sufficient activity to support all aspects of the project, and enable paths to leadership that are supportive of various expertise beyond coding. Additionally, types of contributions along with project demographic information may provide insight into the diversity and inclusiveness of a project, helping inform decisions around project governance and how new contributors are welcomed.

Want to Know More?

Click to read more about this metric.

Data Collection Strategies

  • Interviews or Surveys: Ask community members to recognize others for their contributions to identify contribution types that may have been overlooked. Example questions:
    • Who in the project would you like to recognize for their contributions? What did they contribute?
  • Observations: Identify and recognize leaders in different parts of the project.
    • What leaders are listed on the project website or in a repository?
  • Non-code Contributions Tracking: Use a dedicated system, e.g., an issue tracker, to log non-code contributions.
    • Logging can include custom information a project wants to know about non-code contributions to recognize efforts.
    • Example, communication channel activity like mailing list discussions can be a proxy for QA contributions.
  • Trace Data Collection: Measure contributions through collaboration tool logs data(e.g., repository commits, wiki edits, or email archives).
  • Automated Classification: Train an AI bot to detect and classify contributions (e.g., distinguishing help requests from support provided, feature request from bug reporting).

Other considerations:

  • Automated reports may allow community members to opt-out and not appear on the contribution reports.
  • Acknowledge imperfect capture of contribution types and be explicit about what types of contributions are included.
  • As a project evolves, methods for collecting types of contributions will need to adapt. For example, when an internationalization library is replaced with a different one, project activity around localization conceivably produces different metrics before and after the change.
  • Account for activity from bots when mining contribution types at large scale.

Filters

  • Contribution types might include:
    • Writing Code
    • Reviewing Code
    • Bug Triaging
    • Quality Assurance and Testing
    • Security-Related Activities
    • Localization and Translation
    • Event Organization
    • Documentation Authorship
    • Community Building and Management
    • Social Media Management
    • Marketing and Campaign Advocacy


References

Contributors

  • Kevin Lumbard
  • Vinod Ahuja
  • Elizabeth Barron
  • Dawn Foster
  • Sean Goggins
  • Matt Germonprez
  • Peculiar C. Umeh

Additional Information

The usage and dissemination of health metrics may lead to privacy violations. Organizations may be exposed to risks. These risks may flow from compliance with the GDPR in the EU, with state law in the US, or with other laws. There may also be contractual risks flowing from terms of service for data providers such as GitHub and GitLab. The usage of metrics must be examined for risk and potential data ethics problems. Please see CHAOSS Data Ethics document for additional guidance.

Tags:
Was this article helpful?
Dislike 0