Post

CppCon 2022 - Trip report

Over a month ago, in October, I attended CppCon 2022 for the third year in a row, and once again, virtually. Just like last year, the conference was held in a hybrid model, meaning that attendees could join either in person, at Aurora - Colorado in the USA, or virtually, through the use of several different tools, aiming to mimic and support the online attendees to have the “in person” experience, from the comfort of their house (or whatever place they choose).

The setup was, in summary:

  • Transmission of talks over zoom
  • Discord for general support and announcements
  • Digital medium for access on the scheduled and easy links to sessions and recordings
  • Gather town, for interaction with other attendees (more on that later) and some focused panels

From a technical/infrastructure point of view, I think CppCon got the setup mostly right. The quality of the transmissions was great, on-site speakers were handling questions from the online audience, and the recordings were made available within a few hours (with some exceptions, but nothing major in my opinion).

On the content itself, I got a feeling that a bigger number of the talks were more present, discussing and presenting features from C++ 20 or before, in comparison with previous years where it looked like all everyone talked about was C++ 23 or more distant future. And don’t get me wrong, there were still a big number of sessions on C++ 23 and beyond, but this year, I didn’t get too much of a “this is nice, but way too far from my reality” feeling.

Must watch talks

As always, it’s not easy to choose what talk to watch among 4 or 5 that are happening at the same time. So my opinion does not comprehend all the 100+ talks from the conference. With that in mind, the talks I enjoyed the most, and highly suggest to everyone into C++ are the following (in no special order).

  • How Microsoft Uses C++ to Deliver Office - Zachary Henkel
  • Back to Basics: API Design - Jason Turner
  • Your Compiler Understands It, But Does Anyone Else? - David Sackstein
  • Pragmatic Simplicity - Vittorio Romeo
  • C++ MythBusters - Victor Ciura

At the time of this being published, only one of those are available in YouTube.

Lightning talks

As usual, the conference held a session with lightning talks. These are smaller talks, with different subjects in a more informal setup, with a limit of 5 minutes (a very hard limit). The sessions were broken into online and onsite, and the online version happened on Thursday morning.

The call for presenters opened a few days before the conference and I rushed to submit something, after all, this is a great opportunity to face the challenge of giving a talk to a broad range of people, but with a little less pressure. Turns out I didn’t had to rush so much as on the day before the call was still open, and the result was that I actually submitted and presented two lightning talks this year.

My first talk was on a few tips for creating better and more effective APIs, inspired by Scott Mayers’ “Make Interfaces Easy to Use Correctly and Hard to Use Incorrectly”, and some problems I had faced recently. I’ll write more about it in a dedicated post, but I’ll leave you with the slides in case you’d like to check that out. It’s such a deep topic that would be impossible to cover all in a standalone 1-hour talk, let alone 5 minutes. But my intent was to have a starting point for those who want to start this discussion.

The second talk was more on the fun and phylosofical side, where I talked about how much the process of dealing with bugs is similar to the 5 stages of grief, with no heavy weight on it. Once the recording is available I’ll update this post with the link as the slides by themselves don’t add much.

I’m very glad and proud to have presented in the lightning talks sessions one more time. I couldn’t imagine being on the stage of such a big conference (even virtually) 2 years ago. This was definetivaly a trigger to set my personal goal to submit talks next year in different conferences.

The social side of the conference

In a conference like CppCon, where all talks are later made available to everyone, what really contributes to a person deciding on going is the network aspect. Being able to meet other people, discuss different subjects and share experiences outside of a strict format. That’s what made me love joining conferences, and something that CppCon was getting right since the first online version in 2020. It was such a differential to me, that suddenly I was comparing other conferences I attended to CppCon, and so far, it would always go as “X was not as good as CppCon”. But this year I got disappointed.

For the second year, they use Gather Town as a way to provide such space for their attendees. GatherTown is almost like an RPG game, you create your avatar and walk with it through a virtual version of the conference venue - including all the different tracks rooms. Once you got close to other’s avatars, you could turn on the camera and microphone, and talk with that person - or group of people. And this idea is nice, and worked great last year, but this year, with (I assume) more people joining in person, there weren’t many people around Gather Town.

At many times of the day, I wandered around the big venue, knowing that around 90 people were “online”, but not finding a single soul with a camera or mic on. During the whole 5 days of the conference, I must have talked with about 4 or 5 people.

My feeling is that a big part of the people on Gather didn’t really get the idea, and maybe those who got, didn’t get the patience to look around for others, which in my opinion was caused by having such a big virtual venue.

I understand the whole idea of trying to create an environment that would mimic being there in person, including having to walk around to different rooms and having spaces like a conference HQ or quiet room. But I think this year, it came with a big cost on the networking opportunities.

I still think having an online version of the conference, for those who might not have the ability to attend otherwise is great either because of traveling limitation or budget, but I think some adjustments should be done.

Final Thoughts

Although the downsides of my experience this year took from the ROI of attending the conference, I left CppCon with a very strong feeling of continuing to attend technical conferences, preferably onsite, and with a personal goal of at least trying to submit a talk for any Cpp related conference.

This post is licensed under CC BY 4.0 by the author.