CPPP 2019 : Our trip report of the first edition!

HPC
Written by Daniel Vanzo, on 01 July 2019

Paris, June 15th.

Usually the alarm rings at 7:00 AM but today isn’t any day. It is 6.30 in the morning, the sun is already up. I recall that a great day is in perspective : CPPP, the first international C++ conference in the heart of Paris. I take the metro line 6 and arrive at Bir-Hakeim. This is a famous stop for the locals as well as the tourists should one want to visit the Eiffel tower or the Champ de Mars. This time I have a different destination.

As soon as I get off the metro, I turn on the GPS to follow directions: my destination isn’t far, still, I don’t want to be late. On my way, I notice some guys with their backpacks. I reckon from their direction and their looks we share the same destination. Indeed, after a couple of minutes of walking, we arrive at the venue: the « Union Internationale des Chemins de fer » (UIC). It’s 8 o’clock: I made it on time to CPPP 19.

I already see in the reception hall Vivien and Maxime. Moreover, I see some other familiar faces from the Paris’ CPP meetings along with the other organisers and volunteers. Later on, the director of the venue visited our exhibition stand and shared a bit of history of the UIC. Indeed, it was clear how fitting the venue was for the CPPP event: in addition to its international dimension where members of the UIC from all around the world meet and work, inside the venue, which was built in 1962, one may find several donations from its members: marble, mosaic, coloured glass to name a few.

People are already standing in queue to get their conference badges and their goodies. Breakfast is served and everyone waits impatiently for the conference to begin.

Emotions, STL algorithms, class semantics … A great variety of keynotes at the CPPP 2019!

Programmers also have emotions!

Kate Gregory's plenary keynote "Emotional Code"

The conference began with a keynote from Kate Gregory. At first sight, her talk was not typical for such a technical meeting as she was talking about emotions. But, as she detailed, those emotions are (also) expressed by programmers in their code as they are developing software for multiple reasons: fear, arrogance, selfishness and laziness. Her talk gave great insights on how to handle emotions and write better software.

More technical keynotes

Hana Dusikova made me travel back to my university years where I first heard about LL(1) grammars and (non) finite automata. Based on the theory thereof, she progressively showed how to implement them in C++ to provide efficient compile time pattern matching.

Mathieu Ropert presented an introduction to the STL algorithms, that a C++ programmer should consider as an essential toolbox. It prevents us from reinventing the wheel and thus leads to cleaner code with no performance penalties.

In a very well-structured and well-paced live coding session, Jérémy Demeule, with his usual composure, showed step by step how the powerful, yet accessible clang-tidy allowed to detect constructs in C++ source code and transform them into more modern constructs.

Odin Holmes or Odin the nerd as he likes calling himself delved into the world of DSLs. Odin warned his audience ahead, clearly aware of the difficulty of his talk. I will not adventure myself any further.

My code is secure… Really? Patricia Aas made us reconsider this statement, going through a vulnerability exploit process. She showed us how segmentation faults could be deliberately produced and used to modify a program’s behaviour.

Loïc Joly started his talk with a mission: teach us how to distinguish different kinds of class semantics. From the rule of 5 to reference semantic, he led us across a journey giving us not only his technical background but also a thinking framework for C++ program design.

Finally, Clare Macrae delivered a very interesting talk on the psychology and the approaches to refactoring legacy code. She focused on the golden master test technique and on the « ApprovalTest.cpp » library which allows to easily implement it in C++.

This day was rythmed by many other talks and interesting encounters.

Gabriel Dos Reis' talk : "C++ modules, what you should know"
Gabriel Dos Reis’ talk : « C++ modules, what you should know »

CPPP 2019 Team : Thank you!

Many thanks to the organising team, the volunteers, the speakers and the participants who made this conference possible and successful! See you next year, at CPPP 20.

In the meantime, if you couldn’t make it or physics prevented you from attending all sessions rejoice, for the videos will be posted shortly! We’ll be happy to have your feedback and impressions on this first edition of CPPP in Paris!