As with a garden, you need to cultivate your community, it doesn’t just happen.
You need to define the landscape – where you want the garden to grow. For a community this means clearly defining goals and non goals.
The landscape needs to be regularly assessed – are we welcoming to newbies? Can new plants grow here?
Clear the paths. Leslie mentions the example of rejecting code patches based on the coding style – if you haven’t published a style guide, that’s not the best way to welcome new contributors. Make sure all paths to success are clear for your community members.
A garden needs various types of plants – invite various types of people. Not just vague calls for help – specific, individual calls based on their skills usually work much better.
Pluck out the weeds, early. Do not let poisonous people take over.
Nurture your seedlings. Take care of newbies, help them grow.
Like companion planting, pairing contributors with the right mentors can make a big difference.
Know when to prune. Old-timers leaving a project is not necessarily a problem, things change.
Leslie cites OpenMRS as an example of successful community management – I’ll have to have a look but I already like the “how to be a casual committer” paragraph in their different types of OpenMRS developers page.
All in all, very interesting parallels. Being quite clueless about gardening, I never thought of looking at our communities from this angle, but it makes perfect sense. Broadening one’s view – that’s what a keynote should be about!