About 2 weeks ago I attended the BIG (Bay Area Interactive Group) Holiday Party in San Francisco. They had a panel that included several professionals in the marketing field that discussed audience driven communities and focused specifically on community building, both in technical and non-technical industries. I thought it was pretty well done, and some interesting campaigns were discussed, including those around Volkswagon, Campbell's Soup, and a few others. BuzzLogic actually has an algorithm that will track the success of community, which I thought was pretty interesting. But the one thing that bothered me a bit was how much some of these folks were actually using the forum to pitch their companies' successes and services rather than actually discuss the "how" part of building the community.
I've spent about eight years now building and developing technical communities, both for BEA dev2dev and several Apache projects (Beehive, XMLBeans, Geronimo), and now I work in the CTO's Office focused on fostering relationships with early technical adopters and industry leaders in Web 2.0, as well as take part in some developerWorks initiatives. I think it's okay to pay an outside company to build some sort of infrastructure or website around the community itself that fosters a positive user experience and forum for feedback and collaboration, but I'm not a huge fan of hiring outside a company to find the influencers themselves.
Since there were a ton of folks at this event that asked me about how to build a successful user/influencer community and track success for this, here are a few quick pointers I thought I would share to those new to this area:
(1) Get inside the user's head. Familiarize yourself with the industry/product and know your stuff. Talk to the leaders in this area, and watch their blogs, read their articles, etc. Ask questions, and don't pretend you know something you don't. There's no shame in asking a question if you don't know.
(2) Talk to your "inside" guys. Who are the folks/devs at your company that built this product (esp. if it's a technical community)? Why did they develop certain features? What do they think is the coolest/most useful feature of the product, and why? Get the scoop from the people that know the product the best. Back when I was at BEA I spent hours upon hours just kicking back in developer's offices and discussing WLS and other products, and that time spent was invaluable.
(3) Be honest. Never try to sell a user or early adopter on the product if it doesn't have the features they don't want. Building community can't be about sales; it's about relationships. Get feedback from them, and never, never try to sugarcoat a product issue. Get this feedback from the users/early adopters and bring it to your development teams - and let your users know that you have done this. It's important to get user feedback to your product teams anyways, but also important that your user knows that you did. And be honest with your management; if there are major issues with the product, let them know. And also work with your team/management to figure out a feedback system that works and that's scalable. You don't want to be bringing issues to them at all times. Sometimes a monthly report can be useful for this type of information. And remember, all information is good information - both good and bad feedback is essential.
(4) Be a connector, not a barrier. Your job is to connect users to other users, and your developers with users, firsthand. An extra few hundred bucks to throw a dinner for users and your internal team members at a conference is a great idea, and Lunch 2.0s are a great thing to have. Work with your internal team to figure out the best way to make them available, directly, to the users - and make sure to streamline it to have it be easy for everyone. Whether it is through newsgroups, a feedback email alias (that folks actually respond to), user groups, a weekly email, or some other mechanism, this is necessary. And make sure you or someone from your team actually responds to these inquires. I'm a huge fan of free support (which most big companies unfortunately don't offer anymore), so trying to foster an environment that replaces/supplants support in some instances can be very valuable.
(5) Collaborative online environments are key. You need to have a website or online area that is user friendly, updated with new information often, and provides information in a way that's easy to access and easy to find. Don't have a website that's difficult to navigate - this will discourage users from even checking your product out. Make feedback easy through newsgroups and email aliases, and make sure your product guys are easily able to access this information as well. Don't bother with trying to collect leads from this site - providing a quick form where folks can give their email addresses will be enough. If you want to *try* to get more information from your users, most of them will just fill out the form with fake names and companies, and it tends to be a waste of time to sort through the fake names and the real ones anyways - plus, fewer folks will sign up to receive information. Obviously with Web 2.0 this is getting much easier as well. This is one area where I can see companies spending money. If you can't create this infrastructure inside your company, then outsource it. This online area is a must.
My 2 cents for now. Some folks that I think have done a great job on this front are O'Reilly, Floyd Marinescu (TheServerSide and InfoQ), and the guys from JBoss. Adding an online personality (not boring) to the mix (a la Marc Fleury) definitely will give you some good PR too, whether you love them or hate them. Because remember, WE LOVE YOU. :)