Here at PyCon2011, there are quite a few open source rock stars in attendance. Software hackers of various stripes, developers from the corporate and community realms, and many other technically savvy and interested folks.
Of these speaking stars, we had the privilege of attending Asheesh Laroia's talk Get new contributors (and diversity) through outreach. Asheesh's talk was direct, explicit, and focused on community examples from his experience (which were mirrored in his messaging and takeaways).
Working with campaigns such as Students for Free Culture, Boston Python Meetup, and the San Francisco Ruby Meetup, Asheesh uses these real-world examples to illustrate the community-building and diversity strategies that we would like to share with you now:
Máirín Duffy, recipient of opensource.com's People's Choice Award 2010 and Senior Interaction Designer at Red Hat, is a top gun in the community engagement realm. Her team's Fedora design bounties serve as a shining example--not only for this talk, but talks within academia and the community at-large. From the context of these bounties, Asheesh identifies what really makes them so effective, and what motivates the folks on the sidelines to get into the game.
The message: Bounties work because they are clear to-do's.
Asheesh simply posted that there was a broken link on their site, that he found it embarrassing, and that someone should fix it. Low and behold, someone appeared out of nowhere, fixed the broken link, and became a continuing contributor to the site.
The message: Tell people exactly what to do. Usually they aren't here to fix a bug, but want to be part of something bigger. This opens the door to continued and growing participation.
Sarah went to her first meetup, and noticed women were 2 percent of the attendees. She and the other woman there, another Sarah, decided to run intro workshops for women and their friends. If you were a woman, you were invited. If you were a man, you were also invited, but only as a guest of a woman, as her plus-one.
The message: It was a lot of work, but female attendees went from 2 percent to 18 percent after their workshops.
Asheesh, who had learned from Sarah and Sarah's experience, decided to try a similar tactic with their local Python and Django meetup group. Initially they asked for 30 attendees, and within 3.5 days had filled up the slots. Using Meetup.com takes minimal effort, and the word got out. Next time, they want to fill 60 slots within 24 hours.
The Thunderbird community asked their contributors one-on-one questions like "How can we do better?", and "What would you rather be doing?" What they found was that there were no particular huge frustrations, but half of the contributors reported they participate because of Thunderbird's HUGE user base. Now Thunderbird uses this as a talking point with contributors--both new and old--to improve engagement.
The message: If you want to know how to make your community better, ask them.
Asheesh ran a talk called Debian for shy people at DebConf10, and part of that talk focused on the mentors' mailing list. As a follow-up from the talk, Asheesh noted that there were 30 unanswered threads.
He then posted a goal to the list: Every thread should get answered within four days. This was met with some resistance. What people saw was people not getting answers.
"You are not solving the core problem," they replied "Debian devs do not want to do package reviews." But even with their concerns, by the month of November, of 600 messages only three were unanswered (and Asheesh assured the audience that it wasn't because he was busy doing package reviews himself).
The message: Setting explicit goals gives the community something to work towards that works.
- Decrease latency (and terror)
- Set goals
- Tell people what to do concretely
- Attach people to strong communities
- Conduct one-on-one interviews
- Isolate people to one project and one mentor
- Talk about how much you hate doing project task X
- Demographics reinforce themselves.
- Consider biases in your outreach.
- Exploit biases in your outreach.
- All it takes is effort. It is not magic.
Asheesh ended with a call-to-action for the folks in attendance.
- Run a meetup outreach event.
- Run a starling bounty for your project, or help with another.
- Put your project on openhatch.org.
- Ask Asheesh for help.
For the benefit of our readers, the Q&A session was also transcribed:
Q: Do you have any suggestions to get people to put their toes in the water, such as edit wikis, etc.?
A: The point of the workshop at UPENN was this same thing. The biggest reason people didn't get involved was not taking the emotional jump, thinking they were not someone who should, or can. The best I can do, is sit down with people and SHOW them they can edit wikipedia.
Q: My project gets contributors and patches. What I'm missing is folks who step up to the next level, the maintainer level. Do you have any suggestions?
A: I'd suggest that deep down, they don't believe you need help with maintainership, or don't know that you need it. Have you asked them explicitly? This is part of making things explicit and inviting people from the sidelines directly.
Q: A community worried about diversity is a chicken/egg problem. How do you reach outside your community to get more women or whoever? In discussions I've had about diversity, some people think that exclusive events is a form of discrimination.
A: I agree, having a bunch of guys complaining about "We need more girls to show up," only adds to the despair. The SFRuby meetup was not an exclusive event, it was open to all, as long as, if you were male, you had a woman in your life to bring you along as her plus-one.