This year I gave one full length talk, C++ Concepts vs Rust Traits vs Haskell Typeclasses vs Swift Protocols, which covered an introduction to C++ concepts and compared them to similar language features in Rust, Swift, Haskell and D. This broad category of language features is sometimes referred to as “constrained parametric polymorphism.”
I will update this blog with links to the YouTube videos when they become available. You can see a short preview in the tweet below.
Since my first trip report from CppCon 2020, I have decided to try and highlight diversity in my trip reports. I have decided to focus on the representation of female vs total number of speakers.
|Meeting C++ 2020||1/14||7.1%|
The 7.1% is very similar to CppCon. If you include AMAs, it goes up to 2/18, which is 11.1%. It was great to see such diversity in the keynote talks. It was also great to see the D&I (Diversity & Inclusivity) Panel on the first day. Hoping to see more of these at future conferences.
Thoughts on Remo
I have attended (fully in some cases, briefly popped in for others) 7 online virtual conferences this year:
|Italian C++ 2020||Jun||YouTube + Discord|
|Meeting C++ 2020||Nov||Remo|
From my experience, two things stand out:
- Remo is by far my favorite platform
- Remo tables should be 10+
I am not sure what the limit is for table size on Remo - but the size of 6 that Meeting C++ chose I found to be too small. Typically what happened in the Meeting C++ Remo was there was only 1 or 2 tables with conversations happening. If there is only going to be 1 or 2 tables of active conersation, it is better (in my opinion) to have those tables be a bit larger.
The virtual Meeting C++ was enjoyable but I definitely missed the in person aspect from the previous year’s meeting. The highlights were:
- Jonathan O’Connor’s talk on Templates
- Dawid Zalewski’s talk on Lambdas
- The D&I panel
- All of the keynotes were first time talks :)
- The conversations that I had with folks in between talks
If there is one thing I would improve on it would be have more “new” talks. From what I understand, there were a lower number of submissions this year for both CppCon & Meeting C++, so maybe it isn’t possible to avoid the issue of having many repeat talks from CppCon. It is also worth noting (thanks to Jonathan O’Connor for pointing this out) that CFPs for both conferences sometimes overlap, making it difficult to know what talks will be accepted for CppCon. However, it would be nice (especially for a single track conference) if there were more new (aka first time talks). To be clear, I don’t consider talks given at meetups (I presented at C++TO and others at MUC++) as “previous” talks, I view these as practice runs. A repeat talk for me is a talk that has been presented previously at another conference. Of the 11 non-keynote talks, I gave one of them and I had already seen 6 of them, which left only 4 new talks + the keynotes. That combined with only a couple tables of active conversation in Remo left me with the feeling that Meeting C++ was sort of living in the shadow of CppCon. I only say this because after C++Now in 2019, Meeting C++ 2019 was probably my favorite conference.
Keynotes & Talks
|2||Teresa Johnson||ThinLTO: Whole Program Optimization|
|3||Gabriel Dos Reis||Programming in the Large with C++20|
|1||Timur Doumler||How C++20 changes the
way we write code
|1||Nicolai Josuttis||Hidden Features and
Traps of C++ Move Semantics
Italian C++ 2020
|1||Conor Hoekstra||C++ Concepts vs Rust Traits
vs Haskell Typeclasses
vs Swift Protocols
|2||Sy Brand||Building an Intuition for Composition||CppCon 2020|
|2||Jonathan O’Connor||Template Shenanigans||-|
|2||Jonathan Müller||The Static Initialization Order Fiasco||MUC++|
|2||Dawid Zalewski||Lambdas, uses and abuses||-|
|2||Phil Nash||OO Considered Harmful||CppCon 2020|
|3||Klaus Iglberger||Calling Functions: A Tutorial||CppCon 2020
|3||Rainer Grimm||40 Years Of Evolution
from Functions to Coroutines
|3||Marc Mutz||Partially-Formed Objects
For Fun And Profit
AMAs & Panels
|1||Jason Turner & Rob Irving||AMA|
Top 2 Talks
For my favorite talks, I chose from talks that I hadn’t already seen at a previous conference.
#1: Template Shenanigans: Testing, debugging and benchmarking template code
Alpacas! Sy Brand may have kittens, but Jonathan O’Connor has alpacas (and pointed out that I do not - at least for now). Alpacas aside, this talk was a distillation of resources for development and debugging tools for metaprogramming in C++. This is a subset of tools/techniques covered (there were many more):
- Vittorio Romeo’s Camomilla (which Vittorio gave a lightning talk on at CppCon 2019)
- An interactive template metaprogramming shell: Metashall
- A gui for Metashell: MSGUI
- Louis Dionne’s compile time framework for microprofiling: metabench
#2: Lambdas, uses and abuses
Speaker: Dawid Zalewski
Link: Watch Here
This was a continuation of Dawid’s talk from Meeting C++2019, “Lambdas - the old, the new and the tricky” (which doesn’t seem to be online yet). It quickly went from the basics and worked it’s way up to implement the Y-Combinator using lambdas. A great talk that everyone should check out (as well as his 2019 talk when it goes online).
Thanks to the volunteers and organizers of the conference. It was great to meet and chat with C++ folks online.
Feel free to leave a comment on the reddit thread.