Building a User Group

This is the story of a user group: how it was conceived, put together, and some lessons learned along the way. I’m no expert at this, but hopefully you will find this useful in your own pursuit of community.

I originally conceived of the idea three years ago. I was doing a lot of front-end work with JavaScript and jQuery at the time. I was the only dev at my company doing this kind of work, a lonely island. Naturally, I looked around for a user group where I could talk with other devs about front-end. When I didn’t find one, I set out to organize it myself. If only it was that simple. I posted on the jQuery meetups site, but didn’t hear back from enough people to make it worth pursuing.

About a year later, I moved into a JavaScript-focused role with a team of dedicated front-end engineers. There I found the common interest and core people that would later become HartfordJS. I had finally found peers with whom I could ask questions and learn. I couldn’t help thinking though, we were still limited by our own size and scope, and Hartford still lacked a public user group for front-end devs.

We set out to organize the group in earnest last fall, but it wasn’t until April that we found a local library that would host us. We had twenty-five people show up for our first meeting and we’ve held four more since.

Hopefully you already have a user group in your area and interest. If not, I encourage you to consider changing that. If you don’t, who will? I don’t have all the answers, but here’s a basic roadmap to get you started.

Generate interest with a small group

With HartfordJS I built a core, starting with my peers at work. It turned out that one of my coworkers had long been interested in starting a JavaScript user group in the area. I bounced ideas off him and everyone else. When I scheduled our first meeting, they helped get the word out, and even if no one else came, I was assured there would be a small handful of people.

If you don’t already know enough people, check out other developer user groups and events. Talk to other attendees and you should find enough people soon enough.

Find a location

Depending on where you live, this may be the hardest part. User groups are typically hosted at local tech companies, incubators, universities, and libraries. The hardest part was finding a place that would be regularly available and easy to reserve.

We ended up meeting at a library for our first meeting, an incubator for our second, and then at a local coworking space thereafter. I found a liason who was quick to respond and happy to have us, which made all the difference.

Set a date

Figure out when the other user groups are meeting, and figure out a good day of the month that doesn’t conflict. In our area, a few groups meet the second week of the month, so we looked at the first and third weeks. Mondays and Fridays seem to be unpopular, so we meet sometime midweek. Make this a regular date if possible, like the first Wednesday of the month. That way members always know when the next meeting is.

Schedule the speaker(s), or just hold a discussion

For our first two meetings, we did five lightning talks each. It worked out great that we covered a wide range of topics, so there was something for everyone. After that we did a hack night, and our most recent meeting was an open discussion. Having a single, 40+ minute talk hasn’t happened yet, and that’s fine. Figure out what works for you.

Other good stuff

Get a sponsor if you can. We went with a recruiting company we knew very well. They’ve supplied food and paid the venue fee when applicable.

Show up about 30 minutes early. People may arrive early especially if they are new to the event. Be there to greet them and make them feel welcome.

A lot of groups use Meetup.com. I opted not to, going with a more tailored approach. I setup a simple website on GitHub Pages, and we use GitHub Issues for planning topics to discuss. I announce meetings on Google Groups and Twitter, and manage RSVPs on Eventbrite.

Empower anyone that volunteers. If you are so lucky, let go of the reigns and let them handle scheduling, the website, or whatever they want to help with.

Do I need to be a “people” person?

If you already find it easy to meet new people and bring them together, kudos, you have no excuses. If you’re the opposite, don’t let that stop you. I may appear outgoing and social, but underneath I’m a shy, scared-to-say-hi introvert. I overcome that little by little, and I promise it gets easier with practice.

Starting and running a group is absolutely rewarding. I’ll never forget our first meeting; before we had our talks, everyone was absolutely buzzing in conversation. I had a hard time getting everyone to settle down so we could begin. I was thrilled that people wouldn’t stop talking to each other. This has been a recurring “problem.”

Starting and running a group can also be exhausting. Other endeavors such as personal projects or open source work may suffer; adjust your personal expectations appropriately. Since starting the group, I’ve seen my peers blog more and start their own open source projects. I’ve seen them produce useful contributions to the community, and at first, I felt inadequate with my own work. Then one of those peers pointed something out. He had been publishing more work because he was given the chance to talk to others when it was only an idea. Because of the community we’ve built up, we are seeing more of us get involved in open source and writing blog articles.

Hopefully I’ve convinced you of the value of local developer communities along the way. If you already attend or know of a user group that fits you, realize what it means not only to you, but to others, that you attend and stay involved. If your area lacks support in a given technology area, do something about it. It doesn’t take any special skills, just the desire to share and learn with others.