Welcome!

Open Source Authors: Elizabeth White, Pat Romanski, Liz McMillan, Roger Strukhoff, Felix Xavier

Related Topics: Open Source, Java, XML, .NET, Linux, Virtualization

Open Source: Article

Looking to Pull in Developer Interest? Build a Community

Some key ways to make your open source community really work

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:

  1. An actively engaged community can provide valuable feedback and can help the development team improve on features, or include ones they may not have considered.
  2. An active community can push forward the adoption of a project far more rapidly than you could on your own. Developers posting on sites and talking about your work will draw in others. This peer-to-peer support model enables you to be successful far more quickly.
  3. You can also structure your community to put yourself in a strong position to crowd source skills, such as improving the applicability of a product into diverse areas.

A Community Approach Gives You a Route to Roadmaps
Open source has gotten to a point where it is a trusted vehicle. It encapsulates the power of distributed peer review and transparency to create secure, quality software that can be developed faster and at a lower cost than the development of traditional commercial products.

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?
This all might sound great, but the 1636.4 bitcoin question is how do you build a successful open source community and keep the momentum going?

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
Even today you might be surprised by the fact that some people just can't put ‘business' and ‘open source' into one sentence. But the reality is that a huge business economy has grown up around the ethos of open source, even to the point that Tesla recently made their code open source. We can see interaction between open source communities and companies commercializing products developed with their input.

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
You have launched your community; your next job is to develop it. Get the message out. Ensure that you find developers that will evangelize your project, be it through blogs, social media or presenting at trade shows. Whether they are employees or just members of the community, your evangelists are the folks who will engage your community on a daily basis, allowing for communication with the development team about what direction the community is heading in, and plan how to keep the product heading in that direction.

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
As long as the product is new and interesting, you will get lots of developers interested in your product and talking about the technology. The thing to watch out for is the steep slope on the other side of the peak. Once your project loses its ‘new' gloss, you will get interest shifting to newer technologies. How do you stay relevant?

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
Once your open source community is thriving, don't let the fire go out. It's important to ensure that the product fits in on an on-going basis. People are not going to build for something that they think is unnecessary. Of course there will be some member fatigue and drop off along the way, but if you continually engage with your developers - retention will be healthy and new ones will join. Sharing is hard work and requires energy, discipline and commitment. But the results can be phenomenal.

More Stories By Michael Williams

Michael Williams is a committer on the BIRT Project, and he is also BIRT Product Evangelist & Forums Manager at reporting and business analytics software specialist Actuate Corporation, which sponsors open source BIRT and offers commercial BIRT-based software to a community of more than 3.5 million BIRT developers around the world.

Comments (0)

Share your thoughts on this story.

Add your comment
You must be signed in to add a comment. Sign-in | Register

In accordance with our Comment Policy, we encourage comments that are on topic, relevant and to-the-point. We will remove comments that include profanity, personal attacks, racial slurs, threats of violence, or other inappropriate material that violates our Terms and Conditions, and will block users who make repeated violations. We ask all readers to expect diversity of opinion and to treat one another with dignity and respect.