Cultivating a well-attended meetup where people are able to learn is a nontrivial challenge: Finding new speakers, topics and new venues on a regular basis is a difficult task. A few of my colleagues and I have been running the Cape Town DevOps meetup since late 2015, and it’s now attended regularly by between 20 and 120 people. Here’s a list of the actions that we took, the things we learned, and why they work.
I started organising meetups as a way to marry my passion for DevOps and my love for the developer community, to be able to contribute to other devs in some meaningful way. Although the goal was to create a meetup where people can learn, feel safe to do so, and network with other like minded people, it was an incredibly difficult task at first: The admin to run a monthly meetup is extremely time consuming, especially for a volunteer like myself who has a full time job, and isn’t paid to run these kinds of events.
But I knew there had to be a way to “automate” the process in some way, to make organising meetups something that anyone could do. I set out to empower a team that could run regular meetups of a high quality, with ease - all while bearing in mind that we would be giving up free time to do so. I achieved this by focusing on optimising a few key things, which I have now learned are critical to hosting really successful meetups.
These were as follows:
- Keeping meetups regular
- Ensuring good speakers
- Finding the perfect venue
- Putting together a solid team
- Working efficiently through collaboration and tooling
- Not disregarding the “extra bits”
Keeping meetups regular
In order to establish a good meetup in the community, we needed to meet consistently. This allowed for people to plan their attendance accordingly, and also gave the community confidence in our group as they saw announcements regularly. But doing that was quite a lot of work, and if taken up by an individual (who may have a full time job), they might lose momentum quickly.
Our aim was to run at least one meetup a month. We provisioned for this regularity by dividing the work amongst the team, assigning a lead to each meetup per month. This means that an individual only needs to take charge once every few months, and takes on a more supportive role for the other months. It also ensures there is a single point of contact and means the rest of the team knows who is in charge for that month.
In order to simplify the process of organising a meetup, we have a central knowledge-base of all the resources they need to put a meetup together, from possible venues, to potential speakers, and potential sponsors. Each time any of us find a new lead relating to these areas, we populate the knowledge-base. This allows the organiser of that month’s meetup to already have some viable options and allows us to easily plan meetings, on a regular basis, with a distributed team.
Ensuring good speakers
We need speakers every month, because we need to have a topic for our meetup that people can get excited about and follow. However, finding speakers is hard because getting someone to stand in front of a live audience and share their story can be a daunting task.
What hasn’t worked in the past has been to just openly offer 45-minute slots (for example), because it’s a really difficult thing for a new speaker to launch into.
I’ve learned that it’s important to take a more careful approach in order to make someone feel as comfortable and supported as possible. The first step we take is to gauge interest, by reaching out to the community and seeing who would be keen to share their experience. This eases someone into the process without any upfront commitments.
Then, sometimes it helps to look for international speakers already in the area, around the time of the meetup who are willing to give talks. They are there to give talks, and so are easy to onboard for the meetup.
Once we have these speakers, we give them a chance to choose their topic and offer various kinds of talks with different lengths to suit their experience. If they’re less of a seasoned speaker, they can do a shorter talk. This helps because they don’t feel pressured to do something they aren’t 100% comfortable with.
Lastly, we regularly update our knowledge base with people we meet that could be potential speakers, and what they could talk about. This gives them ample time to think of topics, so that when we make contact again, they’re almost always ready to get started straight away
This process has enabled us to keep a regular cycle of high-quality speakers, speaking on topics they are passionate about in a way that they’re comfortable to.
Finding the perfect venue
The next part for a successful meetup is the venue. It’s an important part of running a meetup because of how many factors are actually involved: There’s a lot to think about in determining whether the venue is good or not, and each of those things determines whether or not the meetup is going to be as successful as it could have otherwise been. Some of those factors include:
- Location: Where you host your meetup needs to be central, or at least really accessible - for obvious reasons. We’ve decided on the CBD as our main focus area, as it is quite central, with a lot of transport options that make it easy to get to for most people.
- Parking: If parking isn’t convenient, people might just not come to the meetup at all. This is important for people who don’t want to use public transport, and have to come from other engagements beforehand, or go to other engagements afterwards.
- Hosting size: Sometimes our talks get popular, and we need space for 120+ people, not all venues can cater for this. Having a cramped venue isn’t great for the attendees, so venue size is important for the success of the meetup
- Projector and sound setup: People need to be able to see the slides and hear the speaker. Without that they might struggle to hear what the speaker is talking about.
- Drink/food facilities: People normally enjoy networking before and after the event, and having a place to drink and eat at a venue really helps facilitate that.
- Staffing: Staff that can help us out with the smaller, administrative things involved in running a meetup. The larger venues often have staff who run the office, and sometimes they also stay for the meetup and help us keep things tidy.
In order to find a good venue, we reach out to the community and ask if anyone has a willing employer that would allow us to use their venue. This gives us a few options and enables us to plan ahead as well: It means we inevitably will find a venue, but also have a backup venue should a particular company not be able to host us.
Through hosting at different locations in the past, I’ve learned that having a good venue helps ensure that people arrive, mingle and enjoy the talks they’ve come to see. We’ve tried different locations, and found that where we’ve hosted has a direct impact on the number of attendees that we’ve had. We’ve also noticed that people seem to prefer venues that they know, so if we try a new venue our turnout drops for a bit until more people learn about the new location.
However, we’ve found that sticking to the above “key criteria” has helped us keep a good standard across the various venues we’ve used.
Putting together a solid team
Finding a speaker, finding a venue, and getting sponsorships and swag month after month is tiring if you’re doing it alone. It’s also easy to lose steam if you are practically the only one pulling your weight on a team. Having a team of like-minded, and “like-passionate” people allows you to spread the admin load and actually get more done, and get it done better.
Early on in the life of the meetup, we identified individuals that were passionate about building a community and about the topic at hand. Starting off with individuals who are passionate about the community means that they’re likely to push a little bit harder, and make each meetup a success even if they’re swamped with other work. Be selectively ruthless when it comes to putting this team together - you risk the project crippling later on if people pull out!
Once the team is assembled, we figure out how we all work together, and how we can rotate responsibility. Everyone works differently and wants to get involved in a different way, so learning each other’s strengths before you get started and during the process helps you lean on the right people at the right time. Also, since miscommunication becomes more of a risk with each person added to the mix, it is crucial to be open about how the group is run and organised.
Working efficiently through collaboration and tooling
Since all of our organising and communication is via the internet, we use some tools to facilitate that, and each one helps us in a different way.
Our first tool is Slack, and we have a private channel on the local ZATech slack group. This is where we can chat about details or figure out when the next meetup is going to be hosted. It works well for real time chat, where we can flesh out the details of an upcoming meetup. However, one drawback is that it’s difficult to track old conversations, as that requires one to use search to refer to previous conversations.
Our other tool is a private GitLab project. We use the “issues” for planning each meetup (or for other tasks that need to be completed by somebody) and the wiki as a knowledge base. Each month, we use a template to create a new issue that lists the tasks needed to be carried out in order to organise a meetup. The person assigned to that meetup will go through the list and tick off the tasks as they complete them. This includes things such as finding a venue, or tweeting about the event. This allows others to see the progress of that meetup, and to get involved if needed.
The next major part of our tooling is the wiki. This wiki allows the meetup organisers to have a few options for the month that they are organising, effectively reducing the load on the organiser for that month. Any time we find out useful information, we store it there - this could be a list of potential speakers, venues that are willing to host us, or companies that are interested in sponsoring a meetup.
Not disregarding the “extra” bits
Going the extra mile is a great way to show attendees that we care. It also fosters a deeper engagement during the meetup, and helps spread the buzz and branding about the event. By putting effort into creating a fun experience for the attendees, people tend to enjoy themselves a little bit more and will hopefully attend future meetups.
Our main “extra” is supplying food and drinks for the attendees. We normally serve these before the event, giving people time to network. This also makes it easier to attend the meetup, as one doesn’t need to make dinner plans. Our main strategy to supply food and drink is to get companies to sponsor pizza from a local fast food shop. This means that it’s generally low fuss and provides some sort of variety.
Additionally, we like the attendees to go home with something in their hands. We’ve managed to get some companies to sponsor swag (t-shirts, stickers, etc) for our event.
Leaving the meetup with something means that attendees leave with a tangible reminder of their experience, and will likely look forward to attending more meetups in the future.
Another positive is that others may see that swag being worn, or on a laptop, and might learn about our meetup through those avenues and increase interest in our brand.
Community is key
The points I’ve listed are really about the logistics of organising a meetup, and are the steps we’ve taken to ensure that we’re a well-oiled machine of meetup organisers - and the proof lies in the success I’ve seen in sticking to them.
There is, however, one more very critical piece of the puzzle - and that’s the community. Without the support and help of the attendees, speakers, venue hosts, and sponsors, a successful meetup that is not only attended well, but runs regularly, won’t be able to exist.
Adrian Moisey is a DevOps enthusiast, and has spent most of his career automating and scaling web sites. He is one of the organisers for both the Cape Town DevOps Meetup group, and the annual DevOps Days Cape Town conference. He is currently leading the development team at SweepSouth, a Cape Town based startup.