Plenary Announced: Titus Winters

We are pleased to announce our remaining plenary speaker for CppCon 2017: Titus Winters.

Titus WintersTitus leads Google’s C++ common libraries project and is one of four arbiters of Google’s official C++ style guidelines. For the last 6 years, Titus has been organizing, maintaining, and evolving the foundational components of Google’s C++ codebase using modern automation and tooling. Titus also designed much of Google’s internal C++ training curriculum, and reinvented Google’s C++ mentorship program. Prior to tackling these large scale C++ challenges, Titus worked on networking APIs in embedded systems.

As a member of the C++ standards committee, Titus focuses his efforts on the evolution of the standard library and is the incoming chair of the Library Evolution Working Group. In addition, Titus is an active speaker in the broader C++ industry and community, advocating for more scalable and maintainable coding guidelines and practices.

He has also been known to have deep thoughts about the card game Hanabi and the proper preparation of classic cocktails, although sometimes these run at cross purposes.

Titus’ presentation, C++ as a “Live at Head” Language,  will start with an exciting announcement; we’re keeping the details to ourselves until CppCon 2017.

CppCon 2017 Program Available

Bjarne StroustrupThe program for CppCon 2017 is now live!

We’ll have over 100 regular sessions delivered by the best C++ presenters in the industry, many returning from previous years as well as some exciting new voices. We’ll have six or seven concurrent tracks full of sessions containing C++ best practices and what you need to know about C++17. In addition, we’ll have panels, lightning talks, workshops, and some awesome headline speakers.

Speaking of headliners, it’s our pleasure to announce that Bjarne Stroustrup, the creator of C++ and Texas A&M University Distinguished Professor, will be returning this September to give the opening keynote, Learning and Teaching Modern C++:

We – attendees at CppCon – are all teachers. Some teach for a living; many occasionally teach a course or give a lecture; essentially all give advice about how to learn C++ or how to use C++. The communities we address are incredibly diverse.

What do we teach, and why? Who do we teach, and how? What is “modern C++”? How do we avoid pushing our own mistakes onto innocent learners?

Teaching C++ implies a view of what C++ is; there is no value-neutral teaching. What teaching tools and support do we need? Consider libraries, compiler support, and tools for learners.

Most of the program is published, but we are still working a few surprises, so keep checking back.

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!

2017 is going to be a great year for C++! Register here to join us.

David Schwartz Keynote and Jason Turner Plenary

David Schwartz, the Chief Cryptographer of the Ripple distributed payment system, will be giving a keynote this year at CppCon! David, also known as “JoelKatz”, is a respected voice in the crypto-currency community. Prior to working on Ripple, David developed secure messaging and cloud storage software for government and military applications. He’ll talk about Developing Blockchain Software:

This talk will explain what public blockchain systems like Bitcoin and Ripple are, the unique challenges of developing software for them, and how C++ helps to meet these challenges.

Security issues are paramount. Blockchain systems are open source, have large attack surfaces, and can cause significant financial damage
if they have exploitable defects. Performance and scalability are also major concerns.

C++ provides a unique balance that helps meet these challenges. The language’s design makes it possible to catch bugs at compile time, write modular code that can be tested, develop flexible data structures and manage resources. Yet, where performance is critical, it does not obscure what your code is making the computer actually do.

The primary purpose of the talk is to explain what blockchains are, increase understanding of the unusual challenges developers of blockchain software experience, and to demonstrate why C++ is a good choice to address them.

We’ll also have a plenary talk by Jason Turner! Jason Turner is an independent contractor with 16 years of development experience. For the past 6 years he’s been specializing in cross platform development, scripting of C++ libraries, and automated testing and code quality analysis. He’s the co-creator and maintainer of the embedded scripting language for C++, ChaiScript, and author and curator of the forkable coding standards document. He’s also one of the co-hosts of the CppCast pod cast. We’re all excited about Jason’s plenary, Rich Code For Tiny Machines: A Simple Commodore 64 Game In C++17:

The Commodore 64 was released in 1982 and is the best selling computer model of all time. At 34 years old, even the most simple embedded processor today outperforms it. Join me on an exploration of how C++17 techniques can be utilized to write expressive, high performance, high level code for simple computers. Together we will create a game for this aging system.

You’ll leave the talk with a better understanding of what your compiler is capable of and be able to apply these ideas to create better code on modern systems

There’s still time to register for CppCon 2016! Come join us in September!

— Bryce Adelstein Lelbach

Program Published, Bjarne Stroustrup Keynote and T-Shirt Design Contest

Bjarne StroustrupThe full program for CppCon 2016 has been published! This year we have over 100 regular sessions, in addition to panels, lightning talks and some awesome keynote and plenary speakers. We’ll have six concurrent tracks running for most of the conference.

Speaking of keynotes, it’s our pleasure to announce that Bjarne Stroustrup, the creator of C++, will be returning to CppCon to give the opening keynote, The Evolution of C++: Past, Present, and Future:

This is a philosophical talk. It deals with ideals, aims, and ways of approximating those. It deals with practical constraints and risks. It gives short examples. It presents a perspective of what drives the evolution of C++. What is C++ and what it must become over the next years for its success to continue? This involves both social and technical points. Towards the end, I discuss the direction of C++ future evolution, give some opinions, point to urgently needed new features, and discuss how to manage until they are part of the standard.

We also have a special treat for swag-loving attendees – we’ll be selecting the CppCon 2016 t-shirt design via an open contest. The t-shirts are included with Early Bird registration, and are also available as a separate purchase when registering online.

— Bryce Adelstein Lelbach

Program Preview: Concurrency, Modules and Finance

Speaking for the first time in the US, Anthony Williams, one of the original authors of Boost.Thread and the author of C++ Concurrency in Action will be joining us this year at CppCon! His talk, The Continuing Future of Concurrency in C++, will provide overview of the additions to the standard C++ concurrency libraries in the Technical Specifications for Concurrency and Parallelism and the C++14 and C++17 standards. These additions include: continuations, latches, barriers, atomic smart pointers, shared ownership mutexes, executors, concurrent queues, distributed counters, coroutines, parallel algorithms and more.

Hans Boehm, the chair of the C++ standards committee’s concurrency and parallelism study group (SG1), will also be speaking at CppCon this year. Hans may be best known for his work on the Boehm garbage collector, but he’s also one of the chief architects of the C++ memory model. Hans will be talking about Using Weakly Ordered Atomics Correctly.

We have plenty more content on concurrency in this year’s program, including:

Richard Smith, the project editor for the C++ standards committee and the code owner for the Clang project will be at CppCon 2016. In his talk, There and Back Again: An Incremental C++ Modules Design, Richard will share the Clang community’s experience with modules and discuss the direction of modules standardization efforts.

We have a few other talks on modules:

Finally, some talks of interest to the financial industry:

It’s not too late to register for CppCon 2016! Come join us in September!

— Bryce Adelstein Lelbach

Continue reading

Dan Saks Keynote and More Program Previews (Embedded, Coroutines and Accelerators)

Dan Saks

I’m very pleased to announce that Dan Saks will be one of our keynotes this year! Dan is one of the world’s leading experts on the C and C++ programming languages and their use in developing embedded systems.

He is the president of Saks & Associates, which offers training and consulting in C, C++ and embedded programming. Dan has previously served as secretary of the ANSI and ISO C++ Standards committees and as a member of the ANSI C Standards committee.

Dan used to write the “Programming Pointers” column for embedded.com. He has also written for numerous publications including The C/C++ Users Journal, The C++ Report, The Journal of C Language Translation, Software Development, Embedded Systems Design and Dr. Dobb’s Journal. With Thomas Plum, he wrote C++ Programming Guidelines, which won a 1992 Computer Language Magazine Productivity Award. He has presented at conferences such as Software Development and Embedded Systems. More recently, he contributed to the CERT Secure C Coding Standard and the CERT Secure C++ Coding Standard.

Dan’s keynote, extern “C”: Talking to C Programmers About C++, will be about migrating C code (and C programmers) to modern C++:

Most of us have heard this story. We’ve even told it ourselves…

C++ is nearly all of C, plus a whole lot more. Migrating code from C to C++ is pretty easy. Moreover, the migration itself can yield immediate benefits by exposing questionable type conversions that can be sources of latent bugs. After migration, the code performs as well in C++ as in the original C. And now that it’s C++, you have ready access to a wealth of advanced features you can (but don’t have to) use to implement enhancements.

Who wouldn’t want that? Legions of C programmers, apparently.

Despite the success of C++ in numerous application domains, C remains considerably more popular, especially in embedded, automotive, and aerospace applications. In many cases, projects resist C++ because their managers think the risks outweigh the benefits. In other cases, the resistance comes from programmers who persist in believing bad things about C++, even when those things aren’t true.

What can the C++ community do to overcome this resistance? Drawing on lessons from cognitive science, linguistics and psychology, and (of course) computer science, this talk offers suggestions about how to make the case for C++ more persuasive to C programmers.


We’ve got some program previews from three tracks today:

Here’s some of our content on embedded programming:

We’ve also got a lot of great talks about the upcoming Coroutines TS:

And finally, some talks about accelerator and GPU programming:

Come join us at CppCon in Bellevue this September – registration is still open!

— Bryce Adelstein Lelbach

Continue reading

Program Preview: Algorithms, Exceptions and Games

We have an exciting week ahead of us as we start announcing the CppCon 2016 program. The full program will be published next Sunday. Until then, we’ll broadcast a handful of talks each day. Make sure to check tomorrow’s preview – we’ll reveal one of the keynotes!

Let’s start off with some sessions about generic algorithms in the standard library:

We also have a few talks about exceptions to share:

The gaming community has always been a part of CppCon, and this year is no exception. Here’s some of the game development content that you’ll see at CppCon this year:

If you want to come join us for CppCon 2016, there’s still time to register!

— Bryce Adelstein Lelbach

Continue reading

Program Preview: Data Structures

We have a program! We received over 175 submissions for CppCon this year, and we accepted about 100 of them. In a few days, we’ll post the full six-track schedule. Until then, here’s a preview of some excellent talks about data structures:

If you want to come join us for CppCon 2016, there’s still time to register!

— Bryce Adelstein Lelbach

Continue reading