Strategies to increase community members involvement, ICM Summit

A recurring problem of every community manager is to keep community members involved with the community. During this talk I spoke about the Community Commitment Curve, a tool to identify a path of optimal engagement, composed by small progressive requests, helping members to be more and more active within the community. They were also concrete examples of the Curve, for online and offline communities.

(Talk in Italian)

(I

(Italian Community Managers Summit Rome, 10 November 2018)

The Community Commitment Curve for in-person communities

Community Commitment Curve

The Community Commitment Curve offers members a clear and progressive engagement journey in the community, from a total stranger position to a community organizer role (or other key roles). The concept is not new to community professionals, and it was described for the first time in 2012 by Douglas Atkin. If you want to know more, Carrie Melissa wrote a good article on it. For the Italian audience listening, Caterina Manzi from AirBnb also mentioned it during a talk at the Italian Community Managers Summit in 2018. It was interesting to see, compared to the original curve carved by Douglas, how much it has been improved and redefined over time.

Why the community commitment curve works

The whole community commitment curve idea is based on the fact that personal investment is an important contributor for the development of the Sense of Community, both for the “membership” and for the “shared emotional connection” aspects of it. People who donate more time and energy to an association will be more emotionally involved (remember, community is all about emotions). This social evidence opposes to what a newcomer can often find in a community environment: warm and welcoming people, useful content, but not clear call to action on how to contribute back to the community. It is not uncommon the only communicated message at in-person community events is “Help us to organize the next event”: clearly an overwhelming call for a person that just joined, or young members of the group.

The community commitment curve defines progressive, balanced asks community managers can make to their members, to keep them engaged and proactive, through a commitment journey composed by 4 main phases: discover, onboard, engage, lead.

Every ask is built on top of previous asks. And every task has an effort connected to its accomplishment. Of course, “invite / bring people at the event (engaging, effort 1)” requires, in absolute terms, an effort way bigger than “register for a community event (discovering, effort 2)”, but once a member is at the beginning of the engaging phase and has already actively advocated for the community, bring people at an event is a very natural follow-up step, and the personal perception of its effort is very low. This is the very core of the curve: makes “everything perceived easy” for member engaged with the community, while giving community managers a reproducible way to achieve this.
And this is also the reason effort “resets” at every phase.

The focus of a Community Commitment Curve

Every community is unique in its own way but, luckily, an initial community commitment curve can be drawn for communities sharing similar model and goals. Then it can be customized with unique aspects and rituals of the specific group. Giving my current job, supporting in-person dev communities interested in Google technologies across Europe, my focus was to find a curve for this kind of communities. And I did not alone, but asking to my Italian GDG community leaders to co-create, collectively, the curve, during the annual event we held with them.

Community Commitment Curve for in-person (offline) communities

Here a Community Commitment Curve for an in-person community, with the main objective to organize physical meetups and events around tech topics. The effort is on a scale from 1 to 3, where 1 is a very and 3 is the hardest.

Community Commitment Curve for in-person (offline) communities

The picture doesn’t have the best readability, so a spreadsheet with all the steps and the list also follows.

Discovering

  • Visit the community website landing page / social channel (effort 1)
  • Like a post on the community social channel (effort 1)
  • Search for the next community event (effort 1)
  • Send an info request about the community (effort 2)
  • Comment on community social channel or tag the community (effort 2)
  • Subscribe to the community social channel providing passive engagement, like Facebook, Twitter, etc (effort 2)
  • Register to a community event (effort 2)
  • Attend a community event for the first time (effort 3)

Onboarding

  • Stay and interact at the end of the event (free chats, aperitif, networking moment, etc, but without leaving the venue) (effort 1)
  • Leave feeback on a community event attended for the first time
  • Subscribe to the community channel providing active notifications to stay updated on future events and community news (Meetup.com, maling list, IM group chat, etc) (effort 1)
  • Collect community identity symbols (t-shirts, pins, stickers etc) (effort 1)
  • Spontaneous social media activity during the event about it (live tweet, sharing slides and thoughts etc) (effort 2)
  • Provide a feedback about the attended event (effort 2)
  • Help with the event logistics by chance (moving chair before / after the event, clean-up tables and venue, etc) (effort 2)
  • “Wear” community identity symbols (attach a stickers, wear a tshirt, etc) (effort 2)
  • Take active part to online discussion on community social channel after the event (effort 2)
  • Attend a community event for the second/third time (effort 3)
  • Propose topics for next community events (effort 3)
  • Attend an in-person social event after the meeting (dinner, free chats, etc, and outside of the venue) (effort 3)

Engaging

  • Refer the community / next events to peers (effort 1)
  • Invite / bring additional people during events (effort 1)
  • Suggest / connect with a potential speaker (effort 1)
  • Suggest / connect with a potential sponsor (effort 1)
  • Be a good source feedback (events execution, onboarding experience, social presence, image of the community during the events, etc) (effort 2)
  • Proactively offer help for event duties (attendees check-in, venue setup and tear down, move mics for questions, etc) (effort 2)
  • Consistently produce event follow-up (blogpost, recap, friction logs, etc) (effort 2)
  • Propose a talk for an event (effort 2)
  • Active contribution to a community side project (code projects, etc) (effort 2)
  • Help representing the community during broader events (booth at conferences, fairs, etc) (effort 3)
  • Promote events on social / real life (effort 3)
  • Curate the full social presence during events (effort 3)
  • Attend community events on regular basis (effort 3)
  • Proactive help with event logistic (venue setting, gadget distribution, speaker support etc) (effort 3)
  • Speak during an event (effort 3)
  • Introduce the community at the beginning of the event (effort 3)
  • Arrive at the events earlier to help with logistic (shop for the food for the networking part, visit and check the venue days before the event, etc) (effort 3)
  • Attend one or more core-org team meetings (effort 3)

Leading

  • Constantly finding speakers for events (effort 1)
  • Scout for new venues and make all the arrangements needed to run even there (effort 1)
  • Take care of the with audio / video task (effort 1)
  • Welcome speakers before the even and be their point of contact (effort 1)
  • Present the community to other community events (effort 2)
  • Help community in tasks required to sustain itself (site, analysis etc) (effort 2)
  • Lead the community social strategy (effort 2)
  • Propose and execute community improvement actions (greet new members, implement new features etc) (effort 2)
  • Be responsible for the full organization of one or more events (effort 2)
  • Be the point of contact between the community and the main sponsors (effort 2)
  • Co-define the community strategy and plans (effort 2)
  • Take care of transition from Onboarding to Engaging for new potential community leaders (effort 2)
  • Accept the co-organizer role (effort 3)
  • Identify and onboard new co-organizers (effort 3)
  • Lead the community governance in the co-organizers group (effort 3)
  • Step-up as the main community organizer (effort 3)

Next steps

The curve lacks with Carrie Melissa defined as emotional involvement, another parameter to consider together with the effort, to make the transitions between tasks even smoother. And no curve is perfect, of course, so I’ll integrate additional feedback over time. What’s yours? Do you think some tasks is missing? Please let me know and, in the meantime, feel free to use the Curve for your communities!

Photo by rawpixel on Unsplash

The most important community manager skill? Being able to ask!

Being able to effectively ask

There are a lot of resources out there describing what are the skills a community manager should have. Not a surprise, considering how many hats the job requires. But if I have to boil everything down to a single ability, from my experience that would be “being able to effectively ask“.

Community is a behavior-change agent. And nothing changes if it’s not challenged by questions. Because a community managers is the architect of their own community, and responsible for its success, they are the first one that has to ask for that change in behaviors needed to fulfilling the community goals. They can excel in all the other skills, but asking is what make possible to cross the last mile and achieve community success. I would say: “No ask, no party“.

There are, of course, different ways of asking, and the effective part is where all the other skills come in handy. Let’s consider the behavior of joining a community.
Among the many tactics to carry out this objective, a community manager can act in the front line and ask something like “Do you want to join my community?”. However, to be successful, they need to find the right people to reach, and the right time, tone and form to invite them. And there are also several ways to formulate the core question: give a context, explaining the benefits for that person in joining etc. Lot of skills are involved to align all these “rights”.

A less direct tactic, where the community manager is less visible, but still the mastermind behind the main question driving change, would be foster community promotion thru word-of-mouth, asking other members to ask new people to join. Those people won’t be reached directly from the community manager, but it was them influencing the process. Exercise influence, another important skill.

The community commitment curve is another tool that demonstrates how much questions are important for the success of a community: if a community manager doesn’t know what to ask to community members to keep them engaged step after step, new behavior influenced after new behavior influenced, engagement will decrease organically.

And so on, with plenty of other examples: here a community that has organized a dev conference because a community builder asked them. Here the email that lit the event:
The email that made DevFest Pisa possible
For the ones non-Italian, the email says, more or less “During these days, and after a conversation with one if your community managers while we both were in Krakow, I thought about you, and I thought GDG Pisa (the community name NdR) is ready to organize its first DevFest“.
Referring to additional skills required to be effective, it was her call to understand the maturity level of the community, make some preliminary chats to test the water and, only at the end, make the ask.
Still in this community context, when people ask me “How can I find new blood to help me run my in-person community?”, I often reply: “At the beginning or at the end of your event, ask people to help you moving chairs around. The ones volunteering will be good leads to get in touch and ask for additional help, this time for the community”.

This detailed community management case study highlights how much concrete and visible call to actions in the forum banner influenced behaviors and drove success in many important steps to improve the community.

Being able to effectively ask regards also process optimization. As Leslie wrote: “If you’re looking for bug reports and pull requests, encourage them in a few simple ways: Respond to bug reports quickly, ideally within 48 business hours, even if it’s just to let the reporter know you’re looking into it. If you’re asking for speakers, provide a list of events. If you’re asking for new organizer, provide a group where they can plug, a mentor, a guide to help them, everything to not leave them alone. Ask for feedback: provide steps to test and template for feedback for. What you have in mind may (and probably is) different from what others have. Set clear expectation for the kind of help to provide.

At the end, the functional unit of any community is dialogue. Open and ongoing dialogue transforms a loose group of people with a shared interest into a community that can share stories, support each other, and pursue collective goals. Have you ever had a true dialog _not_ starting with a question?

 

Photo by Evan Dennis on Unsplash

Where community crosses the developer journey

Community and developer journey

A developer journey is the route between a developer with no knowledge of a technology and the same developer that feels confident to use it in production and actively share the expertise acquired. Offering a clear and gratifying journey is the key for fostering adoption of a technology. How can online and in-person communities help along the way?

What are the typical steps of a developer journey?

First, it’s important to define what are the main steps of the journey. Christian Betta points to four main moments: Exploration, Getting Started, Guidance and Reference. While Adam Seligman defines four similar steps: Connect, Engage, Adopt and Advocate. I like the latter more as they seem more generalist and the advocacy step beautifully closes the loop, so I’ll use those as reference.

Connect

Generate awareness and interest, get in touch with the technology for the first time
In-person communities are great to discover new technologies. It’s true that today “knowledge is at our fingertips”, but it doesn’t mean developers have the time, motivation or will to explore by themselves. Tech meetup events organized by communities help the discovery process, offering occasions to get in touch with something new with a low effort bar: just go to the event, sit down and listen. In addition, follow-up conversations during the event boost serendipity, as like-minded people generally love to talk about their passions.
In online communities, on the other hand, often developer joins because of their interest on specific topics (Q&A, product forums etc), so it’s more difficult to attract their attention about something new. However, if users are well profiled on the platform, it’s possible to reach them with targeted material regarding news and topics connected with their primary interests. Content able to add value from a dev point of view, to avoid being perceived it as spammy.

Engage

Gain hands-on experience, what follows the “Hello world” example
In-person communities can help in this step organizing specific hands-on events like hackathons, workshops, codelabs etc, where attendees can “get the hands dirty” with the technology and create a (first) working prototype. On average, communities organize way more tech talk-style events than these initiatives, so brands could provide specific support or global frameworks to influence the ecosystem to run more hands-on events. The Google Assistant Developer Community, IBM Call for Code, Intel Code for Good, Google Study Jams are good examples.
Online communities can help in the form of open source projects, thanks to a big code base to analyze to understand what’s after the “Hello World”, without starting from scratch. They also offers immediate and intrinsic rewards, like fixing a bug or implementing a new feature. Unfortunately, we all know the common Achilles heel of open source projects: lack of “onboarding” guidelines, poor documentation, few active mentors for the newcomers. All together, they raise a lot the difficulty bar, and not all developers are willing to learn this way.

Adopt

Drive daily use of a technology, in production
Once a dev knows the basics of a tech, the main need is to find answers to specific problems and learn advanced topics that could prevent future issues, like a well-done project architecture, a good testing infrastructure etc. Information that, generally, are not present in the reference doc.
In-person communities can organize events to share best practices and real-life experiences on technologies / tools / libraries / dev workflows, assuming the topic doesn’t have an overly niche audience. Peer-to-peer recommendation during networking moments are generally very welcome and more able to influence than a blogpost on the same topic. In-depth, follow-up conversations happening after the event can solve doubts.
In a complementary way, online communities are the most effective free place to find such answers. We all know the success of StackOverflow and similar services, and several major tech brands have an online presences based on the “Customer Support / Success” area of the SPACE model. The potential risk is that the place where this knowledge exchange happens is more a group than a community. Searchability of the content is another crucial aspect to solve: developers don’t search on StackOverflow, they search on Google that directs them to SO. Another issue is that discussions happening on Twitter have a very short time span.
Similar to the engage phase, open source online communities can offer a training gym outside the main job for experienced users of a technology, with more community-oriented dynamics.

Advocate

Empower and enable
Advocates are crucial to scale the knowledge sharing process thanks to user-generated contents (UGC) they create and erogate. But they need an audience to share them with. Both online and in-person communities offer that crucial audience element, closing the loop and creating new “connect” and “engage” moments in the developer journey of new people.
Likewise, online and in-person communities offer a fertile and informal ground to get in touch with existing advocates, be inspired by their role-models and, with the help of the community leads or even by themselves, become one of them.
Altruism is the top motivator for advocates, followed by intrinsic enjoyment: communities allow this give-back attitude to be satisfied.

 

So, community is really a powerful tool intersecting and contributing to the developer journey along all its steps. Not a surprise, in the end :)

Header photo by Helloquence on Unsplash

How to organize a successful community meetup

Successful Community Meetup

Even the most successful in-person community, able to pack every room no matter how big it is, hosting mind-blowing speakers, moving people even outside of the city, has started from a very first event. Let’s see the core steps to organize a first successful community meetup.

There are three main elements to manage, in the following order:

  • Find a need, and a solution to it
  • Find a place where deliver the solution
  • Find attendees with same need, believing in your solution and willing to reach the place

Find a need, and a solution to it

Human behaviour is driven by solutions to perceived needs. If you want to bring people to your community meetup, you have to find a shared need they have and offer a viable solution. Not necessarily the best solution, but make clear “why they should come” is fundamental.
It could be a need of knowledge, and the solution is a session / workshop / training on a particular topic presented by a speaker. It could be a need of actions to reach a common goal, and the solution is a meeting where people can do something together. It could be the need of not feeling alone about a particular passion, and providing an occasion to meet and chat with like-minded people is what is required. The more the meetup agenda is focused on the need and the solution, the higher the number of potential attendees joining your event.
Of course, you can start from one of your needs, without looking too far.

Find a place where deliver the solution

A good place should offer, at least, an acceptable consumption experience of the solution delivered. It’s an event organizer duty to take care about the whole end-to-end logistic flow, from when attendees start traveling to your event, to when they leave to move to the next place.
Try to figure out all the different steps. For example: they need to reach, and then leave, the place: is it connected at the moment the meetup happens? Is near enough and accessible for your target audience? How people will find your event in the place? How they identify themselves as your guests? How they can ask for help? Is there enough space for all of them? If the solution is a talk, are attendees able to listen to the speaker and watch the content presented? If the event in a tech workshop, are there enough power plugs for their laptop? To what extent they need connectivity? And many more.
Again, no need to be perfect, but devil is in the details, and thinking about the whole “attendee journey” can really help to find and connect all the important dots, at least.

Find attendees with same need, believing in your solution and willing to reach the place

Arguably, the hardest and most time-consuming part, especially if it’s your first community meetup or you don’t already have user base to reach.
Create a message where the need, the offered solution, the place and the when are clear: people need to understand at very first look if they fit in the target and it’s valuable to attend. Making the message sticky and nice to see is a desirable bonus point: also the eye wants its part.
Once you have that message, ask for help of similar communities to spread it; people have multiple interests, and they talk each other. Do both “mass communication” and one-by-one reach: social networks are your friends, and never assume that, because your message is public and available online, people have seen it. Share with attendees, and speakers if any, a call-to-actions to bring other people in, offering some perks in exchange, even symbolic (a pin, a thank you note, a free ticket for a friend, etc): ideally, the moment after they register, they should become your advocate. Keep scouting for people till the last moment: decision to join is made generally within a couple of weeks before the event, even the day before. And, if the event is free to attend, aim to overbook for a good 30%-50% more of the place capacity: people won’t come and won’t tell you.

Once at the community meetup…

Before closing, try to announce when the next meetup will be. Or find a way to keep in touch with attendees that doesn’t depend on them: people are lazy once their need is fulfilled, so avoid asking them to register to your meetup/mailing list/social channels, but rather ask if they have something against you doing it for them, and in case tell you.

Finally, this last point is extremely important: don’t forget to celebrate, regardless the number of attendees. Even if you were able to make 5 people happy, it’s a great achievement, as you’ve done an extraordinary thing the vaste majority of people won’t do. Be proud of you and all the people who helped.

TL;DR for tech community leaders out there: find a speaker with some knowledge to share, find a place where this speaker can talk, find people to attend the event. Simple and straight ;)

Interest on other tips to organize a successful community meetup? More searching for the Event Tips tag.

(Image source: an unconference session during the Italian Community Managers Summit 2018 in Milan)

Thoughts on a Community Management Chatbot

Chatbot hype is over and their forecasted disruptive impact has been tremendously reduced. Nevertheless, I still see some good scenarios where a Community Management Chatbot can help in offline community management thanks to its conversational interface.

One side, it can support community leaders offering “wisdom” about the community management art. Part of my daily job as community builder is to connect with community leaders, asking what’s happening in their groups and I’ve noticed there are similar discussions going over and over. How to start an offline community, best practices to organize its first event, how to find new speakers, venue and sponsors, how to organize more inclusive events etc. A community management chatbot can offer insights on them when triggered. It’s far more scalable than me, available 24/7 and I can dedicate time saved to more specific and in-deep requests.

On the other side, the chatbot can help community builders providing alerts, suggestions and action items for their daily job. Sending alerts on communities that have not been doing event for lot of time, upcoming events requiring attention, the next communities to get in touch with, retrieve reports, show internal community success metrics, etc. In addition, these conversations can happen in a ChatOps scenario, to create a Community Management ChatOps workflow with my colleagues!

To summarize, and looking from two angles, the community management chatbot targets and the level of knowledge it has about their communities, we could have this potential features quadrant:

Community Management Chatbot Feature quadrant

Let’s see some concrete examples for community leaders target.

Community Management chatbot for community leaders, with no community knowledge

There are two learning paradigms: a pre-Internet-and-search-engines: read, memorize and hope, when you need that information, you’ll remember it or where to look for it. Then, the post-Internet-and-search-engines: you search what you need when you need it, without too much previous knowledge on the topic.
The majority of community leaders I know haven’t studied the art of community management, so they use the second approach trying to solve their community needs. Unfortunately, search engines return results too generalist or inappropriate for lot of those “basic” questions. The community manager chatbot could be used as a sort of improved search engine.

Any person can ask, for example, “how to organize my first community event?” or “how can I search for speakers?”, or “what can I do to increase retention rate of my community?” and so on. Ideally, the bot should give at least one actionable item for every reply to keep the human side engaged, asking also for more information to contextualize the request and offer more refined answers. Follow a potential conversation script:

User: “Hi, I need to organize an event”
Community Management Chatbot: “Great, it’s the best way to keep your community active and well perceived in the local context. Do you already have a venue?
User: Yes
CMG: Perfect, so you need content to present. Is the agenda defined, or someone presenting something?
User: No. How can I find a speaker?
CMG: I would suggest to first look around you. If your community is not new, you may ask their members if they wanna present something. Or you can find speakers talking at similar events, reach them and ask to talk at your event. How old your community is?
User: it’s brand new, it’s my first event.
CMG:  I see. You may look for speakers in conferences with the same focus of your community and happened in your country. Once you have that list, you can try to reach them proposing to come and speak at your first meetup. You never know how much people are happy to help a new community, especially local speakers!
User: I’ll do, thanks.
CMG: See you soon!

The bot is open to everyone and doesn’t need to remember conversations or user details. It comes to my mind a model similar to a text adventure, where the player (the community leader) explores a dungeon (the first question) gaining items (the replies to their question) while choosing where to go (the follow-up questions the bot makes to better contextualize).

To make things simpler, initially such bot can help only on a specific set of questions and, over time, it can learn more and more about the art of community management, broadening its expertise and the support able to offer.

In term of technology, I’m already doing some tests using DialogFlow to understand what user says, a Google Doc with the conversation script, so it’s easily editable and with no tech knowledge, and a Python backend to match user intents detected by DialogFlow with script sections in the doc. Still in a too early stage to share, but If you’re interested in helping, ping me!

Community Management chatbot for community leaders, with community knowledge

If the bot knows data about the community led by the person interacting with it, it could be more proactive and focused. Data could be retrieved connecting the bot with the community account on Meetup.com, or Facebookm or other sources. Here an examples of a data-aware interaction:

User: Hello!
Community Management Chatbot: Welcome back Alfredo! I see yesterday event was a success, with more attendees that the average: well done! Have you already sent the follow-up email?
User: Mmmm, not yet.
CMG: Please do it, the sooner the better, especially if you want to have reliable feedback from the attendees. Here a simple template you can use (link)
User: Thanks. Anything else?
CMG: A couple of things. It seems you’re alone in leading the community, is that right?
User: Yes, I’m the only one now.
CMG: So, at this point and after the events you’ve made, I would give high priority to find a co-organizer. It seems an hard task, but the benefits are enormous. Have you noticed if someone has come over and over to your meetups?
User: Yes, there are two people who I see often at my events.
CMG: It’s a start! What about asking them to give you a hand for the next event? They could find a venue or a speaker, taking care of the catering, post on social media about the event and much more. Small tasks, but if they help you and keep helping, they could be open to run the community with you.
User: Any other way?
CMG: Of course! You can also …

In this scenario, the bot is able to offer more focused suggestions and proactively ask questions to the community leader, based on the data it has and on community best practices applied to that data.

I have still no idea on how to make such bot, but narrowing the scope to a particular kind of community (Google Developer GroupTwitter Developer Community, etc) can help a lot in the data collection tasks, and the bot can connect a user to their community with a simple question during the first interaction. It would be great if Meetup.com can offer this service, for every community it hosts (or with a Pro account).

I’ll talk about the higher quadrants, chatbot for community builders, in a follow-up post. Any thoughts so far?