C++North 2022 Trip Report
From July 18–20, 2022, I attended C++North, a new international C++ conference in Toronto, Canada. The first edition of this conference was eagerly anticipated, and it did not disappoint. Compared to some other C++ conferences, it was not a huge event – there were only about 180 attendees on site – but it was certainly a very high quality event.
C++North grew out of the Toronto C++ User Group, and these local community roots were very noticeable, in a good way. The organizers were clearly proud of being able to host the conference on their home turf. Every morning started with a land acknowledgement, and more than half of attendees were from Canada. A third of attendees were attending their first conference ever.
(photo by Amir Kirsh)
Despite being a new conference, C++ North managed to put together a fantastic line-up. This was a three-day, three-track conference, and the program was packed with amazing talks one after the other. My personal favorites were Kate Gregory’s opening keynote, “Am I a Good Programmer?”, Jason Turner’s “The Power of Compile-Time Resources”, Bryce Adelstein Lelbach’s “C++ Standard Parallelism”, and his other talk “Multidimensional C++” (a great introduction to
std::mdspan, a new C++23 feature). For advanced C++ programmers who like to geek out on complex and obscure C++ features, there was Daisy Hollman’s “Cute C++ Tricks Part 2”, continuing the series of talks she started at CppCon 2021. For people who read the ISO C++ standard document and would like to understand it better, Olivier Giroux gave an in-depth talk about forward progress guarantees in concurrent C++ and how exactly they are defined in the standard.
The highlight of the conference was Chandler Carruth’s highly anticipated keynote. He announced Carbon, an “experimental successor language to C++”, which Google and a team of collaborators have been secretly working on for several years now. This keynote is already available to view online and has generated quite a lot of interest in the C++ community. Carbon is still at a relatively early stage of development, so we don’t yet know whether it will be part of the answer to the question “What’s next for C++?”, but it will be exciting to find out. The combination of modern language design choices and full, seamless interoperability with existing C++ code certainly looks like a very interesting package. More details about Carbon are available at their main GitHub repository.
I was also a speaker at C++North myself, premiering a new talk, “C++ Lambda Idioms”. I tried something new: this time I didn’t only have slides, but also some live coding in my talk – in CLion of course. They say you should never do live demos because things will go wrong, but I guess I got lucky, because everything worked perfectly, and it was a lot of fun, too!
Apart from the talks, there were lots of other activities around the conference. There was an unforgettable lightning talk session (with Tony Van Eerd hosting and Guy Davidson singing a sea shanty!), a movie night hosted by Walter E. Brown, a fantastic conference dinner, a board game night, #include event, and even a morning Tai Chi session. The booths were interesting, too. There were some companies that are well-known at C++ conferences, like IncrediBuild and Ubisoft, but also some that I have never heard of before: a company called Groq that makes bespoke chips for real-time AI and HPC, and another one called Hard-Line, which specializes in mining machinery.
Throughout everything happening at the conference, it was very noticeable how much effort the organizers put into making things as inclusive, welcoming, and safe as they possibly could. There was a very friendly team helping people out, and a very visible Code of Conduct team lead. There were gender-neutral bathrooms, a quiet room, and a prayer room. All tracks were captioned by live captioners, and in addition to a screen showing the captioning, there was a caption app that people with hearing difficulties could use on their phones to follow what was being said. There was a meeting room that could be booked, so that nobody had to invite anyone to their hotel room for a business meeting. There was even more: here’s the full list. This level of commitment and attention to detail was truly impressive – I wish every conference did all of these things.
In addition, the venue itself, The Omni King Edward Hotel, was absolutely amazing. This was one of the most luxurious hotels in which I have ever attended a C++ conference. In addition, the venue was fully accessible, in a neighborhood that was safe to walk in, easily reachable on public transport, with food options in any price range all around, and the Lake Ontario waterfront just a short walk away.
Speaking of food, the catering was fantastic, too. This was some of the most delicious food I’ve ever had at a conference. My absolute favorite was the Canadian maple butter tarts. I really hope that they will be back again next year! Of course, they thought about folks with different dietary needs and the menu was accessible online in advance.
In short, I had a great time! I would recommend this conference to anyone interested in C++, and I definitely hope to come back next year!