In software engineering, trunk-based development (TBD) is a strategy to manage git workflows that suggests merging commits in a single main branch, instead of the git flow that suggests working on multiple branches.
This story is about applying this strategy to community management to increase engagement.
Growing an engaging community with trunk-based management
Six months ago, I joined Ronak Ganatra, Jakub Czakon, and Ophir Prusak as an admin to co-run the Developer Marketing Community — a place where tech founders and marketers hang out to share insights and best practices. People from dev-first companies like Algolia, PostHog, Supabase, Vercel, and Warp are all in.
The objective? To grow an engaging community.
At this time, the community had:
- 600+ members,
- 20% of weekly active members (120+), and
- 5% of members who post (30+).
Only 1 out of 5 people were active members. Worse, only 1 out of 50 people posted messages.
So, how to increase engagement and ignite conversations?
We had two radically opposite hypotheses:
- More channels to inspire conversations,
- Fewer channels for randomness.
Hypothesis #1: more channels for inspiration
As founders and marketers in dev-first companies, we talk about many topics: developer relations, content marketing, product launches, SEO strategies, swag, and so on.
We initially created one channel per topic to reduce noise, focus discussions, and inspire.
We created nine different channels:
├── 1-general
├── 2-intros
├── 3-jobs
├── 4-content
├── 5-devrel
├── 6-feedback-requests
├── 7-first-time-marketers
├── 8-random
└── 9-shameless-plugs
In such a structure, some community members started to ask us: "Where to post? Is this channel the right place?"
Some channels were obvious: #intros
, #jobs
.
Now, picture this:
- You're a first-time marketer.
- You just published a blog post with lessons you learned attending a developer conference. Such a story would be an awesome resource for the community.
- Where should you post it?
#content
, #devrel
, and #first-time-marketers
sound like relevant channels. Or #general
because it has more community members and would increase reach? Or is it just #shameless-plugs
?
We realized that to answer "where should I post," more options led to harder decisions.
In psychology, people call it the Hick's Law.
Hick's Law predicts that the time and the effort it takes to make a decision, increases with the number of options. The more choices, the more time people take to make their decisions.
— source: growth.design
The more options, the more time one takes to decide. Worse, we realized that when in doubt, community members just didn't post anything at all — and that's exactly what we wanted to avoid.
As a result, most conversations happened in #general
, and 50% of channels were inactive.
If more channels don't inspire community members to engage more, what could inspire them? How about fewer options?
Hypothesis #2: fewer channels for randomness
We completely redesigned the structure of the community. We archived the most inactive channels and renamed for clarity.
We had six different channels:
├── 1-announcements
├── 2-ask-anything
├── 3-intros
├── 4-jobs
├── 5-share-anything
└── 6-watercooler-chat
We defined topics for each channel as below:
-
#announcements
: Weekly highlights and notes from the admins. -
#ask-anything
: Need help? Looking for feedback, quotes for your next blog post, or guests for your next podcast episode? Ask anything here. -
#intros
: Introduce yourself! -
#jobs
: Growing your team? Looking for a new opportunity? This channel is where you can post your open roles, recommend someone you've worked with, or drop your resume. -
#share-anything
: Launching on Product Hunt? Need a boost on dev.to, LinkedIn, or X? Think of this channel as your engagement pod. -
#watercooler-chat
: All-things not developer marketing.
In this experiment, #ask-anything
and #share-anything
are the most interesting channels from my perspective:
- Do you have anything to ask? Go to
#ask-anything
. - Do you have anything to share? Go to
#share-anything
.
If we go back to the previous example:
- First-time marketer,
- That just published a blog post on DevRel.
- Where should you post it?
The answer is straightforward: #share-anything
.
Results?
Six months later, the community has:
- 1,000+ members,
- 20% of weekly active members (200+), and
- 10% of members who post (100+).
By reducing the number of channels, we doubled the percentage of members who post while growing the community by +70% in six months.
Wrapping up
If you need help building an engaging community, think trunk-based management.
Inspired by software engineering, this strategy suggests focusing conversations in a few main channels, instead of having multiple channels.
Reducing the number of options makes it simpler for your community members to start conversations. Enjoy the fun!
Top comments (2)
Very nice write-up - I like how reducing the number of channels led to increased activity!
thanks, @matijasos! fewer channels, greater conversations!