By Weile Wei
From May 5th to 10th, I was in Aspen, CO attending my first C++Now conference. I was able to participate as a student volunteer, and I was able to give a lightning talk about C++ Distributed Object Abstraction using HPX.
I enjoyed all three keynotes presented this year. Daveed Vandevoorde, the author of the C++ Templates: A Complete Guide, talked about the notion of “constant expression” in his presentation C++ Constants. Hana Dusíková gave a talk titled as Compile Time Regular Expressions with Deterministic Finite Automaton which provided me a vivid review of what I learned in the course Theory of Computation in Fall 2018. Also, in the presentation C++ Reflection TS, David Sankel demonstrated a new language feature proposed for the C++ Standard.
I would love to share my thoughts about several talks I attended:
Conor Hoekstra’s Algorithm Intuition is a very engaging and enjoyable talk. This talk was awarded 5 top prizes in C++Now 2019, one of which was Best Presentation. He first reviewed and replayed some previous C++ algorithm talks to demonstrate how important it is to use the C++ algorithms library when you are writing code. He also presented code examples where he used C++ algorithms to solve some challenging programming problems. His talk inspired me to learn more about the C++ standard algorithms in order to better understand them and apply them in my daily work as they enable a user to write concise code which is efficient and productive. During his talk, I was lucky to be rewarded with chocolate for finding a west-const-style code in his slides :).
Timur Doumler’s Audio in Standard C++ provides a special but important perspective for C++ standard development. He proposed adding audio input and output into the C++ Standard as computer games and other applications need audio support but can only find these features in 3rd party libraries. Audio can be thought of as a digital signal no different than images, another form of signal. In his talk, he provided some basic knowledge of audio signals and his C++ implementation design for audio. He then proceeded to play a melody coded in C++ which was amazing even if it was just a simple rhythm.
Bob Steagall’s presentation, Linear Algebra for the Standard C++ Library, proposed adding a linear algebra to the standard library. As I am working in an array processing project for machine learning with STE||AR group at LSU, this talk was particularly relevant as we are using lots of linear algebra techniques, such as multi-dimensional array multiplications. His talk was beneficial to me as he explained the definitions of linear algebra terminology in detail, both in computer science and in the mathematical sense.
On Monday night, I presented C++ Distributed Object Abstraction using HPX in the lightning talk session. The audience was composed of C++ committee members and experts from all over the world. Although I was nervous throughout the whole 5-minus presentation, I was glad to have the opportunity to present my work. I believe that our experience will be helpful for users who are writing distributed applications. With the utility of distributed_object we built in HPX, user can easily represent a large dataset as a single logical object (any C++ type). For more details, you can check out my previous seminar talk: https://youtu.be/IG2IVI2ab2Q.
I would say my experience of C++Now was amazing. This conference is hosted every year in May in Aspen, Colorado. Normally, it has about 150 attendees and is a week-long meeting. Each talk lasts for 90-minute and three tracks of talks happen concurrently. Throughout the week, we talked about C++ nonstop. We talked about C++ during Tuesday’s barbeque, early morning during Library in a Week section, and even were reluctant to leave the conversation after 10PM… So, you have plenty of time to have a conversation with any speaker or attendee and very likely build a long-lasting friendship with them.
I wasn’t expecting I would have been selected as a volunteer at this high-level conference. Being a volunteer, I was able to get involved in the conference organization in-depth. The tasks I performed seemed mostly trivial, liking reviewing documentations, testing newly-developed timer system, assigning conference rooms, setting up multi-media for speakers, being on duty in the patio house, sending many feedback emails to each speaker… However, I knew that it was a great opportunity for me to interact with interesting people and to really be a part of the conference. Many thanks to conference sponsors for waving my registration fee and Dr. Hartmut Kaiser for his travel support and guidance! I would not have had such an opportunity without their support!