I wrote this article in response to an e-mail asking how to start a user group!
I believe that you need four things to make a user group work: location, speakers, online presence, and audience.
I would start by identifying the location for your meetings. Unless you can find a generous sponsor, you probably won't be able to pay for a hotel meeting room. Most likely, you can find a local company that has a conference room that you can use one evening a month. Start by asking all the members if they have a room in their offices. Some large companies will open up rooms to community groups that ask, although some stopped after 9/11. Training companies will often let you use a training room in exchange for the chance to talk to attendees about their training offerings. You can find training companies here. Local libraries and community centers also may have rooms available. I've even heard of a user group in New Jersey that meets in a Borders book store.
Some user groups have meetings in a series of different spots, but most feel they get better attendance by staying in one place. When looking for a location, make it clear that you need a long term commitment from your hosts.
For speakers, you can start by asking members of the group to take a topic that interests them and learn enough about it to talk to others. Anyone who is interested in the technology can be a speaker, it just takes a little bit of work getting ready to present. You can also get speakers from outside the group. One source of speakers is INETA's speaker bureau, which I'll describe later.
Local consulting companies often want to provide speakers as a PR vehicle. You can call the marketing person of any local Microsoft partner and give them an opportunity to provide a technical speaker as a marketing opportunity. It's also a great way for folks in the consulting shop to get some exposure and experience of public speaking. You can find partners here.
Companies that sell software tools love speaking to user groups and demonstrating their tools. If you have any local software vendors, ask them to send a speaker. If you can provide a big audience, say fifty or more, they will probably be willing to fly someone in, but nobody's going to fly from California to West Virginia to talk to six people.
Microsoft also can provide speakers. Every part of the country is assigned a developer community champion (DCC), and each of them is expected to do at least 25 user group meetings per year. Learn who your local DCC is, and exploit him! Ask him to speak, ask him to provide goodies you can give away to members, and ask him to publicize your meetings. For groups focused on IT professionals rather than developers, there is a TechNet team who does some of the same functions. If you need to find your local DCC, send me feedback through the blog and I will forward. Be sure to include an e-mail address as the URL!
One comment I've heard from user group leaders is that you should try to keep the difficulty level of the presentations fairly consistent. See this article for level definitions. If some presentations are 100 level and some are 400 level, people don't know what to expect. Probably a 200 level or 300 level is best, as people graduate from 100 level too quickly to build a consistent audience, and there aren't many 400 level developers out there.
Eventually, you'll want to schedule speakers about four to six months in advance, so you always have the next three months of speakers listed on the website. Announce the next two meetings worth of speakers at each meeting.
You need to get your group online. The easiest way to start is to create a group on MSN. That will give you an event calendar, a discussion list, and a place to post pictures of your first meeting. Eventually, you'll probably want a more elaborate web site, but this is one area where I would start very simply. Post very clear directions to the first meeting, including time and date. Include a compelling reason why that particular speaker is interesting.
Often, the biggest challenge is finding a big enough audience. Start by picking a date and speaker for the first meeting. Then talk to everyone you know who is a developer, pull in any favors that they owe you, and make them turn up to the first meeting. Go to any computer-related meeting you can find, hand out flyers, and ask for three minutes to make an announcement. Contact computer science professors at local colleges and ask them to send their students. Contact any large local company that employs developers, and ask them to post a flyer on their bulletin board. Contact the local partners and ask them to send their consultants. Local bookstores often have bulletin boards, use them. Expect about three months of serious guerilla marketing to build any kind of audience.
Any time you talk to anyone, ask for two things: attendance at the next meeting, and an e-mail address that you can add to the group mailing list.
Once you have an audience, focus on keeping them. Communicate by e-mail on a regular basis, making sure that you send meeting announcements at least three weeks in advance, and a reminder the day before. Announce the next two meetings worth of speakers at each meeting.
There are a number of resources that can help you. Join MSDN (for developer groups), INETA (for developer groups), PASS (for SQL Server groups), or MindShare (for other groups). Many user groups are members of all three organizations. There are also local umbrella organizations in some cities. Examples are Philadelphia Developer Network and Capital PC User Group.
INETA and PASS are especially cool. They provide free goodies you can give to your members as door prizes, and will provide speakers for your meetings, paying the expenses to fly them in.
Most of the computer book publishing companies have user group programs. Contact them and ask if they will give you some sample books as giveaways. Ask if they will help introduce you to their authors as potential speakers.
Make friends with people in your local Microsoft office. They can get you goodies to give away to your members, and can hook you up with speakers. It’s the DCC's job to help you, but it doesn't hurt to work with other people in the local office as well. Try calling the local office and asking for the name of the person who does developer marketing. Microsoft offices are listed here.
This is all a ton of work, and it probably won't make you any money or make you famous, but it will probably be loads of fun and will get you to meet some really interesting people!