Video & On-Demand

CppChat[22] C++Now 2017 [2017-05-19]

CppChat:

cpp_now.jpeg

CppChat[22]: C++Now 2017

with Alex Zaitsev, Anastasia Kazakova, Jason Turner, Jens Weller, Jonathan Müller, Kjell Hedstrom, Malte Skarupke, Matt Calabrese, Morris Hafner, Odin Holms, Peter Bindels, Robin Kuzmin, Vittorio Romeo, and Jon Kalb.

 

From the chat:

This episode was recorded at C++Now. Conference attendees talk about their C++Now experiences and favorite sessions. Guests include some of the speakers, volunteers, sponsors, and staff.

CppCon 2016: Want fast C++? Know your hardware!--Timur Doumler

Have you registered for CppCon 2017 in September? Don’t delay – Registration is open now.

While we wait for this year’s event, we’re featuring videos of some of the 100+ talks from CppCon 2016 for you to enjoy. Here is today’s feature:

Want fast C++? Know your hardware!

by Timur Doumler

(watch on YouTube) (watch on Channel 9)

Summary of the talk:

As C++ evolves, it provides us with better and more powerful tools for optimal performance. But often, knowing the language very well is not enough. It is just as important to know your hardware. Modern computer architectures have many properties that can impact the performance of C++ code, such as cache locality, cache associativity, true and false sharing between cores, memory alignment, the branch predictor, the instruction pipeline, denormals, and SIMD. In this talk, I will give an overview over these properties, using C++ code. I will present a series of code examples, highlighting different effects, and benchmark their performance on different machines with different compilers, sometimes with surprising results. The talk will draw a picture of what every C++ developer needs to know about hardware architecture, provide guidelines on how to write modern C++ code that is cache-friendly, pipeline-friendly, and well-vectorisable, and highlight what to look for when profiling it.

ACCU 2017 Videos Online

The recordings of the recent ACCU conference in Bristol are now online.

ACCU 2017 Conference Channel

by the ACCU conference

About the conference:

All the speaker made the this years conference to one of the most successful ones. Below are the speakers listed with C++ sessions.

Day One with Louis Dionne, Anastasia Kazakova, Roger Orr, Marshall Clow, Frank Birbacher, Timur Doumler, Kevlin Henney

Day Two with Hubert Matthews, Arne Metz, Guy Davidson, Peter Sommerlad, John Lakos

Day Three with Atho Truu, Daniel Garcia, Petr Kudriavtsev, Steven Simpson, Sergei Sadovnikov, Dominic Robinson, Bjorn Fahller

Day Four with Vittorio Romeo, Phil Nash, Niall Douglas, Anthony Williams, Odin Holmes

Herb Sutter's closing keynote about C++ meta classes will be released later.

 

 

 

CppCon 2016: Using Types Effectively--Ben Deane

Have you registered for CppCon 2017 in September? Don’t delay – Registration is open now.

While we wait for this year’s event, we’re featuring videos of some of the 100+ talks from CppCon 2016 for you to enjoy. Here is today’s feature:

Using Types Effectively

by Ben Deane

(watch on YouTube) (watch on Channel 9)

Summary of the talk:

C++ has a pretty good type system, and modern C++ gives us a greater ability than ever before to use that type system for good: to make APIs easier to use and harder to misuse, to make our datatypes more closely express our intent, and generally to make code safer, more obvious in function and perhaps even faster.

This is an interactive session - incorporating games played between presenter and audience, even - taking a look at choices available to us as datatype and API designers, and examining how a little knowledge about the algebra of algebraic datatypes can help. We'll see why std::optional and (hopefully soon) std::variant will quickly become an essential part of everyone's toolbox, and also explore how types can be used to express not just the structure of data, but also the behaviour of objects and functions.

CppCon 2016: The strange details of std::string at Facebook--Nicholas Ormrod

Have you registered for CppCon 2017 in September? Don’t delay – Registration is open now.

While we wait for this year’s event, we’re featuring videos of some of the 100+ talks from CppCon 2016 for you to enjoy. Here is today’s feature:

The strange details of std::string at Facebook

by Nicholas Ormrod

(watch on YouTube) (watch on Channel 9)

Summary of the talk:

Standard strings are slowing you down. Strings are everywhere. Changing the performance of std::string has a measurable impact on the speed of real-world C++ programs. But how can you make strings better? In this talk, we'll explore how Facebook optimizes strings, especially with our open-source std::string replacement, fbstring. We'll dive into implementation tradeoffs, especially the storage of data in the struct; examine which standard rules can and cannot be flouted, such as copy-on-write semantics; and share some of the things we've learned along the way, like how hard it is to abolish the null-terminator. War stories will be provided.

CppCast Episode 101: Build 2017 with Kenny Kerr and Marian Luparu

Episode 101 of CppCast the only podcast for C++ developers by C++ developers. In this episode Rob travels to the Microsoft Build Developer's Conference to interview Kenny Kerr from the Windows team and Marian Luparu from the Visual Studio C++ team.

CppCast Episode 101: Build 2017 with Kenny Kerr and Marian Luparu

by Rob Irving and Jason Turner

About the interviewees:

Kenny Kerr is an engineer on the Windows team at Microsoft, an MSDN Magazine contributing editor, Pluralsight author, and creator of moderncpp.com (C++/WinRT). He writes at kennykerr.ca and you can find him on Twitter at @kennykerr.

Marian Luparu is currently leading the team responsible for making Visual Studio more productive for C++ developers.

CppCon 2016: Leak-Freedom in C++... By Default--Herb Sutter

Have you registered for CppCon 2017 in September? Don’t delay – Registration is open now.

While we wait for this year’s event, we’re featuring videos of some of the 100+ talks from CppCon 2016 for you to enjoy. Here is today’s feature:

Leak-Freedom in C++... By Default

by Herb Sutter

(watch on YouTube) (watch on Channel 9)

Summary of the talk:

Lifetime safety means writing code that, by construction, is guaranteed to eliminate two things: (a) use of null/dangling pointers (including pointerlike things such as references, iterators, views, and ranges), and (b) leaks (including the rare 1% case where we’re tempted to admit the possibility of an ownership cycle or need to support lock-free concurrent data structures).

Last year, my CppCon 2015 talk “Writing Good C++14… By Default” focused on (a), null/dangling, because it's the more difficult and usually more serious problem. I gave an overview of a new approach of using static analysis rules to eliminate use of null and dangling in C++. That work continues and we’re in the process of writing down the formal rules for the approach that I showed last year.

This year, the focus will be on (b), leaks: The talk aims to begin with a set of simple rules, the “5-minute talk” to demonstrate that a handful of rules can be taught broadly to programmers of all levels, and results in code that is clean and free of leak bugs by construction.

But, since we’ll still have 85 minutes left, we can use the time to spelunk through a series of “Appendix” code examples, in which we'll demonstrate "why and how" to apply those rules to a series of increasingly complex/difficult situations, and that are aimed at increasingly advanced and “clever” (note: not always a good thing) programs and programmers. We’ll address questions such as: How should we represent Pimpl types? How should we represent trees – what should the child and parent pointer types be, and (when) should they be unique and when shared? How should we deal with “intra-module” or “encapsulated” cycles when you control all the objects in the cycle, such as all the nodes within a Graph? And what about “inter-module” or “compositional” cycles when you don’t know in advance about all the objects that could be in the cycle, such as when combining libraries written by different people in a way that may or may not respect proper layering (notoriously, using callbacks can violate layering)? The answers focus on cases where we have solid guidance, and then move toward some more experimental approaches for potentially addressing the ~1% of cases that aren’t yet well covered by unique_ptr, shared_ptr, and weak_ptr.

CppCon 2016: The Evolution of C++ Past, Present and Future--Bjarne Stroustrup

Have you registered for CppCon 2017 in September? Don’t delay – Registration is open now.

While we wait for this year’s event, we’re featuring videos of some of the 100+ talks from CppCon 2016 for you to enjoy. Here is today’s feature:

The Evolution of C++ Past, Present and Future

by Bjarne Stroustrup

(watch on YouTube) (watch on Channel 9)

Summary of the talk:

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.

Learning Modern C++ from Scratch -- Giovanni Dicanio

There's a new video course published in the Pluralsight library, designed to take the learners from zero to being productive with basic elements of modern standard C++:

Learning Modern C++ from Scratch

by Giovanni Dicanio

From the blog post:

C++ is a language having a reputation of being hard to learn.

In this C++ course of mine published by Pluralsight, I did my best to prove the opposite: C++ can be learned in a simple, interesting, and fun way!

I used a variety of engaging visuals, metaphors and example demo code to try to teach modern, clear, good C++ from scratch, from the beginning, without any previous programming knowledge.

And, even if you already know C++, you may have fun watching this course as well.

 

CppCon 2016: Grill The Committee Panel

Have you registered for CppCon 2017 in September? Don’t delay – Registration is open now.

While we wait for this year’s event, we’re featuring videos of some of the 100+ talks from CppCon 2016 for you to enjoy. Here is today’s feature:

Grill The Committee Panel

(watch on YouTube) (watch on Channel 9)

Summary of the talk:

What would you like to know about the C++ standard?
Join us for a panel discussion with the leaders of the C++ standards committee where the audience asks the questions.