CppCon is the annual, week-long face-to-face 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 ofsixty minute sessions.
Given the current situation regarding COVID-19, we feel it is best to be totally transparent with our planning process. We are closely monitoring the news regarding restrictions on travel and large gatherings. It takes about 9-12 months of planning for each conference and given that we do not know the situation in September, we are moving forward with the hope that it will be safe to see you all in Aurora.
Have you learned something interesting about C++, maybe a new technique possible in C++14/17/20? Or perhaps you have implemented something cool related to C++, maybe a new C++ library? If so, consider sharing it with other C++ enthusiasts by giving a regular program talk at CppCon 2020.
The submissions deadline is June 5th with decisions sent by July 13th.
We’ve made a format change to better serve the needs of our community. In addition to the dedicated track that we introduced last year (the Back to Basics Track), we’ve created another dedicated track (the Embedded Track).
For topic ideas, possible formats, submission instructions and valuable advice on how to make the best possible submission, see the Submissions page.
over a thousand other professional C++ engineers, including
book, blog, and library authors,
standards committee members,
compiler and other tool implementers, and
teachers and trainers
scores of the best presenters in the industry, and
exhibitors from all over the world
five days of seven or eight tracks of peer-reviewed presentations,
daily plenary talks from recognized industry leaders (see below),
multiple lightning talk sessions,
expert panels and special sessions,
poster presentations, and
But if you do it by this Monday, you save enough money to treat yourself and a friend to the conference Meet the Speakers banquet.
To help you decide, we are announcing our line up of plenary speakers:
Andrei’s talk will be a deep dive on variants of classic sorting algorithms. You might think that sorting has been studied to death and is a solved problem. But Andrei thinks there is more learn. Along the way he’ll share many wondrous surprises and teach us how to cope with the puzzling behavior of modern complex architectures.
Ben will use a top-down approach to show how WebAssembly can solve a real-world problem. His challenge is to build a Compiler Explorer-like tool that doesn’t require a server. He will show how to compile C++ code in the browser and run the resulting executable sandboxed in the browser.
C++ is turning forty. In a talk that both looks back and looks forward, Bjarne will ask the question, What is C++?
He will answer by looking at C++20, as a modern language, not treating it as a layer cake of features, but as integrated whole discussing how classes, templates, lambdas, and the other components of the language fit together.
Herb is going to discuss exceptions and RTTI, the only two features in C++ that violate the the zero-overhead principle. These features have divided our community. This talk is about ongoing long-term efforts to try to unify the community, not by replacing exceptions and RTTI, but by doubling down: fully embracing exceptions and RTTI, and improving them so they can be zero-overhead too.
Computer scientists are bad at relationships. Nearly every program crash is rooted in a mismanaged relationship, yet we spend most of our time discussing types and functions and not the relationships connecting them together. Sean’s talk looks at common ways data and code are connected in an application, how those relationships are typically represented, and the problems caused by the use, and misuse of these paradigms.
These five speakers will be joined by over one hundred of the best presenters in the industry as well as over a thousand top C++ programmers that want to engage with you, sharing their insight and experience. Do not miss the chance to join them all in Aurora this September.
The conference is asking for instructors to submit proposals for pre- and post-conferences classes to be taught in conjunction with next September’s CppCon 2019.
If you are interested in teaching such a class, please contact us at email@example.com and we’ll send you an instructors’ prospectus and address any questions that you might have. The deadline for submitting proposals is December 21st, 2018.
Academy award-winner, Mark Elendt will be giving his first CppCon talk on Patterns and Techniques Used in the Houdini 3D Graphics Application.
Mark has been working at SideFX, the creators of Houdini for over 25 years and it was in recognition of this work and the value of Houdini to the motion picture industry that Mark and SideFX Software were given a Scientific and Technical Academy Award of Merit earlier this year.
From his talk’s description:
Not only has Houdini been used in all of the Visual Effects Academy Award winning films of the past 10 years, but it has also been used for television shows like Game of Thrones and Stranger Things as well as content creation for many AAA video games, and even for scientific visualization.
Houdini artists are tasked with creating amazing, never before seen visual effects. They constantly push both performance and scale in the software. Since the early 1990’s Houdini’s C++ architecture has provided a flexible platform that has enabled artists from around the world to create their vision.
Mark will discuss some of the patterns and approaches that have been used in Houdini to meet the demands of production, from the early days of dealing with c-front to embracing modern features provided by modern C++.
Kate Gregory is an author, sought-after conference speaker, trainer, Microsoft Regional Director, and partner at Gregory Consulting. She is also a frequent and popular speaker at CppCon and this year she be giving her first CppCon keynote address.
In her keynote, Simplicity: Not Just for Beginners, she will address the question, Why do so many people say that simple code is better code, but so few put it into practice?
From her talk’s description:
In this talk I’ll spend a little time on why simpler is better, and why we resist simplicity. Then I’ll provide some specific approaches that are likely to make your code simpler, and discuss what you need to know and do in order to consistently write simpler code and reap the benefits of that simplicity.
Less than a week remains for Early Bird registration. Only six days (three US business days) remain before the deadline.
Plenary Speaker: Chandler Carruth
Chandler, who leads the C++ and LLVM teams at Google and is one of the most popular speakers at CppCon, will tackle the new class of vulnerabilities in modern CPUs with his talk Spectre: Secrets, Side-Channels, Sandboxes, and Security. He is one of the lead engineers within Google and across the industry working to respond to these developments.
From his talk’s description:
The discovery of speculative execution side-channel attacks (called “Spectre”) fundamentally changes the security model of every modern superscalar microprocessor. Extracting secret data (credit cards, cryptographic keys) through side-channels is not new and has challenged the cryptographic community for decades. However, speculative execution attack techniques have fundamentally altered the ease and applicability of side-channels: far more code is impacted by these attacks and they can more reliably be weaponized. Responding to these issues has impacted CPU design, compiler design, library design, sandbox techniques and even the C++ programming language and standard.
This talk will explain how these kinds of attacks work at a high level and provide a clear set of terminology to describe these classes of vulnerabilities and attacks. It will show how the different variants work at the low level of modern hardware to give a detailed and precise understanding of the mechanics involved on CPUs today.
In addition to his plenary address, Chandler will participate in a panel discussion with other experts from across the industry who have helped lead this security incident response.
If you would like to attend CppCon 2018, see great C++ content, and meet our speakers and attendees, but a week’s registration doesn’t fit your time or money budget, consider volunteering.
We are looking for volunteers to help run the conference. We need people to:
help assemble registration packets and badges,
assist speakers with Audio/Video (AV),
and, in general, be on hand to make things run smoothly.
In exchange, we’ll see to it that you’ll spend at least half of your time in sessions. It would be great if you could join us for the whole week, but if you can only make it for one or two days, we can work with that. We have information on our Volunteer Page. If you would like more information, please email firstname.lastname@example.org.
Announcing the Volunteer Grant Program, new for 2018
Most of the volunteers that we’ve had at CppCon have come from the local area. We are delighted with the support that we’ve received from the Northwest C++ Users’ Group and the Seattle area C++ community. The help that we’ve received running the conference for the last four years has been invaluable for the conference, but it is also a wonderful experience for anyone interested in C++. We’d like to make that opportunity available more broadly, so we are announcing a program to provide financial support that will make it possible for individuals to volunteer, even if they would have to incur travel and lodging expenses to attend the conference.
This program has grants to cover some or (in a few cases) all of the costs of lodging and travel for a limited number of volunteers. Grants will be awarded to applicants that can commit to volunteering for five days. Grant applications will be judged on the basis of participation and leadership in the C++ community.
are active in the C++ community on-line, in your local user group, or at C++ events,
are actively supporting C++ on StackOverflow or GitHub,
have worked on an Open Source C++ project like an Open Source library, CppReference, C++VAP,