Participating rather than only consuming.
WHY CONTRIBUTE
Fixes you need get into the project and stop being your maintenance burden Influence over direction Reputation for individuals and the business Understanding of what you depend on
WHY THE FIRST REASON MATTERS MOST COMMERCIALLY
Local modifications must be reapplied at every update, indefinitely.
WHAT CONTRIBUTIONS LOOK LIKE
Bug reports Documentation improvements Code fixes Features Testing and reproduction of issues Helping other users
WHY BUG REPORTS AND DOCUMENTATION ARE VALUABLE
They are needed constantly and few people provide them.
WHAT MAKES A GOOD BUG REPORT
What you did What happened What you expected The version and environment Steps to reproduce it Whether it is consistent
WHY REPRODUCTION STEPS MATTER MOST
Problems that cannot be reproduced cannot be fixed.
WHAT TO DO BEFORE REPORTING
Search for existing reports.
WHY
Duplicates consume maintainer time, which is the project's scarcest resource.
WHAT TO ESTABLISH BEFORE CONTRIBUTING CODE
The project's contribution guidelines Its coding conventions Whether the change would be welcome
WHY THAT LAST POINT
Substantial contributions rejected after the work is demoralising and avoidable.
WHAT TO DO
Discuss it before building it.
WHAT TO EXPECT
Review, and requested changes.
WHAT TO AVOID
Large unrequested changes Rewriting things to your preference Impatience with unpaid maintainers
WHY
Maintainers are volunteers, largely, with limited time.
WHAT TO ESTABLISH INTERNALLY
Whether employees may contribute, and on what terms.