Most Read This Week
Looking to Pull in Developer Interest? Build a Community
Some key ways to make your open source community really work
By: Michael Williams
Aug. 10, 2014 11:00 AM
As software consumers, we've become spoiled with the number of choices there are when it comes to open source and freeware. There are so many technologies and vendors out there shouting for attention that you don't often have to look long to find a usable solution. When you're on the other side of the relationship, this means that consumers (in this case, developers) aren't necessarily going to come running because you released new software. You have to find a way to get their attention. One solution is to build, grow and sustain a community.
By building an active community, you can enhance an open source project in several different ways:
A Community Approach Gives You a Route to Roadmaps
Why has this trust developed? Because there is a certain trust to be found in being able to see the source code. Even if you never get your hands dirty yourself, it's nice to know that you could.
As a matter of fact, Actuate runs contests for some plug-ins and the product started to move towards Big Data before it really got on the radar, because people were asking for it in our open source community. One of our community's developers wrote a mongoDB extension for a contest before we'd even seen the need for one. That helped push us to start thinking about partnering with Big Data companies to create BIRT ODA connectors for some of the more popular platforms.
A key advantage of an active open source community is it can help you understand the product's requirements in the wider world and help you put in place an achievable and maintainable roadmap to drive forward.
So Where Do You Start?
The first question you have to ask yourself is: What are the most important things you need to do to drive community for your open source project? From a sharing perspective this will depend on what kind of license you opt to choose as to whether you are going to build a small, vibrant community - or the largest community you can.
The license defines the responsibilities placed on third parties in your community, so ensuring you have the right license to sustain the project in the way you choose is essential. Some open source licenses are very permissive, others can be very restrictive. Because of this difference, developers must pay close attention to the licenses of the different software they're using, so I can't stress enough how important this aspect is to the adoption of your product.
You must also give your project a clear value. Remember, just because it says open source on the tin, it doesn't mean other developers will rush to open it. So product design, the APIs, openness and the applicability of that software for the kind of problems people are trying to solve are all key topics you must outline.
Finally you need to get the structure and the organization of the open source project right. If you don't get the foundation right on a house it will fall down. The same goes for an open source project. Make transparency your mantra. Transparency gives a community trust. Make sure you highlight who is behind the project, the variety of ways developers can get involved in the project, what commitment is expected, how the QA and the release process will work, and be sure to open up the roadmap.
You also need to be clear on who is looking at the project. Some will visit because they want free software and want to find out how it works, others will climb aboard because they think it is a project worth supporting - something that can change their world or even THE world. It is these developers who will evangelize for you.
Developers are investing their time in your project, so they need to have a clear picture of how you envision it taking shape. Your vision and their vision should be on and the same, if you are running an effective, engaged community.
The Importance of Senior Management Backing
Senior management of the project sponsor company has to be clear that open source isn't a business model in itself - it is a way of developing and distributing software, and it is growing in importance. Any business model built around the concept of open source will affect the community and this must be appreciated internally. Senior management must understand why the community is important, what the benefits are and that their interests and concerns are satisfied. An active community has strength in numbers and, if not inspired, community interest will flail, or worse. Bored developers who don't find continually refreshed relevance in your community will vote with their feet.
Set up metrics to track interest. How many developers visit the site? How many sign up? Once signed up how many get actively involved? By producing statistics, you can report back to the executive team on how there is a real link between the growth of the community and the growth in the number of projects springing up around the commercial software.
Building Blocks in Place - Now Grow It
Make sure your message is clear on your website. You must explain to developers what the project is all about, why they should find it interesting and what skills they can bring to the party. When all of this is clear, developers will feel comfortable sharing your project as a way to help others when the chance arrives. Word of mouth can be a wonderful and powerful thing if you've done everything right.
Don't forget developers like to get their hands dirty, so build tutorials and examples or APIs - and get them out there to be found.
Make sure you have someone on hand to support early adopters. Developers need to be able to connect quickly with internal experts to help with any initial hurdles they may come up against. Initially you will need to run discussion groups and forums, but as your community grows the members will start answering questions for other members. To work with it, the initial users need to know how it works, so communication with these folks is very important.
Cross Pollination Is Key
Cross pollination will help here. First, set up an outreach program to other communities, have cross-postings, and share information. Partnerships can help keep the momentum going. By linking up you become bigger and stronger and you bring new blood on board.
Secondly, capture the interest of your developers by talking about new cases with new technology. The Internet of Things is hot right now. Recently, we combined forces with Eurotech to provide an end-to-end people counting and environment monitoring system using sensors, Raspberry Pis, and BIRT. We were able to take live sensor data and other data from multiple sources and visualize it in a dashboard allowing meaningful correlations to be made. This has been a huge attention grabber for us, so look at partnering with some companies in this space or other hot spaces to spotlight the usage of your product. Make sure you communicate these new and interesting use cases in the form of presentations and short videos. Place them on YouTube, iClips and Google. By reaching out to developers through these types of methods, you can you will grow the community and retain interest.
Keep Stoking the Fire
Reader Feedback: Page 1 of 1
Subscribe to the World's Most Powerful Newsletters
Today's Top Reads