Some long standing open source projects suffer from contributor attrition. Many don't do any kind of 'exit interview' which is common in the corporate world, so we (as project leaders) may not know why someone left the project. The goal of this session was to capture some ideas for how we might identify why people quit, and if those reasons are 'fixable' in the project.
We discussed some of the reasons why people leave projects:-
Reasons why people leave:-
- Personal / work circumstances change - not something the project can necessarily 'fix'
- Conflict within the project - fixing issues can potentially get that contributor back
- Other, more interesting/shiny things occupy their time
- Change in policy at work allowing/not-allowing project contribution
Some methods were discussed for tracking when contributors are reducing their contributions and get in contact to find out why.
How Debian is tracking contributors:-
We talked quite a bit about using technical solutions to gather historical data:-
- Code commits (launchpad / github have feeds/APIs which can be used to track contributions
- Wiki edits
- Mailing list posts from the archives
- IRC chatter from public logs
- In person meet-ups attended
- Project blog posts
These of course differ per-project as the tools aren't all the same everywhere. Overall consensus was that it was ok to gather this data if it's already public, but probably not okay to re-publish / re-distribute as it could be seen as 'creepy'.
We also discussed the possibility of an easy way for contributors and ex-contributors to provide anonymous feedback. Two suggestions:-
- Have an "I'm Annoyed" button to trigger a 1:1 conversation
- Have an exit-interview as part of the "step down considerately" requirement
- Have regular, community-wide engagement survey
- Have 1:1 meetings between community contributors and community leadership/councils
- Celebrate people who leave for good reasons (new job, graduated university, etc), so leaving isn't only seen as a negative pressure
Some open points and questions left at the end of the session:-
- Sometimes the contributor doesn't realize they've left until after they already have
- How to decide how much inactivity counts as "dropping"?
- People contribute in ways which are hard to measure
- How do you help these people rejoin the community in the future?