CppCon 2021 Call for Volunteers and Volunteer Grant Program

Be a part of making CppCon 2021 an exciting event.  Please join us as a volunteer.

As a hybrid conference for the first time, we anticipate new challenges. To meet these challenges we’ll need both onsite and online-only volunteers.

Delivering some of our content online this year will require more training of online volunteers to understand the content delivery technologies that we’ll be using.

If you want more information about volunteering, contact us at volunteers@cppcon.org.

For more information about volunteering and the Volunteer Grant Program, please see our Volunteer page.

Join a great team and be a part of history making in the C++ community, please complete the CppCon 2021 Volunteer Application Form. There will be other steps after completion, we will contact you to assist you with setup for the conference.

Thank you

Brett Searles

Please note that registration to be an onsite volunteer will be ending October 1st. Registration to be an online volunteer is closed.

New Software Design Track at CppCon 2021

CppCon 2021 introduces a new Software Design Track.
Lisa LippincottEvery year CppCon presents dozens of sessions on how to produce high quality C++ code. But high quality software products require more of software engineers than just good coding. Great software products are built by engineers with great design skills, so CppCon also presents sessions focused on designing software components of high quality.
To advance this objective, CppCon now features a dedicated Software Design Track. This track will address the art of managing the interactions between software entities, of reducing coupling and of creating good and meaningful abstractions. It will focus on maintainable code and on how to design for changeability, scalability, extensibility, and testability.
Klaus IglbergerIf you have something to share about software design and want to contribute your experience to the entire C++ community, please consider submitting a talk. Possible topics include design techniques for all paradigms and both static and dynamic polymorphism, design and architectural patterns, good and bad experiences from real world projects (i.e. war stories), and even advice on how to manage big projects via proper software organization. The call for submission is open till July 19th.
Please contact the Software Design Track Chairs, Klaus Iglberger and Mike Shah, if you have any questions or suggestions.

Opening Keynote: Bjarne Stroustrup, live in person

As already announced, CppCon 2021 this October will be the full normal in-person conference now that many of us can meet safely, and are just bursting with anticipation to see each other again in person… and also a coordinated online conference for those who aren’t yet ready to engage in person or for whom travel is difficult. The Call for Submissions is open for both in-person and online sessions, and we are planning to make much of the in-person and online content available in near-real-time to online attendees… including the in-person keynotes, which brings us to the opening talk of the conference…

Meeting in personCppCon 2021 will kick off on Monday, October 25 with Bjarne Stroustrup delivering the opening keynote live in person in Aurora, Colorado, USA. This is Stroustrup’s first in-person talk in North America since C++20 was completed, just before the pandemic lockdowns began. His talk connects C++’s roots with all the things that make C++20 a historic milestone – it’s not only the biggest release of C++ in a decade, but also the first edition of Standard C++ ever that is “D&E-complete,”containing all of the features (except only unified function call syntax) that Stroustrup described a quarter-century ago in The Design and Evolution of C++ as his goals for C++’s future development, including concepts, coroutines, and modules which in 2021 are for the first time now available as actual realities in production C++ compilers.

CppCon 2021 is proud to be the forum for Dr. Stroustrup’s landmark talk, which he describes as follows:

C++20: Reaching for the Aims of C++

Out of necessity C++ has been an evolving language. I outline some early ideals for C++, some techniques for keeping the evolution directed, and show how C++20 comes close to many of those ideals. Specific topics include type-and-resource safe code, generic programming, modularity, and the elimination of the preprocessor. Naturally, over the years, C++ has acquired many “barnacles” that can become obstacles to developing elegant and efficient code. That has been a recognized problem since the early days of C – Dennis Ritchie and I talked about it – so we must distinguish between what can be done and what should be done. The C++ Core Guidelines is the current best effort in that direction. The talk will start with a sequence of early design aim statements, and then match them directly to working C++20 examples and the Core Guidelines.

Registration DeskEarly Bird Registration is now open for what will certainly be one of the most memorable CppCons ever this October 24-29. Register today!

Registration is now open for both online and in-person attendees. In-person attendees will require proof of being fully vaccinated, with the goal of further opening registration as we learn more about what will be safe in October.

CppCon 2021 Registration is Open

Registration DeskRegistration is now open for CppCon 2021!

Our community has been eagerly awaiting a return to the type of in-person events for which CppCon has long been known and this October we are bringing you that event in Aurora, Colorado.

Attendees must be fully vaccinated for COVID-19 before attending any onsite events. Attendees must confirm their vaccination status with the conference either online or onsite at badge registration. Confirming online in advance of the conference saves time by streamlining the onsite registration process.

Registration details are available on our registration page, but the high points are:

  • Substantial savings are available for Early Bird registrations before the end of July.
  • For those unable to attend in person, Online registration gives access to both online and onsite sessions as well as our Gather.town virtual venue for fun, games, puzzles, and engagement with other attendees including presenters and exhibitors.
  • Onsite attendees have the option of registering for both onsite and online access or for onsite-only. Why would an onsite attendee want to include online registration? Only online attendees have access to online sessions and the virtual venue. Online attendees will also have access to “rough cut” versions of all session recordings (onsite and online) until they are edited and made available on the CppCon YouTube channel.
  • We are also offering an Economy registration that doesn’t include the “Meet the Presenters” Banquet, annual tee shirt, or souvenir that are included in Full registration.
  • We have three options available for full-time students, Full, Economy, and Online.
  • We are accepting registrations for the Field Trip on the Georgetown Loop Railroad, which is sponsored this year by the North Denver Metro C++ Meetup.

#include DinnerWe are not yet accepting reservations for this year’s CppCon Academy classes.

Visa application support for non-US attendees is available.

As always, we offer support for academics and employees of non-profits and, thanks to the support of the C++ Alliance, child care.



CppCon 2021 Call for Submissions

CppCon is the annual, week-long (October 24th-29th, 2021) face-to-face (and now also online) gathering for the entire C++ community. The conference is organized by the C++ community for the community and so we invite you to present. The conference regular program consists of five days of sixty minute sessions.

CppCon videoLeveraging our experience of serving the global C++ community from last year’s very successful online CppCon, and our many years of providing an unmatched in-person experience, this fall’s CppCon will be a hybrid conference with  some presenters and other attendees onsite in Aurora, Colorado, and some presenters and other attendees online.

We hope that everyone can join us onsite, but we know that some people can’t or won’t be able to join us in Aurora this October. We are looking for presenters who can present in person and also for presenters who will be presenting remotely (presenter teams welcome).  Submitters can apply for an onsite session, an online session, or both (indicating which they’d prefer). We understand that a submission is not a commitment and that situations may change. We are prepared to respond appropriately to changing situations that affect your availability. Our goal is always to present the best possible program to attendees, both onsite and online, and we look forward to working with you to achieve this.

Have you learned something interesting about C++, maybe a new technique possible in C++17/20/23? Or perhaps you have implemented something cool, maybe a new C++ library? Or perhaps have an idea for a future language or library feature that you want to advocate for? If so, consider sharing it with other C++ enthusiasts by giving a regular program talk at CppCon 2021.

The submissions deadline is July 19th, with decisions sent by August 30th.

In addition to the dedicated Back to Basics Track and Embedded Track, we are looking for people with new ideas for tracks or specialities to better serve the C++ community.

For topic ideas, possible formats, submission instructions and valuable advice on how to make the best possible submission, see the Submissions page.

Note: Calls for Lightning Talks and Open Content sessions will be made later this summer. The deadline for these is the conference itself.

Please also watch for Call for Authors and Call for Volunteers coming soon.

The Hybrid Experience

We are very happy that CppCon 2021 can take place in person again this October, at the Gaylord Rockies, in Aurora, Colorado. We know that, by this fall, travel and onsite meetings will possible for at least part of our community to again engage safely in person.

Welcome Reception

But we’re also very aware that the pandemic won’t be “over” for everyone, everywhere by then, and we don’t want to leave anyone out, including people for whom travel is difficult even in normal times. So we’re announcing that CppCon 2021 will be a “hybrid” event with both in-person and online tracks.

We’re very pleased with the strong response to and success of CppCon 2020 online and plan to do something similar in 2021, integrated with the in-person event. We are still working out all the details for what a hybrid CppCon will look like, but we are confident that we can provide the CppCon engagement experience for both online and in-person attendees and we will let you know more details soon.

Here what’s next…

Registration DeskSoon we will be opening our Call for Submissions, for both online and in-person sessions. Even if you have never spoken at a conference before, why not submit a talk to CppCon, or encourage a colleague to do so when they have a cool perspective or technique to share?

Then, we’ll open Early Bird Registration for both online attendees and for in-person attendees who are vaccinated (or plan to be by October 1), with the goal of opening in-person registration further as we all learn more about what will be safe in October. Please consider whether your plans this fall can include joining us by connecting online, or traveling in-person to Aurora, Colorado, to be part of what will certainly be one of the most memorable CppCons ever this October 24-29.

Thank you very much for all your support for C++ and CppCon. We hope to see many of you in October, both online and in-person, and will have more details to share soon.

Trip Reports | Videos | Slides | Thanks

Great Success

Our experiment with an online experience for CppCon 2020 has proven to be a great success! We had almost a thousand (994) attendees that were willing to take a chance on our first online conference. To put that in perspective, that’s over fifty percent more than joined us for our first onsite conference in 2014.

In our attendee survey, it was clear that people preferred the onsite experience, but over eighty percent were either pleased or very pleased about attending an online CppCon. Some, who are unlikely to be able to make it to Aurora, were grateful for the opportunity to finally get to attend CppCon. I’ve appended a few comments to this post.

Trip Reports

For more in depth comments on the online CppCon experience, here are a few Trip Reports:

Javier Estrada is reviewing sessions in several posts on his Se Habla C++ blog.

Continue reading

Try a Taste of CppCon

We’ve had a couple of amazing days at our new online conference venue.

If you’ve been curious about how it’s working, we’ve got an opportunity for you. Since the conference is about half over, how about half off?

Use this registration code to register at a special rate of half off the regular $300 rate. For just $150 you can attend CppCon and see what all the excitement is about.

CppCon 2020 Keynote: Performance Matters by Emery Berger

Keynote Speaker: Emery Berger

Emery BergerEmery Berger is a Professor in the College of Information and Computer Sciences at the University of Massachusetts Amherst, where he co-directs the PLASMA @ UMass lab.  To fully appreciate the work that Emery has done and the academic honors that he’s received, you really need to read his bio.

Emery takes performance seriously and that’s what this talk is about. He’ll discus a new approach to profiling called causal profiling. This approach has led to the development of a tool called Coz, which ships as part of standard Linux distros and supports C++, Rust, and Java. “Guided by Coz, we improved the performance of Memcached (9%), SQLite (25%), and accelerated six other applications by as much as 68%; in most cases, this involved modifying less than 10 lines of code and took under half an hour (without any prior understanding of the programs!).”

From his talk’s description:

In this talk, I’ll first discuss some of the significant and surprising challenges facing C++ programmers trying to achieve high performance on modern hardware platforms: performance is far less stable and predictable than you might think! I’ll present some experimental evidence that strongly suggests we can’t count on compiler optimizations to help us out of this hole: in particular, I’ll show — using a new experimental methodology — that the difference between clang’s -O2 and -O3 optimization levels is essentially indistinguishable from noise.

Instructor Interview: Patrice Roy / Managing Memory

In this instructor interview, Kevin Carpenter welcomes Patrice Roy for a discussion of his CppCon Academy class, Managing Memory. Patrice has been a professor for over two decades and has been to every CppCon, but this is his first time at CppCon as a Ph.D graduate!

Patrice and Kevin discuss what attendees will get out of his class. This class is for people coming from other languages that want to do C++ right and for people who have been writing C++ that want to do it better, to get more control, more speed, and more resilience. There are a number of details of specialized knowledge, but they can be simple and fun. People will end the class knowing how to do things because they’ll have done them in the class.

In addition to his class, Patrice is also going to be presenting two talks for the Main Program. The idea for Some Things C++ Does Right comes from identifying the things about C++ that he misses most when teaching classes that use other languages.

The Surprising Costs of void() (and Other Not-Quite-Innocuous Evils) comes from the fact that as a professor grading the work of students he reads a lot of code written by bright people that are still learning, “so they do all sorts of weird things.” When he pointed these “weird things” out to other instructors he found that many knowledgable, experienced people don’t always recognizes some of these mistakes for what they are. This talk will give you a lot to think about.