I’m sure there are hundreds of blog posts explaining how to care for an open source community. These are my notes. If you find them useful - that’s awesome - if not - please tell me why.
I’m a member of several communities, just to name a few: JBoss, TorqueBox, Fedora Cloud, Fedora Java and of course BoxGrinder.
I was a lucky enough to have a great teacher who jump-started me in the real meaning of open source. The learning of course isn’t over! Every day I learn new things - the Fedora community especially is a big mine of knowledge about open source and communities.
BoxGrinder
Since its beginning I’ve the leader of the BoxGrinder project. Our community is small but pretty healthy. We have people writing blog posts, reporting bugs and contributing code. We can discuss with them new ideas and we always receive valuable feedback.
Thanks guys for that - I really appreciate it!
Being an open source community leader is not only a great distinction but a great responsibility too. I’m sure people like Jared Smith, who’s the current Fedora project leader, know this best.
Today I would like to focus only on one word: openness.
Openness
Open source community is by definition open. The openness can be considered on many levels, though.
As free to join and leave
People will come and go. This is their right and you cannot change this. Some of them will be with you longer, some shorter, but at some point every single member will leave the community (hopefully not at the same time :)). There are several reasons why they’re doing it: loss of interest, bad atmosphere, job change, new kid on the block, etc.
The role of a community leader is to make the community attractive and compelling for people so they leave only when they have no other choice.
As removing barriers
There should be no barriers to join the community. This is also true for leaving it. It is bad to force people to fill a whole page of contact data just to access the forums. You don’t need it, so don’t waste people’s time!
- Forums - require only email address to register.
- Mailing list - require only sending an email to a well-known address to subscribe.
- IRC channel - make it easily findable and public, no restrictions to join the conversation.
- Twitter/Google+/Facebook - use it (wisely!) and wait: patience, patience, patience.
The whole community infrastructure must be easy to use and public. No, there is no such thing as private/closed communities.
As transparent decisions
Decisions making which could impact the community should be transparent. At least the community should know the plan. Ideally it would be when the community takes part in the decision making process. Sometimes it’s possible but in many cases community leaders are forced to satisfy the company requirements. As you can imagine such decisions are not always consistent with the community feeling. Be fair and honest with the community if nothing else.
As free to criticize and propose new ideas
Always listen to what people say. Kind words are good (who doesn’t like them?!), but you should really focus on criticism. Don’t be offended - constructive criticism always helps in the long term. Without it there would be no progress at all.
It’s important to listen to others as you don’t always have the whole picture of the problem. You’re not Alpha and Omega. I’m sorry.
It’s good to listen to others, but it’s even better pick up the best ideas they suggest. This simple step can give you two things immediately:
- Happy community: “I suggested something and it was put into practice!”
- Happy you: “Project is growing, my community is happy, I’m happy!”
Your opinions?
Feel free to share your thoughts about openness in the communities in the comments below!