How to run a technology community

This has come up with several of the companies I’ve been advising over the past few months, so I thought I’d lay out a few of my rules and tips for how to manage a public technical support forum and build a technical community. My thoughts in this area come from twenty years of managing online communities from kitchen table hobby BBSes to tiny startups, to eBay and Yahoo! technical developer communities, to the half-dozen consulting customers I am working with today.

To my mind, the most important rule is that there should be one person in your organization who is responsible for the health of your community. We call this role the "community manager". It doesn’t have to be a full-time job, particularly if you’re a startup or an open-source project, but once your community starts numbering in the thousands of active users, it’s time to start thinking about hiring or outsourcing the management of your community.

The community manager is responsible for the health of the community. This means taking whatever steps are necessary to grow the community, making sure that the community is in alignment with the goals of the business or project, and helping to put out fires when they occur. It also entails the compilation and dissemination of metrics pertaining to the community’s health. Ideally, the community manager shares these metrics with the entire company (and, in some cases, with the community itself). The old business adage "you make what you measure" is at work here — if you are serious about building a community around your product or company and you aren’t sharing your community metrics with your entire team on a regular basis, you only have yourself to blame if the community turns out to be tepid.

The community manager’s report should contain metrics as well as anecdotal information about what’s going on in the forums. If three people post about the same bug in the forums on the same day and nobody from your engineering organization responds, it’s the community manager’s job to escalate that until the problem is resolved.

These days, the community manager is the voice of the company in the community. She’s typically used to convey announcements and news in a way that a spokesperson or public relations person might have done in the past. Here is where an English major with technical chops comes in handy.

Everybody on your team should participate in your community. (At the same time, it’s important that you have one and only one community manager — if everybody’s in charge, then nobody’s in charge.) At some companies I’ve worked at, people had to go through all kinds of hurdles to get permission to post to the forums. This is small-minded; it suggests that you mistrust or have not adequately trained your team. If you have an online forum, then everybody should be encouraged to post to it, particularly people who work for you.

There are a bunch of tactical things to making a community forum work. When we developed an XML-based message board product back in 1999, people thought it was this crazy exotic thing and we had to explain the benefits of XML for customization and syndication over and over again. Today RSSified message boards are de rigeur. They’re the only way I can keep up with the literally hundreds of things I need to read each day. No technology community should be without it. Use the standard RSS icon, make sure your forum home page and each individual topic page has RSS autodiscovery meta tags, and make sure they work in the most popular feed readers (which at the moment happen to be Bloglines, My Yahoo!, Google Reader, NewsGator Online, and Netvibes).

Search engine optimization isn’t something that should be applied only to your marketing web site, it should apply to your community too. At the very least, if the topic of a discussion doesn’t appear in the page title (and preferably in the URL too), dump your community software and get something better.

If you’re a commercial software vendor, make sure that no question in the forum goes unresponded to for more than a day or so. (Your community manager can help with this, although it’s ideal if you have an automated way of doing this.) If paid support happens to be a part of your business model, you may not want to respond that quickly in your forums, which is fine — instead, make it easy for people who post questions in your forums to get priority paid support as an alternative to waiting around for an answer in the community, and manage your community’s expectations regarding the way you expect community-based support to work.

Give recognition to your contributors — they’re helping to build your platform, in many cases free of charge. Some companies resort to special programs (like the Microsoft MVP program) to recognize prominent community contributors, which is fine, but I much prefer engaging in conversations and building relationships with members of the community as a way to incent and recognize them (just saying "thanks for posting that" goes a long way). In many ways, creating a formal recognition program for people is actually easier than having these conversations (since you only have to do the heavy lifting once), which is, I think, why companies gravitate to it. But having conversations is the real money shot here, and if you’re not making time to have these conversations you’re missing out on tons of valuable information.

Your community manager can help engage with prominent contributors, but this should also be something that everybody in your organization should feel empowered to do.