The Rust Review: Starting a Rust Community
10th October, 2024 8 minsWelcome back to the Rust Review series, where we dive deeper into the Rust programming language, guided by insights from some of the community’s brightest talents. In this eighth instalment, we’re excited to feature a contribution from Tue Henriksen, founder and organizer of 'Rust Aarhus', a vibrant and inclusive Rust community in Denmark.
In addition to his role as a Software Architect and Developer, Tue has successfully built 'Rust Aarhus' from the ground up. In this blog, he shares valuable insights on how anyone can achieve the same.
In October 2019, I started a new job. Like the other developer jobs I had in the previous 20 years, this was in the embedded area. I had just started to read the Rust book, and luckily, my manager thought it would make sense to try using Rust instead of C/C++.
Soon after, COVID-19 closed down the world, and people, including myself, started to work permanently from home. I joined online meetups at Rust London and Rust Berlin during this time. Problems began when the world opened up again, and the meetups returned to being in-person as the closest community was in Copenhagen - a 3.5-hour drive from my home.
Fast-forward to February 2023, when I was sitting in a bar in Brussels with some friends and getting ready for the FOSDEM conference. After a couple of beers, I mentioned that I had thought about starting a local Rust community, and then there was no way back. This happened to be one of the best decisions I have ever made.
I had never tried to run a community or attended a physical meetup. However, during the previous couple of years, I had found a few contacts of people close to me who were interested in Rust. We had our first meetup in April 2023.
The following sections describe how I started the community. This should be seen as one of many ways to do it - use this as inspiration and do what feels right to you.
Platform
The first thing I did was to choose a platform for our community. It should be a platform where I can create events and write to the community members. The choice was obvious to me, as all the communities I had found were on meetup.com. Unfortunately, it wasn't free, but I was happy to see that already the day after I created the group on Meetup, several people found it and joined, even without me having to promote it in any way. Today, I am also using LinkedIn extensively to promote our meetups, and have also created a group here. However, on LinkedIn, it is much more random if our current members see my posts, but it is excellent for attracting new members.
Before organizing the first meetup, I needed a certain number of members. Honestly, I had no idea if there was any interest in Rust in the area. Besides writing posts on social media to let people know we existed, I wrote directly to all my contacts I had worked with over the last many years. I even made a poster that I asked people to print and hang somewhere at work. I do not know if anyone did that, but people started to join the group.
Besides using Meetup to communicate with our members and LinkedIn to attract new members, we use GitHub to plan our events. It's not the most obvious choice, but more about that later.
Organizing meetups
Luckily, I had two contacts who volunteered to prepare talks for our first meetup, plus I talked a bit about my ideas with this community. My job sponsored some food, and one of my friends from the bar in Brussels had an office we could use, so we were ready to go. Well, until we realized that we still needed a projector which was ordered and arrived only a few hours before our event started. This last thing made me realize that I needed a checklist for all future venues. The current version of our venue checklist can be found here.
The checklist does not contain anything surprising, but it is nice to be able to send this list to a future sponsor.
As seen from the venue checklist, we have two kinds of events. The Talk Nights are based on two or more talks, food, and networking. We do not have a fixed venue for that, but we are using the venues that our sponsor has available. I like this setup, and people also enjoy visiting different companies.
Often, our members suggest that their work will provide a venue and sponsor the food or that they would like to give a talk. Sometimes, I have contacts that I ask if they can help.
Our second type of event is our Hack Nights. Here, we meet with our laptops and do whatever we think could be fun - related to Rust. These events are less popular than our Talk Nights, probably because they require more than just listening to talks. At some point, I would love if we could organize themed Hack Nights so everybody is working on something related to each other. This might attract more people, but it requires some time to prepare.
For our Hack Nights, we use the same venue each time - a public cultural house that we can use for free. This is great, and organizing Hack Nights is almost no work in its current form.
To make sure I remember everything when organizing a meetup, I have created a checklist inspired by one I found online from Rust London if I remember correctly.
This checklist is printed out and hung together with a physical calendar, on which I have marked the days mentioned in the checklist. I like to do it this way because it makes it easy to see if I am on track without opening my computer or mobile - again, find a solution that works for you.
We have monthly meetups except for July and December, with Talk Nights every second month and Hack Nights every other month. The dates are set well in advance. We settled all the dates for 2025 in August, and on GitHub, we create an issue per event with labels indicating if we need talks, venues, or sponsors. This is useful when people ask if they can host a meetup or give a talk. I know GitHub issues are not made for this, but most importantly, it is free to use, and most people in the community know how GitHub works.
The program's detailed planning is also handled in GitHub. When creating a program for a Talk Night, I create a markdown file in the repository with the program and create a pull request that the speakers can review to ensure everything is clear. An example of such a program can be found here.
I would like to provide a free space for local developers to talk about what they are doing and how they are doing it. Therefore, most of the speakers are not professional or semi-professional speakers, but they all do a great job. For this reason, I am also a bit reluctant to invite high Rust profiles as speakers - simply because it might scare the few who actually consider taking the stage, but also because I think it is more interesting to hear what happens within our local community, even though a high profile speaker might attract a bigger audience.
Workload
So, how much work is needed to run a community? It is hard to give a number, and I am sure it varies from person to person. On average, I used a couple of hours weekly during the first year - today, I use less. I would like to use more time, for instance, to organize these themed Hack Nights, but currently, I do not have the time for it.
Over the last year and a half, different people have joined and left the organizer group for various reasons. It is hard to find people who can fit some extra work into their already busy schedules. This is fine by me, but I would love to have a group of people with whom to discuss the direction of the community, and then I can do some of the heavy lifting if no one else has time for it. For this reason, I also enjoy attending the monthly status meetings of the Copenhagen Rust Community, where I hear how they are handling things and get inspiration.
Speaking of other Rust communities, I also owe a big thank you to Ernest Kissiedu, the main organizer of the Rust London User Group. Over time, I have had a couple of calls with him to discuss different issues. Staying in touch with fellow communities is vital to me.
Economy
Currently, Rust Aarhus is run 100% privately. In Denmark, this means that we as a group cannot have an economy - we cannot charge anyone money or receive funds, which also means that if something needs to be paid, I can either pay it myself or I can ask a company if they would sponsor us. The last thing is what happens at our meetups, where our sponsoring company will buy food and drinks, which they will have to do themselves, as I cannot give them an invoice. The positive side is that it is much simpler to run privately.
If you are considering starting a community, I encourage you to do it. It is much more fun than I thought it would be, and you will meet a lot of interesting people. Please reach out to me or some of the many other organizers worldwide to get you going.
Rust Aarhus in Numbers at 2024-10-01
- First meetup: 2023-04-20
- Number of Talk Nights: 9
- Number of Hack Nights: 5
- Number of members: 356
- Members attended one or more meetups: 219
Links: