Create an Ubuntu LoCo Team and grow Ubuntu adoption in your local area

In an age when anyone over 45 seems to have a story about the end of local community and how "everyone used to leave their doors unlocked," community has never thrived so much in the Open Source world.

Although it is true that Open Source and Free Software fundamentally revolve around the rather technical and programming-oriented concept of freely available software, there is a phenomenal amount of diversity of contributions in the Open Source community.

We don't just have one huge blob of people called "the Open Source community," but instead thousands of smaller groups, each interested in a specific portion of the community – whether it's documentation, translations, local advocacy, mapping, testing, gaming, or indeed programming. Although each group focuses in on their particular area, the global network of groups fits together like a jigsaw puzzle to form the wider Open Source movement that we all know and love.

For some people getting started in Open Source, it feels like other people set up communities. You install Linux, you play with it, you realize you want to contribute to it, you figure out what kind of contributions interest you (documentation, advocacy, coding, etc.), and you look for a community to fit in to.

In many cases, you can find a home to make your contribution, but sometimes you reach a dead end or worse: a community that exists but is doing nothing. One that's merely kept on life support by a few interested yet busy members.

In this article, I am going to discuss how to build a community, more specifically an Ubuntu LoCo team (Figure 1). Whether you want to help get an existing team on its feet or create an entirely new team, everything in this article is designed for you.

Figure 1: A LoCo Team booth from the Ubuntu California team.

Not only that, but everything here can be applied to both online and offline communities – from technical software communities to quaint local book clubs.

Alrighty then, grab that cup of coffee, sneak away a cookie, and get ready to build an empire…

Picking Your Mission

I will use an Ubuntu LoCo Team as an example of a local community group to create. LoCo teams are locally based collections of enthusiastic Ubuntu fans who get together to talk about Ubuntu and Open Source, get technical support from each other, and often spread the word about Linux in their local area.

When I first got involved in Open Source, the very first community I created was a Linux User Group (Wolverhampton LUG) and setting it up was a hugely fun and rewarding experience.

So, in the interests of my future Oscar nomination, for which I will naturally thank the academy, I will assume the role of Jono Bacon who lives in Hill Valley, a sleepy little town devoid of a LoCo Team, which I am about to set up in the interests of rocking the worlds of local Linux fans. And, I will describe the necessary steps.

Setting up a team involves three primary tasks:

*1. Set Up Resources – You first need to set up some important tools and resources that your group will need to function, such as methods of communication, a website, and some other requirements.

*2. Plan Projects – The greatest communities do good work and do it well, so I will describe how to plan and run projects successfully.

*3. Build Buzz – With a home set up and some projects in place, you then need to then tell the world about your group and get people pumped up about joining you.

Although each of these elements will be discussed within the context of setting up the Hill Valley Linux LoCo Team (HVLT), the approaches outlined here can be applied to any community you want to set up (Figure 2).

Figure 2: The Ubuntu Nebraska team meeting.

Home Sweet Home

When you have decided what you want your team to do (e.g., providing support and advocacy in the case of the Hill Valley LoCo Team), you need to first figure out what resources you need to get the group up and running.

All communities need a home, they need a place to communicate, and they need certain tools to do their work, so this is the very first order of business. Obviously, because of space constraints, I won't delve into all the technical details of how to get these resources set up but will instead point out the major tools your community is likely to need and some pointers and pitfalls in getting them up and running.

For the majority of communities, you need to satisfy the following requirements:

  • A place to communicate – Your group will consist of more than one person, so you need to ensure that everyone can communicate together in a way that is simple, free, and convenient.
  • A place to collaborate – Most groups, and most certainly the new LoCo Team, will need a place where the group can create content together.
  • A place to present the group online – This is typically a home page, preferably updated with current news and details about what the group does and how to get involved.

With these different elements brought together, you have everything you need to communicate together, work on projects as a group, and have a public presence so that others can find your group and get involved. I'll take a quick spin through each of these elements now.

Setting Up Communication Channels

Communication is a critical component in a community. When people can communicate freely and easily, communities feel like vibrant, thriving places. When communication is unclear, clunky, or restrictive, communities feel boring and devoid of life.

Setting up great communication channels involves not only picking suitable media but also building a culture of positive tone and communication on top of them.

I'll look at the media first. Fortunately, you have a range of different options for your groups. These include:

  • Mailing Lists – Email discussion lists provide a means for members to send a message to an email address that is then sent to everyone in the group. Mailing lists are fantastic for those comfortable with email; they are low bandwidth and messages are automatically delivered as opposed your having to manually go and look at a communication channel for them. Mailing lists are very common in Open Source communities and are particularly popular with software development groups. You can request a mailing list for your team from Ubuntu [1].
  • Forums – Discussion forums provide online bulletin boards where conversations happen chronologically on a web page. Forums are a popular choice for many end-user communities because they are simple to use. However, they are not particularly popular with developer communities, who instead prefer the convenience of mailing lists. A great example of a popular, modern forum is Discourse [2].
  • Internet Relay Chat (IRC) – This is a text-based chat medium that is great for conversational and social discussions in real-time. IRC has become popular in the Open Source world, and a good free IRC network for Open Source projects is Freenode [3].

By far the most popular method of communication in most communities, and particularly Ubuntu, are mailing lists. I recommend that you set up a mailing list as your main communication medium, and you may also want to set up an IRC channel for more interactive discussions.

Aside from choosing you communication media, you should strive to keep the communication active and pleasant.

Collaboration

Many communities, and particularly those in the Open Source world, collaborate on projects to produce content (Figure 3). A huge range of tools out there are designed for various types of collaboration (e.g. programming, writing, testing, design, translations, etc.). You should assess which tools your community needs to do its work and provide simple and freely available access to them.

Figure 3: The Ubuntu Myanmar team at work.

As an example, if you want to do software development, you will likely need code hosting, bug tracking, and translations tools. Various free online software development sites provide these services such as Launchpad [4] and GitHub [5].

On the topic of external sites providing the tools you need, you should always be a little wary of being sucked into the well of hosting your own tools. Although many of you can set up and provide your own self-hosted tools, I heavily recommend that you use a third-party site (e.g., Launchpad). A third-party site has a team that ensures the site stays online, has security fixes, and protects your data. When you maintain hosted tools yourself, you will get busy at some point, and it will become a burden.

The HVLT is most likely to collaborate on documentation and content (e.g., HOWTO guides for the group, other documentation, and promotional literature about Linux). For these kinds of collaborative documentation needs, a wiki is a perfect solution. Wikis provide an editable web page that anyone can contribute to, and they are simple to use. Thankfully, there's an Ubuntu wiki [6] that you can use right away!

Creating Your Online Home

A website is essential for any community group. Websites are how people will find you. They provide a vessel to share the benefits of your group to prospective community members, and they provide important details about events and other group activities.

Unfortunately, setting up the group's website is where many teams experience their first problems. The reason is largely because of the personality trait that knits us all together: We are geeks, and as geeks we like to debate software preferences. Unfortunately, this can often devolve into weeks of debate about this content management system versus that one, their respective benefits, and other inane and often irrelevant chatter.

In these situations, it is important to remember that the "content" in a Content Management System is more important than the "management system." In other words: Just pick something and move on. Some people may be unhappy, but stress the importance of making progress and moving the group forward, and the debate will eventually pass.

Several great free providers are available for getting a website online, and I would highly recommend WordPress as a good start. It is a mature and popular content management system; it provides the means for multiple authors to post content, and the service is reliable. Whether you use WordPress or something else, find a provider, get your site online, and start creating content.

When creating your website, you need to provide some "must-have" pieces of content that most of your visitors will look for. These are:

  • Purpose – Explain what your community group does. For HVLT, the website should offer details about the local technical support and Ubuntu advocacy that the group provides to the Hill Valley area. It should also describe some of our projects and community work. For example, if we have handed Ubuntu CDs out to people in downtown Hill Valley, we should put up some photos and text about that work. Remember that you want to sell people on your team and have them join you, so make it sound like a fun and interesting place to get involved.
  • How To Join – Make it really easy to understand how to join the group. For most Ubuntu LoCo Teams, this is as simple as joining your mailing list or IRC channel. Explain how to get connected and how to subscribe to the mailing list.
  • Contact – Situations will always arise in which someone has questions or problems in getting involved in the group and needs a helping hand. Provide one or more primary points of contact to look after these cases.

A very common mistake many new communities make when creating a website is to make the language overly complicated and unattractive. As an example, for HVLT, we welcome the full spectrum of users (both new users and experts alike) into our group. That means the language on the website must be simple and accessible for this range of users; otherwise, some users will get confused, grow bored, and move on.

A great way of preventing this is to get feedback from new members: Ask them what they thought of the website and whether anything needs to be improved and simplified.

Planning Projects

With your resources and communication channels up and running, the next step is to decide what type of projects your group wants to work on. For some teams, this will be obvious; a software development team focuses their efforts on a software project, a documentation team writes content, and a translation team decides what to translate and into which language. For some teams, however, this is a little less obvious.

One challenge that every team faces is the ability to coordinate what goals and ambitions the team is going to work on and to unite the group around an agreed set of projects. Traditionally, this process has been somewhat ad hoc: People join a team and work on whatever they feel like.

One of the most wonderful elements of a community is that there is no manager telling you what to do, and the environment produces an incredible sense of creativity and fresh ideas. Every community every day finds themselves knee-deep in ideas that sound fun, rewarding, and that ultimately satisfy the purpose of the group.

Ideas are cheap, though. For some communities, coordinating this work can seem complex. Some projects require coordination across many people with different skill sets, time availability, and resources. For example, if HVLT wants to produce a regionally focused booklet that explains what Ubuntu is and provides an introductory tutorial, the project likely needs people with the following skills:

  • Writer – Someone to write the content in the booklet.
  • Artist – If you want your booklet to be attractive, you need someone to make it look good.
  • Content providers – You may need several people to produce content for the booklet on different topics.
  • Printer – You will need someone who knows how to get the booklet printed.
  • Distributors – With the booklets ready, you'll need outgoing people to get out there and hand them to strangers.

Many communities don't take a particularly organized approach to these types of projects, and that can kill motivation in the team. If there's one thing that will cause a community to struggle, it's a sense that nothing happens and nothing gets done. Providing a more structured way of organizing projects and documenting how they will work and who is working on which parts is known as a specification , and it has a number of benefits:

  • Direction – One of the biggest complaints teams often report is a lack of direction. If the team gets into the habit of creating a specification at the beginning of a project, this gives everyone a sense of focus and direction.
  • Documented commitments are more effective – A common rule in Project Management training is that actions assigned to people in a shared document are more effective than ad hoc or privately made commitments. Documenting who will work on what and putting someone's name next to an action can help seal a sense of accountability for contributions to the project.
  • Feeling of success – Regularly revisiting a specification and checking off items that have been completed can develop a strong feeling of progress and success. It makes a team feel productive.

The first step is to open up a discussion with your team to talk about the things that the team would like to do. The most effective way to have this conversation is to produce a wiki page in which people can jot down their ideas and work on them together.

This process provides the foundation of converting popular ideas into more specific and concrete items. Keep the discussion focused on the project and what is doable. Always make sure you have these discussions out in the open in your team communication channels, whether that means mailing lists, IRC channels, or otherwise.

Once you have a set of ideas for a particular project (e.g., creating HVLT's booklet), it is recommended that you drill the ideas down into a specification for each project.

This specification will again form a set of commitments that outline what is involved in completing the project and who is going to be doing what. A wiki is also a great place to do this.

Over the past few years, I have developed a useful format for documenting these plans. For each project, note down these key pieces of information:

  • Objective: An objective is a goal that you want to achieve. Summarize your objective here in one sentence (e.g., Demonstrate Ubuntu at Hill Valley library).
  • Success Criteria: This is a statement that can be clearly read to determine success in the above objective. This needs to be as clear as possible and not vague; it is the determining factor that indicates whether or not you achieved the objective. Although this may seem unnecessary, it's a great way for the team to be clear in what success looks like, which is often surprisingly inconsistent in many community projects.
  • Actions: This is a set of steps that need to be executed to achieve the objective. It is recommended that if someone volunteers to commit to delivering on an action, you put their name next to the action (e.g., Print out LoCo logo on a banner (Jono Bacon)). There can be multiple actions for each objective.
  • Driver: If someone is coordinating this objective and helping those involved to deliver on their actions, list that person here (optional).

To illustrate the elements, here is an example of a simple plan for running a demo event at Hill Valley library:

  • Objective: Demonstrate Ubuntu at Hill Valley library.
  • Success Criteria: A successful Ubuntu demonstration to Hill Valley library attendees.
  • Actions:
  1. Confirm booth space with librarians (Jon Smith)
  2. Burn CDs with copies of Ubuntu (Dave Jones)
  3. Develop artwork for main banner sign, staff badges, flyers (Sarah Gilbert)
  4. Provide demonstration laptops (2 x laptops) (Dave Jones and Jon Smith)
  5. Prepare demonstration speaking script (Andy Gibson)
  6. Print fliers to promote the event and put them up in the library (Sarah Gilbert)
  • Driver: Sarah Gilbert

Although it may take a little bit of extra work to put together your plan for a project, it will dramatically improve the project's chances of success. This in turn makes the group feel nimble and effective.

Although plans and specifications are a great way to ensure project work is spread out across the team and well structured, this alone will not guarantee a project's success or the growth of the group. To stay on track you need to regularly get the team together and focus their efforts on current projects, highlight problems, solve them, and talk about new ideas and challenges. A great way to do this is to have regular meetings.

Building Buzz

With your team up and running, resources in place, and projects to work on, now is the time to build some buzz and excitement about the group and encourage people to join you.

Thanks to the work you have already done in putting together your website and communications channels, you have plenty of interesting and fun things to point to that can help show off your group. Now is the time to make some noise, my friends.

Fortunately, many options are open to you for spreading the word about your community and what you are working on. First, however, you need to create the messages and content that you will spread. This content divides into two broad areas:

  • Physical – If you are a local community (e.g., HVLT), your target audience is based locally, and it makes sense to produce physical content such as fliers and posters that can be put up in coffee houses, university buildings, shops, libraries, and more. These posters and fliers should be bright, eye-catching, and preferably use a noticeable symbol that immediately grabs the eye of a Linux user, such as a big Tux penguin or distribution logo.
  • Online – All technical communities can spread a huge amount of buzz online. This kind of content can include banner ads and images, written content (e.g., a few paragraphs about what HVLT does and how to get involved), and web pages on your website that you can point people towards when announcing specific projects and initiatives.

Decide what kind of content is most appropriate for your group and work together as a team to produce it. As each piece of content is completed, make sure it's available to the full group so everyone can use it to spread the word. A great place to do this is to put it on your community's website.

Now it is time to get out there and spread this content. You can build buzz online and offline in a variety of ways. I'll start with some online ideas:

  • Social Networking – Twitter, Facebook, Google+ – These are all great places to spread awareness of your team. For example, create a Facebook fan page and ask all of your Facebook friends to become fans. Microblogging sites, such as Twitter, are fantastic places to mention your website's address and the work the group is doing, and many people will retweet your messages to their friends. Another interesting approach with social networking sites is to come up with a fun, witty, or slightly unusual concept and aim for some viral marketing as people spread your message far and wide.
  • Blogging – Many of your community members are likely to have blogs and can use them to encourage people to join the group. Ask everyone to write a blog entry to spread the word and ask different people to blog about different things so you get plenty of diversity in the message. If you don't have a blog and would like to get one to write about the group and other things, a variety of providers (e.g., WordPress and Blogger [8]) have free blogging tools. If you are an existing blogger who has been syndicated on a planet (a website that provides a rolling list of blogs about the same subject), you should use your blog as a primary method of building buzz. Planets often have a wide readership and are a great way to spread the word.
  • Banners 'n' Buttons – Many people have their own websites and many would be happy to put a button or banner on there linking to your community website. These kinds of images are fairly simple to create in a tool such as GIMP or Inkscape. You may also want to provide a page on your website with a variety of buttons that people can choose from to fit in with their website's design. You should also provide the HTML that they can paste into their site to link back to yours.
  • Forums/Mailing Lists – Another great way to spread the word is to mention your community in various forums and mailing lists, but make sure your message is relevant and on topic. If you post to random or irrelevant mailing lists and forums about your group, you will likely be blocked as a spammer, which is not good for anyone.
  • Podcast Bumpers – Many Open Source and Linux podcasts are available out there, and you may want to record a 20-second advertisement about your group that you can send to a podcast to see if they can add it to the show.

Although the online world is a breeding ground for technical community members, there are also some great offline ways to build buzz:

  • Posters/Fliers – As I mentioned earlier, posters and fliers are a great way to spread the word, particularly for a locally oriented group such as a LUG.
  • Magazines – Magazines such as Linux Format , Ubuntu User , or Linux Magazine may be interested in publishing news about your group. Send magazines some short, snappy text about the group and include a high-resolution photo of the team. You never know, it might just get published!
  • Local Radio – If your group is doing great work and is of general interest (e.g., an advocacy group), why not call your local radio station and see if they will mention your group or maybe even do an interview?

Not all of these approaches will generate new members, and not all will be successful, but the more places you try to raise awareness of the team, the greater the potential for people joining you.

Wrapping Up

In this article, I explored many elements of how to get a productive and fun community group up and running, but I have merely scratched the surface. Communities are large and complex beasts involving many different skills, and I have just covered some of the core elements here.

If you want to learn more, I wrote a book about how to build a community called The Art of Community published by O'Reilly. It is available in all good bookshops and also as a free PDF online [9]. I recommend you take a look.

Good luck with your community adventures and remember to let us know how you get on! l

Infos

  1. Mailing lists: http://lists.ubuntu.com
  2. Discourse: http://www.discourse.org/
  3. Freenode: http://www.freenode.net
  4. Launchpad: http://www.launchpad.net
  5. GitHub: https://github.com/
  6. Ubuntu wiki: http://wiki.ubuntu.com
  7. WordPress: http://www.wordpress.com
  8. Blogger: http://www.blogger.com
  9. Bacon, Jono. The Art of Community , 2009, O'Reilly Media: http://www.artofcommunityonline.org