2023 Keynote, Bret Brown and Bill Hoffman: A First Step Toward Standard C++ Dependency Management

We’ve previously announced keynotes by Bjarne Stroustrup on C++ Safety, and Andrei Alexandrescu on AI and C++. We’re now pleased to announce the third of our five conference keynotes: Bret Brown and Bill Hoffman will be delivering a talk on an important topic for all C++ projects… Dependency Management.

From their talk description:

A First Step Toward Standard C++ Dependency Management

Prebuilt libraries have existed for decades… they even predate C++! After all these years, techniques to use prebuilt libraries are still ad hoc and difficult to maintain. A root cause of this variety of techniques is the variety of things that are C++ libraries: header-only libraries, statically-linked archives, dynamically-linked binaries, and so on. The consuming projects need to build against these libraries in consistent ways or risk unproductive workflows – and potentially, even catastrophic failure in production environments. This lack of convergence creates enormous interoperability problems across broad portions of the worldwide programming ecosystem, not just the C++ parts of it.

This talk will explore the complexities of defining what is a “C++ library.” It will then present the joint work of Kitware, Bloomberg, and others toward a preliminary design for creating initial standards for dependency management in C++ – metadata files to describe prebuilt libraries. A roadmap for maturing the design will also be shared, including proposing a standard definition for C++ libraries, building on previous proposals such as P1313: Package Specification.

This talk is intended for anyone who produces, maintains, or consumes C++ libraries. Special knowledge of C++ tooling, build systems, or package managers is not required.

This talk is also the keynote talk for the Tooling Track.

Registration is now open so don’t miss out on CppCon 2023 this October 2-6. Register today!

 

CppCon 2023 Program Announced

The Main Program schedule for CppCon 2023 is now live! This year, CppCon is back to an all-onsite format for the conference program.

We’ll have over eighty breakout sessions delivered onsite by the best C++ presenters in the industry, many returning from previous years as well as some exciting new voices. We’ve already announced our onsite Opening Keynote on Safe C++ and one other plenary talk on AI and C++, and will be announcing our other three headline talks here in coming days.

This year’s Main Program features a broad and deep general program. Within the program are six dedicated topic tracks: The Back to Basics Track, the Embedded Track, the Software Design Track, the Scientific Computing Track and Tooling Track are back, and we have a new Robotics Track! These “tracks” are to help find talks in specific areas, but as always, there are lots of talks not assigned to a specific track covering a wide variety of important topics.

In addition to the Main Program, we’ll have at least two panels (one on Safety and Security for C++, and our annual Committee Fireside Chat), multiple sessions of lightning talks, Open Content talks, BOFs, exhibitors, social events, and pre/post-conference classes that attendees have enjoyed in past years.

Most of the program is published, but we are still working on a few surprises, so keep checking back to see any new additions or time slot adjustments.

We’d like to thank the Program Committee, our speakers, and the many professionals who proposed talks which we, unfortunately, just couldn’t squeeze in this year. Thank you for your hard work and enthusiastic support for this year’s program!

We hope to see you all in less than a month—so register now.

CppCon 2023 program schedule is almost ready!

We’re sorry that posting the 2023 program schedule has taken two weeks longer than our original timeline, but it’s for positive reasons…

This year, we received the second-highest number of talk submissions ever, second only to 2019 pre-pandemic. Thank you to all the speakers for your support!

Sadly, we had to reject the most and highest-quality submissions ever because we have fewer physical meeting rooms available than in 2019. Together with the first point, this means that the set of talks we had to reject was the highest-quality “reject list” ever in CppCon’s history. Rejecting great talks we want to have is not a fun thing for anyone, and we appreciate all the speakers who didn’t make it in this year even though they submitted very, very strong talks we really wanted to have. Even if next year’s CppCon 2024 were made up of just the top talks held over from not fitting into our program space this year, next year would be one of our strongest programs ever; the talks that didn’t fit this year were that good, and were edged out only because the ones that did fit were so amazing.

The program committee generated the highest number of talk submission reviews ever. This year, 97 people actively served on the program committee, and generated more reviews than any year in CppCon’s history. We really appreciate their thoughtful evaluations of all the submitted talk proposals. Thank you to all the program committee members for your hard work this summer!

We have the highest number of chaired tracks ever. The chaired topical tracks this year are: Back to Basics; Embedded Systems; Scientific Computing; Robotics; Software Design; and Tooling. Thank you to all the chairs for stepping up to organize these topics on our 2023 program!

So there’s been more work than usual, but we are really excited about the CppCon 2023 program that will be posted in just a few days. We think it’s CppCon’s strongest program ever. And in addition to the program sessions, we’ve also started to announce this year’s highly-topical keynotes including Bjarne Stroustrup on “Delivering Safe C++” and Andrei Alexandrescu on “Exploring Generative AI for C++,” with three more headline talks still to be announced.

We look forward to seeing many of you there in person in early October! If you haven’t registered already, you can register here.

2023 Keynote, Andrei Alexandrescu: Robots Are after Your Job (or at Least the Boring Parts of It): Exploring Generative AI for C++

We are pleased to announce that Andrei Alexandrescu, one of the most popular presenters to ever appear at CppCon, will be appearing in person, in Aurora as a CppCon 2023 keynote presenter.

From his talk description:

Robots Are After Your Job (or at Least the Boring Parts of It): Exploring Generative AI for C++

Almost a year since the launch of ChatGPT – considered by many as the first truly compelling code generator that translates free-form human language into code – the C++ community continues to grapple with the implications. Reactions range from indifference or skepticism to genuine concern about the future of human programmers.

Meeting in person

Although some advanced C++ techniques are already accessible to tools like ChatGPT, certain fundamental aspects remain outside the reach of current and possibly next-generation generative AI tools. This disparity raises pivotal questions: Which parts of the intricate C++ ecosystem can we confidently delegate to generative AI? What uniquely human skills must we retain and refine?

We’ll probe the potential and limits of contemporary AI, taking a novel look at the age-old binary search algorithm. Although this algorithm has long been held up as a paragon of efficiency, we challenge that notion. What would ChatGPT have to say about it, and how might it partner with us to refine this cornerstone of algorithmic logic? The conversation opens a window into a future where developers become the “one percenters” of programming—focusing solely on the most cerebral and high-level challenges, while AI takes care of the everyday tasks. Join us to explore this fascinating paradigm shift and reflect on what it means for your own work in and with C++.

Registration Desk

Don’t miss this very timely presentation by one of the best.

Registration is now open so don’t miss out on CppCon 2023 this October 2-6. Register today!

 

 

 

 

CppCon 2023 Diversity & Attendance Support Ticket program

Again this year, CppCon is running a Diversity & Attendance Support Ticket program. These free tickets are for people who would not be able to attend otherwise. This program is limited to conference tickets and doesn’t include support for transportation or lodging. This is an open program, but reasons to apply may include financial assistance, that you are part of an underrepresented group in tech, and others.

In order to apply for this program, please fill in the application form here. The application deadline is September 9, 2023. Decisions will be sent by September 12.

We look forward to seeing many of you again this year at CppCon 2023!

Opening 2023 Keynote, Bjarne Stroustrup: Delivering Safe C++

Meeting in personCppCon 2023 will kick off on Monday, October 2 with Bjarne Stroustrup delivering the traditional opening keynote live in person in Aurora.

Bjarne’s annual opening keynote for CppCon is one of the most anticipated and most watched talks in C++. His talks are always among the most viewed presentations on the CppCon YouTube Channel.

From his talk description:

Delivering Safe C++

Type safety was one of the key initial C++ design ideals. We have evolved C++ to the point where we can write C++ with no violations of the type system, no resource leaks, no memory corruption, no garbage collector, no limitation of expressiveness or performance degradation compared to well-written modern C++.

We face three major challenges: To define what “safe” means in the context of various C++ uses, to guarantee such safety where guarantees are needed, and to get developers to write such verified safe code.

I outline an approach based on safety profiles to address these challenges, describe an approach to eliminate dangling pointers, and suggest how to eliminate all dangling pointers and all range errors. My aim for key applications is verified type-and-resource-safe C++. An emphasis is on minimizing costly run-time checks through the use of abstractions. I see the current emphasis on safety as an opportunity to complete one aspect of C++’s fundamental aims in real-world code.

Every year, Bjarne Stroustrup gives an important C++ talk in his CppCon opening keynote. Be at CppCon again this year as Bjarne Stroustrup flies us above this complex landscape of issues and shines a spotlight on the most important things to know, and to think about, in C++ in 2023. This year we aim to leave extra extended time for real-time questions and answers with the live audience. Come to the talk, bring your questions, and don’t miss out!

Registration DeskRegistration is now open so don’t miss out on CppCon 2023 this October 2-6. Register today!

 

 

 

 

CppCon 2023 Ombudsperson, and Code of Conduct handling team

CppCon has always been committed to be a welcoming conference for the entire C++ community, and having a Code of Conduct (CoC) and the best possible CoC report handling team is an essential part of making the conference feel welcoming and inclusive for everyone. The leadership of CppCon and of the Standard C++ Foundation want to thank all of the community volunteers who have stepped up to be on the CppCon CoC team over the years: Thank you! We appreciate your hard work that has made our conference better.

As times change, we want to make sure we adapt to keep our events welcoming and safe. Tech conferences (including ours) have tended to use community volunteers to handle CoC reports, but in recent years we have seen this increasingly create stress on those valuable community members when new and difficult situations come up. The stress comes in two main ways: First, community volunteers are tech experts, not professional investigators and mediators, so they often end up unfairly stressed from doing work they’re not trained for. Second, community volunteers often know many attendees personally, so they have to work harder to avoid bias, and any decision they participate in is more likely to dissatisfy someone they know which could create personal tensions. For the past year, we have been exploring ways to reduce the stress on our community volunteers and let them retire from CoC duties so they can fully enjoy the conference with all the rest of us technical attendees.

We are pleased to announce two new changes, effective today and for CppCon 2023:

  • We have hired and appointed a new CoC team composed of qualified outside independent professionals. They bring many years of experience, and are trained and certified in investigation, conflict resolution, and mediation. Because they are from outside the C++ community, they are not distracted by the technical program and are free of bias about people in our community. As always, the CoC team continues to be empowered to apply the CoC policy and the safety policy that help all of us enjoy a safe and productive time at the conference.
  • To provide support beyond direct CoC issues, CppCon 2023 will have an Ombudsperson with a physical office on-site at the conference. The Ombudsperson, who is also the CoC team chair, will be available to provide additional personal and emotional support for attendees in addition to taking actual CoC issue reports. Having an Ombudsperson in addition to a CoC team will directly support our safety policy’s first priority, that our attendees not only be safe, but also feel safe and have support for their mental and emotional well-being.

The new 2023 CppCon Ombudsperson and CoC team are:

CppCon role Other activities
Colleen Passard Ombudsperson, CoC chair colleenpassard.com

Ombudsperson and Mediator for Linux Foundation events

Jacqueline McCauley CoC team boulderchamber.com/about-us/boulder-chamber-staff/

VP Finance & HR at Boulder CO Chamber of Commerce

Gillian Faith CoC team nextlevelhrcc.com/about/

Founder, Next Level Coaching & Consulting

 

We expect to add additional independent professionals to the CoC team in the coming months.

Additionally, looking beyond just this year, we are supporting an industry initiative now in the formative stages toward creating a neutral independent body to help with CoC matters across the tech industry. Its aims would include setting high-quality industry standards for Codes of Conduct, providing formal compliance certification that an organization’s CoC meets the standards, and providing independent professionals like the ones we are now using above as CoC handling resources to many tech conferences and other organizations — not just to C++ or even programming language conferences, but to many events and organizations, from meetups and conferences to online associations and open source projects. We hope these efforts will succeed in creating such a new independent industry body, and we applaud and support the people who are working hard on the behind-the-scenes heavy lifting needed to make it become a reality. As those efforts bear fruit and such a new body becomes operational, at CppCon we intend to: update our CppCon CoC (which is currently a fork of the PyCon CoC) as needed to be certified for compliance with the new body’s CoC standards; continue using independent professionals for CppCon CoC handling along with embracing other best practices the new body may recommend; and encourage other tech conferences to do the same.

Once again, we thank all our past CoC team volunteer members for their service to this point! We appreciate their good work very much. Now we look forward to letting those volunteers focus on enjoying our conference’s technical content along with all of us during October 1-6 at CppCon 2023! We look forward to seeing many of you there again in person this year.

Announcing CppCon Academy 2023 Classes

class attendeesRegistration is open for exciting CppCon Academy classes that will be held in the days before or after CppCon 2023.

Five classes are online and the rest will be offered to onsite attendees at the Gaylord Rockies in Aurora.

Read about all the offered classes on the CppCon Academy 2023 page. This year we are offering classes that range from those that are focused on updating you to the latest versions of C++, to those focusing on better code, testing, or design skills. This year we are offering classes on concurrency, one on embedded programming, and one on performance and efficiency (well, okay, they are all about performance and efficiency ultimately).

class instructor with studentsOnline classes will be held either on the last three business days of the week before the conference or the first three business days of the week after the conference.

Onsite classes are held on the weekend days immediately before and after the conference.

class instructorMost of the classes feature two days (onsite) or three days (online) of class instruction. All classes feature hands-on opportunities to improve your programming skills.

CppCon instructors are selected from the best C++ instructors in the world. They feature rare combinations of deep technical knowledge, extensive development experience, and the ability to explain things in an approachable manner.

Register now!

CppCon Winter 2022-2023 Code of Conduct Transparency Report

In late December 2022 and January 2023, the CppCon Code of Conduct (CoC) team and the Standard C++ Foundation board learned of serious allegations against a member of the CppCon organization. The CoC team and Foundation take all allegations seriously and prioritize the physical and psychological safety of our attendees. The accused person agreed to voluntarily recuse themselves from CppCon matters pending investigation. Because the members of the CoC team and of the Foundation board all have personal or professional relationships with the accused, they recused themselves from participating in an investigation into the allegations. CppCon hired an independent attorney investigator with over 26 years’ experience to perform an impartial and thorough investigation of the allegations, with no constraints on whom to interview or directions to pursue. That investigation took three months and produced a 62-page report which concluded that “a preponderance of the evidence did not support the allegations against [the accused].” Because the report gave no basis to continue to restrict or take action against the accused, the CoC team members and the Foundation board members unanimously agreed that the accused should have all restrictions removed.

The CoC team and Foundation will consider sharing additional details regarding this matter confidentially with other conference and organization Code of Conduct teams on a case by case basis as needs may arise. Such teams can request additional information by contacting admin@isocpp.org.

CppCon 2022 Code of Conduct Transparency Report

The following summary is intended to help the community understand what kind of Code of Conduct (CoC) incidents we received reports about in the year since previous conference, and how the CppCon CoC team and organisers responded.

Overview

Again at CppCon 2022, staff and volunteers participated in CoC training prior to the conference.

The Code of Conduct team for CppCon 2022 was led by Guy Davidson and consisted of Sy Brand, Inbal Levi and Gabriel Dos Reis. Inbal and Gabriel were on-site, while Guy and Sy were off-site, in the UTC+1 time zone. (CppCon 2022 was a hybrid conference, with on-site and on-line talks and participants.)

The code of conduct for CppCon 2022 was as published here, using the August 10th 2022 commit.

Summary of reports at CppCon

At CppCon 2022, one incident was brought to the attention of the CoC team:

(1) An organiser was concerned that a speaker’s talk slides promoted favouring one side in an active war. There was no formal CoC report, but both the organiser and speaker notified the CoC team of the concern.

  • Within 48 hours the CoC team replied that the specific statement violated no provision of the Code of Conduct. In future, the CoC team, conference organisers, and Foundation directors will consider whether to provide any suggestions or policy for speakers about non-technical content on slides.

Other reports regarding past/other conferences

Around the same time as this year’s conference, there were also one report regarding a past CppCon conference, and two reports regarding non-CppCon conferences:

(2) A past speaker complained that at a previous CppCon conference an organiser had approached others, including women, in a way they felt was sexually suggestive and that discriminated against non-speaker men.

  • The CoC team had witnessed several occasions of the interaction being complained about, and decided that whether it was suggestive or discriminatory was a matter of opinion. However, the organiser was informed of this complaint so that they could be aware of the additional perspective.

(3) A past speaker complained about the conduct of a CppCon organiser at another non-CppCon conference.

  • Even though the complaint was about events outside CppCon and so not under the CppCon CoC, because it could call into question a CppCon organiser’s judgment, the CppCon CoC team and (different) CppCon organisers reached out to the CoC team of the other conference. The other conference said they had investigated the same complaint regarding their conference and had decided to take no action.

(4) A past speaker complained about the aggressive conduct of a member of the community at another non-CppCon conference.

  • In our investigation, the CppCon CoC team reached out to the CoC team of the other conference. They were able to confirm the incident. We noted their response; since the behaviour took place outside of CppCon, there is no action to answer here. However, we have recorded the reports and decided to monitor the behaviour of this community member at CppCon in the future.

Restriction enforcement

Finally, before CppCon 2022 an incident arose that was not a CoC report but was enforcing a preexisting restriction:

(5) After the call for submissions for CppCon 2022, a person who is restricted and not permitted to work in the conference nevertheless responded to a prospective speaker who inquired for help with their talk submission.

  • The organisers realised that they had overlooked removing the restricted person from the speaker help request email list. The organisers removed the restricted person from that list; they checked all the email lists again to ensure the restricted person was removed from all of them; they reminded the restricted person that the restricted person was not allowed to participate any conference roles; they informed the prospective speaker that the restricted person did not represent the conference and arranged for someone actually from the conference to assist the speaker; and they informed the CoC team about this enforcement of the existing restrictions.