2023 Keynote, Herb Sutter: Cooperative C++ Evolution – Toward a Typescript for C++

We’ve previously announced keynotes by Bjarne Stroustrup on C++ Safety, Andrei Alexandrescu on AI and C++, Bret Brown and Bill Hoffman on Dependency Management, and Laura Savino on Other People’s Code.

We’re now pleased to announce the final of our five conference keynotes: Herb Sutter will be delivering a talk on the evolution of C++ that continues from his popular 2022 keynote “Can C++ be 10x simpler and safer?” last year.

From his talk description:

Cooperative C++ Evolution – Toward a Typescript for C++

C++23 is done. But C++ is not! In this talk I’ll give my personal perspectives on:

  • C++’s ongoing and very active evolution;
  • The latest progress updates on my cppfront experimental compiler, and what I’ve learned about modern ISO C++20 and C++23 in the experiment;
  • Why compatibility (and what kind, and how much) is essential; and
  • Why we should aim to keep bringing C++ forward successfully by cooperating and being part of C++’s ongoing true evolution via WG 21, even though that’s more work than pursuing a new fresh-but-competing evolutionary path.

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

2023 Keynote, Laura Savino: Coping With Other People’s Code

We’ve previously announced keynotes by Bjarne Stroustrup on C++ Safety, Andrei Alexandrescu on AI and C++, and Bret Brown and Bill Hoffman on Dependency Management.

Laura Savino

We’re now pleased to announce the fourth of our five conference keynotes: Laura Savino will be delivering a talk on something every software practitioner experiences – “other people’s code.” This talk encourages us to not to just consider it “someone else’s work” but also how to approach it with curiosity and a generous nature in order to learn and grow.

From her talk description:

Coping with Other People’s Code

Sometimes we’re fortunate enough to work with a small group of devs who share our coding values, and when we see their PRs come in, we nod along and say, “Yup, that’s what I would have done. Oh, nice, that one’s even better than my usual approach, I’d better tuck that idea away for next time.”

This perfect alignment is precious… and particularly elusive in C++. Most of us are living in codebases that are profitable, complex, and updated in ways with which we have legitimate beef. How can we keep a sense of curiosity, progress, and satisfaction amidst patterns we would never have chosen?

This presentation explores the often-overlooked social aspects of C++ development, offering both practical tools and light-hearted commiseration. We’ll draw from the field of behavior science to build strategies that address conflicting design patterns and the strong opinions that come with them.

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

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!