Video & On-Demand

CppCon 2020 Get Off My Thread: Techniques for Moving Work to Background Threads--Anthony Williams

Registration is now open for CppCon 2021, which starts on October 24 and will be held both in person and online. To whet your appetite for this year’s conference, we’re posting videos of some of the top-rated talks from our most recent in-person conference in 2019 and our online conference in 2020. Here’s another CppCon talk video we hope you will enjoy – and why not register today for CppCon 2021 to attend in person, online, or both!

Get Off My Thread: Techniques for Moving Work to Background Threads

by Anthony Williams

Summary of the talk:

If you're writing a GUI application and you want the interface to feel "responsive" to the user then you need the code that response to UI events to be short and fast. Similarly, if you are handling network I/O you may not want the processing of one request to prevent the system receiving further input.

If the work to be done in response to an event is complex and time consuming then you can maintain the "responsiveness" of the system by passing the work off to a background thread.

This talk will look at the ways of doing this, including managing ongoing work, providing progress updates, and cancelling work if it is no longer needed.

CppCon 2019 Behind the Scenes of a C++ Build System--Jussi Pakkanen

Registration is now open for CppCon 2021, which starts on October 24 and will be held both in person and online. To whet your appetite for this year’s conference, we’re posting videos of some of the top-rated talks from our most recent in-person conference in 2019 and our online conference in 2020. Here’s another CppCon talk video we hope you will enjoy – and why not register today for CppCon 2021 to attend in person, online, or both!

Behind the Scenes of a C++ Build System

by Jussi Pakkanen

Summary of the talk:

Everyone has an opinion on what build systems should do but there are surprisingly few who have an understanding of how they do it. In this talk we shall look behind the curtain and examine what does it actually take to create a modern build system and how they go about their business of turning source code into either compiler errors or executables.

On this journey we shall learn about the wonders of supporting 10+ different platforms and toolchains, dependency management, the awesomeness (both ironically and not) of shared libraries, compiler bugs and the interesting requirements on tools used at the lowest layers of a modern operating system. Using the increasingly popular Meson build system we shall examine real world design choices and tradeoffs and how they affect the final end user development experience. Performance optimization is also examined by looking at how you can efficiently scale program compilation both up to a compilation cluster and down to something like a Raspberry Pi.

Armed with all this knowledge we should finally be able to answer the question of why almost all build systems have suffered from poor usability and maybe, just maybe, find a proper solution for the build and dependency problem.

CppCon 2020 Effective Remote C++ Development with Codespaces--Nick Uhlenhuth

Registration is now open for CppCon 2021, which starts on October 24 and will be held both in person and online. To whet your appetite for this year’s conference, we’re posting videos of some of the top-rated talks from our most recent in-person conference in 2019 and our online conference in 2020. Here’s another CppCon talk video we hope you will enjoy – and why not register today for CppCon 2021 to attend in person, online, or both!

Effective Remote C++ Development with Codespaces

by Nick Uhlenhuth

Summary of the talk:

The rise of remote work and the growth of team sizes present a challenge for C++ developers. Many C++ projects have complex hardware and software requirements, making onboarding of new team members and productive coding from home harder than they need to be. We need tools to ease configuration of your team's development environments and grant them access to the processing power they need from wherever they are in the world.

This presentation will show how Codespaces can use the power and flexibility of the cloud to address these issues. Codespaces give you the ability to quickly create a managed online development environment specific to your project that you can access from anywhere. We'll look at the problems which hit C++ developers particularly hard, like long build times and dependency management. Finally, we'll show the tool in action to give you a feel for how your teams could leverage it, and more broadly get you to think about what parts of your team's development process can be streamlined.

C++ on Sea on Video

In collaboration with Digital Medium, we've produced a video to showcase this year's event (ok, it was mostly Digital Medium, with some input from us)!

C++ on Sea on Video

Enjoy!

CopperSpice: char8_t

New video on the CopperSpice YouTube Channel:

char8_t

by Barbara Geller and Ansel Sermersheim

About the video:

In this video we look at the new definition of char8_t in C++20. Since most developers use strings in their code, this is a big deal. This change caused a cascade and a ripple effect. Our video explains the controversy, confusion, and how your code will be affected.

Please take a look and remember to subscribe!

JetBrains Brings C++Now to You--Anastasia Kazakova

Are you going to check it?

JetBrains Brings C++Now to You

by Anastasia Kazakova

From the article:

C++Now is generally regarded as the year’s most academic event in the C++ community. The conference hosts excellent talks from some of the most prominent experts in the community about cutting-edge C++ language features and advanced C++ skill...

CopperSpice: Static Things

New video on the CopperSpice YouTube Channel:

Static Things

by Barbara Geller and Ansel Sermersheim

About the video:

In this video we look at some of the places you can use the static keyword, and what it means in these different locations. Is it valid to put a static variable in a header file? Can you use a static constexpr method as a constant expression? Watch our video and find out some of the unusual side effects of static.

Please take a look and remember to subscribe!

Pure Virtual C++ 2021

Videos are in.

Pure Virtual C++ 2021

From the article:

Join us for a free, one-day conference for the entire C++ community! We will be streaming live on Learn TV and providing resources to contribute towards your C++ learnings and expertise.

CopperSpice: Class Completion

New video on the CopperSpice YouTube Channel:

Class Completion

by Barbara Geller and Ansel Sermersheim

About the video:

In this video we look at the fascinating topic of class completion. The idea of when a class is complete seems fairly simple, but a "class-complete context" is more complicated. We have some cool examples to illustrate the interesting places a class is considered complete.

Please take a look and remember to subscribe!