Video & On-Demand

CopperSpice: Modern C++ and CsString

New videos on the CopperSpice YouTube Channel:

Modern C++, from the beginning to the middle (Part 1) (Part 2) (Part 3)

by Barbara Geller and Ansel Sermersheim

About the videos:

A three part series on the fundamentals of modern C++, including move semantics, rvalues, and rvalue references.

CsString (Part 1) (Part 2)

by Barbara Geller and Ansel Sermersheim

About the videos:

A two part series on CsString, our new standalone Unicode aware BSD licensed string library for C++.

Please take a look and remember to subscribe!

CppCast Episode 123: Grace Hopper Conference with Gina Stephens

Episode 123 of CppCast the only podcast for C++ developers by C++ developers. In this episode Rob and Jason are joined by Gina Stephens to talk about the C++ Foundations presence at the Grace Hopper Conference, the St Louis C++ Meetup and a proposal for a new access specifier.

CppCast Episode 123: Grace Hopper Conference with Gina Stephens

by Rob Irving and Jason Turner

About the interviewee:

Gina Stephens is a software engineer with over 20 years' experience, 13 of those years leading development teams. Most of her experience has been with C++, in addition to Java, .NET and various scripting language. The breadth of her development experience includes DOD, FDA, DOI, Hospitality, and Finance.

Gina has a Bachelors in Computer Science from MS&T in Rolla, MO and a Masters in Computer Science from the University of Missouri – STL. She also founded and runs the STL C++ User Group.

Gina is also a Desert Storm Air Force veteran during which she worked on the B-52 bombers that were carpet-bombing Iraq. She is happily married with 2 sons, both of whom are serving in the US Navy.

CppCast Episode 122: Abseil with Titus Winters

Episode 122 of CppCast the only podcast for C++ developers by C++ developers. In this episode Rob and Jason are joined by Titus Winters from Google to talk about the Open Sourcing of Google's Abseil library.

CppCast Episode 122: Abseil with Titus Winters

by Rob Irving and Jason Turner

About the interviewee:

Titus Winters has spent the past 6 years working on Google's core C++ libraries. He's particularly interested in issues of large scale software engineer and codebase maintenance: how do we keep a codebase of over 100M lines of code consistent and flexible for the next decade? Along the way he has helped Google teams pioneer techniques to perform automated code transformations on a massive scale, and helps maintain the Google C++ Style Guide.

CppCast Episode 121: PLF List with Matt Bentley

Episode 121 of CppCast the only podcast for C++ developers by C++ developers. In this episode Rob and Jason are joined by Matt Bentley to talk about his work on plf::list and discuss some updates from the SG14 Working Group.

CppCast Episode 121: PLF List with Matt Bentley

by Rob Irving and Jason Turner

About the interviewee:

Matt Bentley was born in 1978 and never recovered from the experience. He started programming in 1986, completing a BSc Computer Science 1999, before spending three years working for a legal publishing firm, getting chronic fatigue syndrone, quitting, building a music studio, recovering, getting interested in programming again, building a game engine, and stumbling across some generalized solutions to some old problems.

CppCon 2017: What Has My Compiler Done for Me Lately? Unbolting the Compiler’s Lid—Matt Godbolt

The CppCon 2017 endnote is now available! What an excellent talk by Matt, of Godbolt fame.

What Has My Compiler Done for Me Lately? Unbolting the Compiler's Lid

by Matt Godbolt

From the article:

In 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.

CppCon 2017: Qt as a C++ Framework: History, Present State and Future—Lars Knoll

New video!

Qt as a C++ Framework: History, Present State and Future

by Lars Knoll

From the article:

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.

CppCon 2017: Meta: Thoughts on generative C++—Herb Sutter

You should see it!

Meta: Thoughts on generative C++

by Herb Sutter

From the article:

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.