I enjoy watching conference talks about programming. There are some very good speakers who really make informative and enjoyable keynotes. Here are some of my favorites.
For C++, the "Going Native" conferences hosted by Microsoft and the "CppCon" conferences are great to watch.
To get a good introduction of the new features of C++11 and beyond, these talks are nice:
- Herb Sutter -- One C++
- Herb Sutter -- Back to the Basics!
- Herb Sutter -- Modern C++: What You Need to Know
People who learned C before C++ often use C within C++. To really get the most out of C++, it is best to leave out most of C. See this talk for what I mean:
Keeping the code simple and maintainable is the goal but hard to achieve. These talks have some guidelines to help:
- Titus Winters -- The Philosophy of Google's C++ Code
- Herb Sutter -- Writing Good C++14 ... By Default
- Bjarne Stroustup -- Make Simple Tasks Simple!
- Chandler Carruth -- The Care and Feeding of C++'s Dragons
- Google C++ Styleguide
For those interested in multi-core and multi-thread programming, I can recommend these:
- Herb Sutter -- Paying for Lunch: C++ in the ManyCore Age
- Herb Sutter -- Lock-Free Programming (or, Juggling Razor Blades) Part 1
- Herb Sutter -- atomic<weapons> Part 1
- Herb Sutter -- atomic<weapons> Part 2
- Herb Sutter -- The Free Lunch is Over
- Herb Sutter -- Welcome to the Jungle
And the more advanced topics:
- Scott Meyers -- Type Deduction and Why You Care
- Stephan T. Lavavej -- rand() Considered Harmful
- Sean Parent -- Inheritance Is The Base Class of Evil
- Andrei Alexandrescu -- Variadic Templates are Funadic
- Scott Meyers' talks
If you are interested in the optimization step during compilation:
- Chandler Carruth -- Optimizing the Emergent Structures of C++
- Chandler Carruth -- Tuning C++: Benchmarks, and CPUs, and Compilers! Oh My!
- Dave Beazley -- Discovering Python
- Raymond Hettinger -- Beyond PEP 8 -- Best practices for beautiful intelligible code