Plenary Announced: Matt Godbolt

Matt Godbolt‘s closing plenary is entitled, What Has My Compiler Done for Me Lately? Unbolting the Compiler’s Lid The abstract gives a history of the project that has made Godbolt a verb:

Matt GodboltIn 2012, Matt and a colleague were arguing whether it was efficient to use the then-new-fangled range for. During the discussion a bash script was written to quickly compile C++ source and dump the assembly. Five years later and that script has grown into a website relied on by many to quickly see the code their compiler emits, to compare different compilers’ code generation and behaviour, to quickly prototype and share code, and investigate the effect of optimization flags.

In this talk Matt will not only show you how easy (and fun!) it is to understand the assembly code generated by your compiler, but also how important it can be. He’ll explain how he uses Compiler Explorer in his day job programming low-latency trading systems, and show some real-world examples. He’ll demystify assembly code and give you the tools to understand and appreciate how hard your compiler works for you.

He’ll also talk a little about how Compiler Explorer works behind the scenes, how it is maintained and deployed, and  share some stories about how it has changed over the years. By the end of this session you’ll be itching to take your favourite code snippets and start exploring what your compiler does with them.

If you’d like to thank Matt in person for Compiler Explorer, there is still time to register (but not much).

Plenary Announced: Lars Knoll

Lars Knoll

Lars Knoll‘s plenary is entitled, Qt as a C++ Framework: History, Present State and Future.

This address is a good overview for those that are new to Qt and offers a look into the future for those that are using Qt now. From the abstract:

Qt is one of the largest and most widely used C++ frameworks. It is fully cross-platform, covering all functionality required to develop advanced graphical applications. The talk will go through important parts of Qt’s history from it’s roots to what it is today. We will have a look into the relation between Qt and C++, some of the design philosophies driving the evolution of Qt. I’ll go through the current state of the frameworks, latest releases, ongoing development focus, and give an outlook into the future.

This is a valuable opportunity to get an insider’s understanding of one of the most successful frameworks in C++.

Plenary Announced: Herb Sutter

Herb SutterHerb Sutter‘s plenary is entitled, Meta: Thoughts on generative C++. As he tells us:

Two years ago, I started to focus on exploring ways that we might evolve the C++ language itself to make C++ programming both more powerful and simpler. The only way to accomplish both of those goals at the same time is by adding abstractions that let programmers directly express their intent—to elevate comments and documentation to testable code, and elevate coding patterns and idioms into compiler-checkable declarations. The work came up with several potential candidate features where judiciously adding some power to the language could simplify code dramatically, while staying true to C++’s core values of efficient abstraction, closeness to hardware, and the zero-overhead principle. 

The first two potential candidate features from that work to be further developed and proposed for ISO C++ are the <=> unified comparison operator (minor) and what I’ve provisionally called “metaclasses” as a way to generatively write C++ types (major). This talk is about the latter, and includes design motivation, current progress, and some live online compiler demos using the prototype Clang-based compiler built by Andrew Sutton and hosted at godbolt.org.

This presentation is an expansion of the Thoughts on Metaclasses session, presented at ACCU this past April. Due to the overwhelming positive response the presentation generated, Herb will expand the scope and focus on the implications of Metaclasses that it will bring to future progress of the C++ language. The concept is a groundbreaking change in C++ development and is a session not to be missed.

Calls for Lightning Talks and Open Content

Almost here

Less than 30 days out from CppCon 2017, regular session and poster submissions are closed, both of the field trip tours are sold out, and most of our official hotel blocks are either closed or sold out.

But, even now, there are still conference opportunities. There is still over two weeks left of regular registration, we are still accepting class registrations, we have rooms available in some of our official hotel blocks, and it isn’t too late to attend sessions for free by signing up as a volunteer.

To day we are also opening up two ways to present at the conference.

Call for Lightning Talks

Lightning talks are fast paced, short presentations often sprinkled with humor and intrigue. The popular 5-minute talks present topics that are interesting to C++ programmers. This opportunity is open to speakers at all experience levels.

Check out some of our previous lightning talks on our YouTube channel. They cover a single topic, start with the good stuff, and end making a point. Anyone can do one, but be sure to practice because 5 minutes goes by incredibly fast. Here is your opportunity to share that one technique you wish everyone knew, that one little known fact that should be well known, that one tool that makes your life easier every day, or a collection of little things that you can fit into 5 minutes.

Anyone can submit a lightning talk, you don’t need to be a conference speaker (or even a registered attendee). To submit, visit our Lightning Talks Submissions page.

Call for Open Content

As we do every year, we offer Open Content session in the early morning, over lunch, and in the evening.

Audience8

Open Content is just that, open! Attendees and regular program speakers alike can propose sessions on anything that interests them. These might feature a single facilitator leading a room through an exercise, activity or demo, a panel of 3-5 people taking questions from the room, a “hackathon” on a specific project, or an open conversation among the whole room. The projector is available for slides or public note taking.

Open Content is designed for flexibility so that a “Birds of a Feather” talk may be proposed even after the conference has begun. A speaker who gets a lot of post-talk questions may agree to host a Q&A session in the Open Content time. An attendee inspired by a session may host a session to explore a topic further or start on a group implementation of something.

Anyone can submit an open content session, you don’t need to be a conference speaker (or even a registered attendee). To submit, visit our Open Content Submissions page.

These sessions will be open in another way too – Open Content does not require conference registration. That’s right, everyone who is in the area is welcome to come and join us for all the early morning/lunch/evening sessions, including proposing or leading a session. This is part of our goal to be an inclusive conference for the entire C++ community.

Free Friday

All CppCon 2017 events on Friday, September 29th, do not require conference registration. That’s right, just like all our evening sessions, all Friday sessions are open to the public without a conference registration. This includes an address by one of our most highly anticipated plenary speakers, Matt Godbolt, and the Sara Chipps lecture and workshop.

Welcoming Everyone

CppCon has always valued diversity and tried to make everyone feel welcome. To that end, we’ve decided to strengthen the wording of our Code of Conduct, to make sure that everyone knows that they will be actively supported and welcome. To leverage the best practices and experience of others, we’ve adopted the current PyCon code of conduct as-is, modulo editorial diffs to rename it for CppCon. Thanks very much to the PyCon organizers for open-sourcing and sharing their work!

Happily, as far as we know there haven’t been any incidents at CppCon so far, and we’d like to do what we can to keep it that way and make everyone feel as welcome as possible. That especially includes kids – this year we are looking forward very much to the talk by Sara J. Chipps on her success inspiring about 4,000 kids aged 8-12 to learn to write C++, and to the related Jewelbots Build Workshop “for kids and grownups” at CppCon 2017! We want there to continue to be inclusive sessions and events like this at CppCon in the future, and we welcome your suggestions for ones we could include in our planning; if you have suggestions, please send email to plan@cppcon.org.

Call for Volunteers

If you would like to attend CppCon 2017, 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.

Ambience_and_snacks_6

We are looking for volunteers to help run the conference. We need people to help assemble registration packets and badges, register attendees, assist speakers with Audio/Video, 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 are interested or would like more information, please email volunteers@cppcon.org.

Fun and Fashion: Kids Learning about C++

Sara J. ChippsSara J. Chipps shipped a product last November that has already inspired about 4000 kids (aged 8-12) to learn to write C++. Want to know more? So do we, so we’ve invited her to present and give a workshop on Jewelbots at CppCon.

Her talk is Building for the Best of Us: Design and Development with Kids in Mind:

Building an API easy enough for kids to understand (in C++) is a challenge. Every design decision, from the circuit board to the plastic can effect the results. We’ll talk about product design, manufacturing, firmware, software, and Arduino AP as we cover the Jewelbots timeline from Kickstarter to shipping to distribution. Additionally, hear from the two girls who are the top Jewelbots from the Bellevue area! You’ll learn what they have built and how they view the future of C++.

Following her talk, Sara will host a Jewelbots Build Workshop for kids and grownups. This workshop is open to anyone to come and watch (even if you aren’t registered for the conference), but if you want to reserve a Jewelbot to work on during the workshop (and who wouldn’t?), you’ll need to reserve it here: https://cppcon2017.eventbrite.com/

Young women with Jewelbots

CppCon 2017 Call for Submissions

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 of six tracks of one hour sessions.

Have you learned something interesting about C++, maybe a new technique possible in C++14/17? 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 2017.

The submissions deadline is June 11 with decisions sent by July 12.

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 this summer. The deadline for these is the conference itself.

Call for Class Proposals

The conference is asking for instructors to submit proposals for classes to be taught in conjunction with next September’s CppCon 2017.

If you are interested in teaching such a class, please contact us at info@cppcon.org and we’ll send you an instructors’ prospectus and address any questions that you might have. The deadline for submitting proposals is November 18th, 2016.