All content on the page is based on my experience. This list is, by no means, exhaustive and serves one purpose: to support my Mentees.
Ask me for details if you need more information.
Blogs
Collector
- Meeting C++ Blogroll by Jens Weller (weekly collection of blog posts)
- Awesome C++ Weekly (weekly overview of the most popular C++ news, articles and projects)
General
- Andreas Fertig’s blog by Andreas Fertig (Intermediate; author of C++ Insights)
- Bartosz Milewski’s Programming Cafe (Category Theorie, Haskell, Concurrency, C++; advanced)
- C++ Stories by Bartlomiej Filipek (Beginner/Intermediate)
- foonathan by Jonathan Müller (Intermediate/Advanced)
- Fluent C++ by Jonathan Boccara (Beginner/Intermediate)
- Modernes C++ by Rainer Grimm (Beginner/Intermediate)
- Simplify C++ by Arne Mertz (Beginner/Intermediate)
- Stuff mostly about C++ by Arthur O’Dwyer (Intermediate)
- Sutter’s Mill by Herb Sutter (Beginner/Intermediate)
Concurrency
- Just Software Solutions by Anthony Williams
- Preshing on Programming (his posts about the memory model are the best I know)
- Sutter’s Mill (33 articles on effective concurrency) by Herb Sutter
Coroutines
- Asymmetric Transfer by Lewis Baker (Very insightful but advanced)
- How C++ Coroutines work by Kirit (Motivating introduction)
Design Patterns
- Design Patterns by Alexander Shvets (Beginner)
Microsoft
- C++ Team Blog by Microsoft (Beginner/Intermediate)
Template Metaprogramming
- C++ Metaprogramming by Odin Holmes (Advanced)
Books
General
- The C++ Programming Language by Bjarne Stroustrup (comprehensive book about C++11; fourth edition)
Best Practices
Clean Code
- Beautiful C++: 30 Core Guidelines for Writing Clean, Safe, and Fast Code by J.Guy Davidson, and Kate Gregory (I was a proofreader)
- Clean C++20: Sustainable Software Development and Best Practices by Stephan Roth (clean code, C++ idioms, functional programming, testing, and design patterns)
- C++ Coding Standards: 101 Rules, Guidelines, and Best Practices by Herb Sutter and Andrei Alexandrescu (covers legacy C++)
- C++ Core Guidelines Explained: Best Practices for Modern C++ by Rainer Grimm
- Embracing Modern C++ Safely by , , , (Very detailed discussion of modern C++ features (C++11 and C++14))
Effective C++
- Effective C++: 55 Specific Ways to Improve your Programs and Design (the classic; covers C++98)
- More Effective C++: 32 New Ways to Improve your Programs and Design (the extension to the classic; covers C++98)
- Effective Modern C++: 42 Specific Ways to Improve your Programs and Design (I was a proofreader; covers C++11/14)
by Scott Meyers
Exceptional C++
- Exceptional C++: 47 Engineering Puzzles, Programming Problems, and Solutions (intermediate/advanced challenges; based on C++98)
- Exceptional C++ Style: 40 New Engineering Puzzles, Programming Problems, and Solutions (intermediate/advanced challenges; based on C++98)
by Herb Sutter
Legacy Code
- Working Effectively with Legacy Code by Robert C. Feathers (the classic)
- 60 terrible tips for a C++ developer by Andrey Karpov from PVS-Studio (a mini book; entertaining and educational)
Refactoring
- Refactoring by Marting Fowler
- Refactoring to Patterns by Joshua Kerievsky
Concurrency
- The Art of Multiprocessor Programming by Maurice Herlihy and Nir Shavit (advanced; the classic)
- C++ Concurrency in Action (second edition) by Anthony Williams (advanced, the reference book)
- Concurrency with Modern C++ by Rainer Grimm
Cookbooks
- Modern C++ Programming Cookbook (Second Edition) by Marius Bancila (More than 100 recipes from core language, library, best practices, testing, including C++20)
- C++20 STL Cookbook by Bill Weinman (Standard Template library based recipes, including C++20)
Embedded
- Real Time C++ by Christopher Kormanyos (Intermediate/Advanced)
Efficiency
- The Art of Writing Efficient Programs by Fedor G. Pikus (Many deep insights, but challenging to read)
- Discovering Modern C++ by Peter Gottschling (I’m biased because Peter is a good friend)
Functional Programming
- Functional Programming in C++ by Ivan Cukic (Functional Theory applied in modern C++)
Implementation
- Inside the C++ Object Model by Stanley B. Lippman
Introduction
- A Tour of C++ by Bjarne Stroustrup (an overview of C++ as defined by C++17)
- The Design and Evolution of C++ by Bjarne Stroustrup (the design goals and practical constraints of C++)
Libraries
Open Source C++ Libraries
- A list of open source C++ libraries on cppreference.com
ACE
- C++ Network Programming Volume 1 by Douglas C. Schmidt and Stephen D. Huston (applied design patterns an architectural pattern in ACE (ADAPTIVE Communication Environment) )
- C++ Network Programming Volume 2 by Douglas C. Schmidt and Stephen D. Huston (applied design patterns an architectural pattern in ACE)
Boost
- The Boost C++ Libraries by Boris Schäling (good overview)
Patterns
Anti-Patterns
- AntiPatterns: Refactoring Software, Architectures, and Projects in Crisis by William J. Brown, Raphael C. Malveau, Hays W. “”Skip”” McCormick, andThomas J. Mowbray
Design Patterns
- Design Patterns: Elements of Reusable Object-Oriented Software by Erich Gamma, Richard Helm, Ralph Johnson, and John Vlissides (the classic)
- Design-Patterns-GoF by Bart Vandewoestyne (C++ implementation of all examples; based on C++98)
- Head First Design Patterns (Second Edition) by Eric Freeman and Elisabeth Robson (best introduction)
Embedded
- Small Memory Software: Patterns for systems with limited memory by Charles Weir, and James Noble
C++
- Modern C++ Design by Andrei Alexandrescu (advanced; a seminal book for C++)
- Hands-On Design Patterns with C++ by Fedor G. Pikus (advanced)
Pattern-Oriented Software Architecture
- Pattern-Oriented Software Architecture, Volume 1 by Frank Buschmann, Regine Meunier, Hans Rohnert, Peter Sommerlad, and Michael Stal (the classic)
- Pattern-Oriented Software Architecture, Volume 2: Patterns for Concurrent and Networked Objects) by Douglas C. Schmidt, Michael Stal, Hans Rohnert, and Frank Buschmann (the classic)
- Pattern-Oriented Software Architecture, Volume 3: Patterns for Resource Management by Michael Kirchner, and Prashant Jain
- Pattern-Oriented Software Architecture, Volume 4: A Pattern Language for Distributed Programming by Frank Buschmann, Kevlin Henney, and Douglas C. Schmidt
- Pattern-Oriented Software Architecture, Volume 5: Patterns and Pattern Language by Frank Buschmann, Kevlin Henney, and Dougles C. Schmidt
Software Design
- C++ Software Design by Klaus Iglberger (I’m biased because Klaus is a friend)
Performance
- The Art of Writing Efficient Programs by Fedor G.Pikus (must have for an experienced, performance oriented C++ programmer)
Software Engineering
- Peopleware: Productive Projects and Teams by Tom DeMarco and Timothy Lister (the classic about software management)
- The Mythical Man-Month: Essays on Software Engineering by Fred Brooks (the classic about typical scheduling failures; a must read)
- The Deadline: A Novel About Project Management by Tom DeMarco
Standard Library
- The C++ Standard Library by Nicolai Josuttis (the reference book about the C++ standard library; based on C++11)
- The C++ Standard Library by Rainer Grimm (a comprehensive guide; based on C++20)
- C++20 STL Cookbook by Bill Weinmann (many value receipts around modern C++)
Theory
- From Mathematics to Generic Programming by Daniel Rose and Alexander A. Stepanov (the mathematical ideas behind the STL; one of my favorites)
- Elements of Programming by Alexander Stepanov and Paul McJones (more formal treatment of many ideas in From Mathematics to Generic Programming, pretty advanced to read)
Templates
- C++ Templates – The Complete Guide (2nd Edition) by David Vandevoorde, Nicolai M. Josuttis, and Douglas Gregor (the reference book)
Template Metaprogramming
- Advanced Metaprogramming in Classic C++ by (advanced, based on C++03)
- C++ Template Metaprogramming: Concepts, Tools, and Techniques from Boost and Beyond by Aleksey Gurtovoy, and David Abrahams (advanced, based on C++03)
- Generative Programming: Methods, Tools, and Applications by
- Modern C++ Design by Andrei Alexandrescu (advanced; a seminal book for C++, based on C++98)
- Template Metaprogramming with C++ by Marius Bancila (best introduction, based on C++20)
Tools
CMake
- Professional CMake: A Practical Guide by Craig Scott
- Modern CMake for C++ by Rafał Świdziński (should be your starting point)
Conferences
Conference | Time | Duration | Participants | Place | Videos | Characteristic |
C++ Russia | Spring and autumn | Three days | 200 – 300 | Moscow or St. Petersburg | C++ Russia |
|
emBO++ | Spring | Three days | 150 – 200 | Bochum |
|
|
Cpp Europe | Spring | Two days | 200 – 300 | Bucharest | Cpp Europe |
|
ACCU | April | Three days | 200 – 300 | Bristol | ACCU |
|
C++ on Sea | Summer | Three days | 200 – 300 | Folkestone (UK) |
|
|
C++ North | Summer | Three days | 200 – 300 | Toronto | C++ North |
|
CppCon | September | Five days | 1000++ | Aurora (near Denver) | CppCon |
|
Core C++ | June | Two days | 600 – 700 | Tel Aviv |
|
|
Meeting C++ | November | Three days | 600 – 800 | Berlin | Meeting C++ |
|
Documentation
General
C++ FAQ
C++ Idioms
- More C++ Idioms (Wikibook)
Guideliness
- AUTOSAR C++14 (Guidelines for the use of the C++14 language in critical and safety-related systems by the AUTOSAR development partnership)
- C++ Core Guidelines (Community driven guidelines for best practices in modern C++; editors are Bjarne Stroustrup, and Herb Sutter)
- MISRA C++ (Based on C++03; the upcoming update is based on C++17 and includes C++20)
Tools
CMake
Conan
Libraries
General
- Boost C++ Libraries (the unofficial standard for C++ libraries; incubator for future C++ standards)
- Qt (the unofficial standard for Graphical-User Interfaces and more)
C++20
- date by Howard Hinnant (prototype library for the C++20 chrono extensions)
- fmt by Victor Zverovich (prototype library for the C++20 formatting library)
Concurrency
- Concurrent Data Structures (CDS, contains many lock-free data structures)
- Boost.Lockfree (contains a lock-free queue, a lock-free stack, and a wait-free ring buffer)
Networking
- POCO by Günther Obiltschnig (lightweight and convenient to use library)
Unicode
- ICU – International Components for Unicode (industry standard for unicode in C++)
- ACCU Journals (High standard articles around C++)
Online Compilers
General
Special
- Compiler Explorer (visualizes assembly code and executes it by Matt Godbolt)
- Local installation ⇒ Compiler Explorer on GitHub
- Cpp C++Insights (shows compiler transformations by Andreas Fertig)
- Interactive C/C++ memory model (explores the C++ memory model)
- Metashell (interactive template metaprogramming shell)
Successors
Carbon
- Carbon Language: An experimental successor to C++ on GitHub
- Carbon Language: An experimental successor to C++ by Chandler Carruth on CppNorth 2022
Cppfront
Val
Talks
2012
Title | Language | Event | Town | Date | Length | Slides/Video |
C++11: Quo vadis? | German | CeBIT | Hannover | 10-Mar-2012 | 40 min | |
C++11: Quo vadis? | German | Gesellschaft für Informatik | Heidelberg | 19-Sep-2012 | 90 min | |
C++11: Quo vadis? | German | Gesellschaft für Informatik | Karlsruhe | 17-Oct-2012 | 90 min | |
C++11: Quo vadis? | German | Gesellschaft für Informatik | Dortmund | 05-Nov-2012 | 90 min | |
C++11: An overview | English | Meeting C++ | Neuss | 09-Nov-2012 | 90 min | pdf video1 video2 |
Functional Programming in C++11 | English | Functional Programming in C++11 | Neuss | 10-Nov-2012 | 90 min | pdf video |
C++11: Quo vadis? | German | Gesellschaft für Infomatik | Ostwestfalen | 04-Dec-2012 | 90 min |
2013
Title | Language | Event | Town | Date | Length | Slides/Video |
Python, die Sprache für den Systemadministrator? | German | CeBIT | Hannover | 05-Mar-2013 | 30 min | |
Embedded programming with C++ | English | Meeting C++ | Düsseldorf | 09-Nov-2013 | 60 min |
2014
Title | Language | Event | Town | Date | Length | Slides/Video |
Embedded Programmierung in C++ | German | Advanced Developer Konferenz | Garching | 29-Apr-2014 | 80 min | |
Funktionale Programmierung in C++ | German | Advanced Developer Konferenz | Garching | 30-Apr-2014 | 80 min | |
Functional Programming in C++ | English | C++ User Group Russia | Saratov | 24-Oct-2014 | 60 min | pdf video |
Embedded Programmierung- die Domäne von C++? | German | Embedded Software Engineering Kongress | Sindelfingen | 01-Dec-2014 | 40 min | |
Multithreading done right? | English | Meeting C++ | Berlin | 02-Dec-2014 | 60 min | pdf video |
2015
Title | Language | Event | Town | Date | Length | Slides/Video |
Multithreading done right? | English | C++ Conference | Moscow | 26-Feb-2015 | 60 min | pdf video |
Programmierung zur Compilezeit | German | Advanced Developers Konferenz | Erding | 06-May-2015 | 80 min | |
Multithreading, richtig gemacht? | German | Advanced Developers Konferenz | Erding | 06-May-2015 | 80 min | |
Funktionale Programmierung mit C++ | German | Linuxtag | Tübingen | 11-Jun-2015 | 60 min | |
Functional Programming in C++ | English | Central-European Functional Programming School | Budapest | 08-Jul-2015 | 90 min | |
Programmierung zur Compilezeit | German | Embedded Software Engineering Kongress | Sindelfingen | 01-Dec-2015 | 40 min |
2016
Title | Language | Event | Town | Date | Length | Slides/Video |
Das C++ Speichermodell | German | Parallel 2026 | Heidelberg | 04-Apr-2016 | 60 min | |
15 Tipps (oder warum es nur 10 wurden) | German | Advanced Developers Konferenz | Erding | 26-Apr-2016 | 80 min | |
Das C++ Speichermodell | German | Advanced Developers Konferenz | Erding | 27-Apr-2016 | 80 min | |
Das C++ Speichermodell | German | C++ Usergruppe München | Planegg | 28-Apr-2016 | 80 min | |
15 Tipps (oder warum es nur 10 wurden) | German | Linuxtag | Tübingen | 11-Jun-2016 | 60 min | |
15 Tipps (oder warum es nur 10 wurden) | German | OOSE Abendvortrag | Hamburg | 29-Sep-2016 | 70 min | |
The C++ memory model | English | Meeting C++ | Berlin | 18-Nov-2016 | 60 min | pdf video |
Funktionale Programmierung mit modernem C++ | German | Embedded Software Engineering Kongress | Sindelfingen | 29-Nov-2016 | 45 min |
2017
Title | Language | Event | Town | Date | Length | Slides/Video |
Funktionale Programmierung in C++ | German | C++ Usergruppe Karlsruhe | Karlsruhe | 11-Apr-2017 | 60 min | |
Parellism and Concurrency in C++17 and C++20 | English | Multicore@Siemens | Nürnberg | 08-Feb-2017 | 45 min | |
Programming at Compile Time | English | emBO++ | Bochum | 18-Feb-2017 | 45 min | pdf video |
Programming at Compile Time | English | C++ Conference | Moscow | 24-Feb-2017 | 60 min | pdf video |
Funktionale Programmierung in C++ | German | sodget IT GmbH | Balingen | 13-Mar-2017 | 60 min | |
Gleichzeitigkeit und Parallelität in C++17 und C+20 | German | Parallel 2017 | Heidelberg | 30-Mar-2017 | 70 min | |
Gleichzeitigkeit und Parallelität ind C++17 und C++20 | German | C++ Usergruppe München | München | 30-May-2017 | 70 min | |
Quo vadis Multithreading in C++ | German | Advanced Developers Konferenz | München | 16-May-2017 | 70 min | |
C++17: Was gibts Neues? | German | Advanced Developers Konferenz | München | 17-May-2017 | 70 min | |
Threads and Locks must go | English | Meeting C++ | Berlin | 09-Nov-2017 | 60 min | |
Secret Lightning Talk | English | Meeting C++ | Berlin | 11-Nov-2017 | 10 min | pdf video |
C++17 | German | Embedded Software Engineering Kongress | Sindelfingen | 05-Dec-2017 | 45 min |
2018
Title | Language | Event | Town | Date | Length | Slides/Video |
Best Practices für Concurrency | German | Parallel 2018 | Heidelberg | 07-Mar-2018 | 70 min | |
Best Practices for Concurrency | English | C++ Russia | St. Petersburg | 21-Apr-2018 | 80 min | |
Best Practices für Concurrency | German | C++ Usergruppe Karlsruhe | Karlsruhe | 10-May-2018 | 70 min | |
Best Practices für Concurrency | German | sodgeIT GmbH | Balingen | 16-May-2018 | 60 min | |
Best Practices für Concurrency | German | Linuxtag | Tübingen | 09-Jun-2018 | 60 min | |
Concurrency and Parallelism in C++17 and C++20/23 | English | CoreHard | Minsk | 03-Nov-2018 | 50 min | |
The Core Guidelines for Safer Code | English | Meeting Embedded 2018 | Berlin | 14-Nov-2018 | 30 min | |
Best Practices for Concurrency | English | Meeting C++ | Berlin | 17-Nov-2018 | 60 min | |
Die C++ Core Guidelines für sicheren Code | German | Embedded Software Engineering Kongress | Sindelfingen | 04-Dec-2018 | 40 min | |
Migration auf Python 3 | German | Embedded Software Engineering Kongress | Sindelfingen | 04-Dec-2018 | 40 min |
2019
Title | Language | Event | Town | Date | Length | Slides/Video |
Die bekanntesten (Online-) Compiler im Vergleich | German | Parallel 2019 | Heidelberg | 21-Feb-2019 | 50 min | |
Concurrency und Parallelität mit C++17 und C++20/23 | German | Parallel 2019 | Heidelberg | 21-Feb-2019 | 50 min | |
Concurrency and Parallelism with C++17 and C++20/23 | English | C++ Europe | Bucharest | 26-Feb-2019 | 60 min | |
Concurrency and Parallelism with C++17 and C++20/23 | English | C++ Russia | Moscow | 20-Apr-2019 | 60 min | |
Concepts | English | C++ Italia | Milano | 15-Jun-2019 | 50 min | pdf video |
C++20 – Die Revolution geht weiter | German | Linuxtag | Tübingen | 06-Jul-2019 | 50 min | |
Concepts | English | CppCon | Aurora | 16-Sep-2019 | 60 min | pdf video |
Atomics, Locks, and Tasks (Back to Basics) | English | CppCon | Aurora | 17-Sep-2019 | 2 * 60 min | pdf video1 video2 |
C++20 – The Big Four | English | C++ Russia | St. Petersburg | 01-Nov-2019 | 60 min | |
Concepts | English | Meeting C++ | Berlin | 14-Nov-2019 | 60 min | |
Die bekanntesten (Online-) Compiler im Vergleich | German | Embedded Software Engineering Kongress | Sindelfingen | 03-Dec-2019 | 40 min |
2020
Title | Language | Event | Town | Date | Length | Slides/Video |
Concepts | English | C++ Usergruppe München | Online | 26-Mar-2020 | 80 min | |
Migration auf Python 3 | German | enterPy | Online | 26-May-2020 | 45 min | |
Concepts | English | Cpp Europe | Online | 26-Jun-2020 | 60 min | |
Concepts | German | C++ Usergruppe Karlsruhe/Dresden | Online | 10-Jul-2020 | 60 min | |
From Functions to Coroutines | English | CppCon | Online | 15-Sep-2020 | 60 min | pdf video |
Smart Pointers (Back to Basics) | English | CppCon | Online | 17-Sep-2020 | 60 min | pdf video |
From Functions to Coroutines | English | Meeting C++ | Online | 14-Nov-2020 | 60 min | |
C++20 – Die Revolution geht weiter | German | Embedded Software Engineering Kongress | Online | 01-Dec-2020 | 40 min |
2021
Title | Language | Event | Town | Date | Length | Slides/Video |
Erweitern und Einbetten von Python | German | enterPy | Online | 15-Apr-2021 | 45 min | |
C++20- Die Revolution geht weiter | German | Advanced Developers Konferenz | Online | 18-May-2021 | 60 min | |
C++20 – Die Revolution geht weiter | German | Uni Zwickau | Online | 17-Jun-2021 | 80 min | |
Concurrency Patterns | English | CppCon | Online | 25-Oct-2021 | 60 min | pdf video |
const and constexpr (Back to Basics) | English | CppCon | Online | 26-Oct-2021 | 60 min | pdf video |
Object Oriented Programming (Back to Basics) | English | CppCon | Online | 27-Oct-2021 | 60 min | pdf video |
C++20: The Small Pearls | English | CppCon | Online | 28-Oct-2021 | 60 min | |
C++20: The Hidden Pearls | English | Meeting C++ | Online | 11-Nov-2021 | 60 min | pdf video |
Erweitern und Einbetten von Python | German | Embedded Software Engineering Kongress | Online | 30-Nov-2021 | 40 min |
2022
Title | Language | Event | Town | Date | Length | Slides/Video |
const and constexpr | English | Meeting C++ | Online | 25-Jan-2022 | 60 min | pdf video |
Extend and Embed Python | English | EmBO++ | Online | 26-Mar-2022 | 50 min | |
C++20: The Small Pearls | English | ACCU | Bristol | 06-Apr-2022 | 90 min | pdf video |
Ranges | English | C++20 Techniques for Algorithmic Trading | Online | 26–Apr-2022 | 150 min (including Q&A) | pdf video |
Concurrency Patterns | English | Cpp Europe | Online | 24-May-2022 | 60 min | |
Extend and Embed Python | English | C++ North | Toronto | 18-Jul-2022 | 60 min | pdf video |
Standard Library Containers (Back to Basics) | English | CppCon | Aurora | 14-Sep-2022 | 60 min | pdf video |
The C++ Core Guidelines (Back to Basics) | English | CppCon | Aurora | 15-Sep-2022 | 60 min | pdf video |
Concepts | English | C++20 Techniques for Algorithmic Trading | Online | 4-Oct-2022 | 120 min (including Q&A) | pdf video |
Extend/embed Python with C/C++ | English | Meeting C++ | Berlin | 19-Nov-2022 | 60 min | |
const and constexpr | Deutsch | sodgeIT GmbH | Balingen | 28-Nov-2022 | 70 min | |
Die vielen Varianten von Konstantheit in modernem C++ |
Deutsch | Embedded Software Engineering Kongress | Sindelfingen | 06-Dec-2022 | 40 min | |
Extend/embed Python with C/C++ | English | C++ Techniques for Algorithmic Trading | Online | 20-Dec-2022 | 150 min | pdf video |
2023
Title | Language | Event | Town | Date | Length | Slides/Video |
Concurrency Patterns | English | User Group | Online | 13-Mar-2023 | 75 min | pdf video |
Concurrency in Modern C++ | English | IMC | Amsterdam | 12-Apr-2023 | 90 min | |
Concurrency Pattern | English | C++ Russia | Online | 11-May-2023 | 60 min | |
Concurrency in Modern C++ | English | Core C++ | Tel Aviv | 06-June-2023 | 60 min | pdf video |
C++20: The Small Pearls | English | C++ On Sea | Folkestone | 29-June-2023 | 60 min | pdf video |
Concurrency Improvements in C++20 | English | NDC Tech Town | Kongsberg | 21-Sep-2023 | 60 min | |
Concurrency Improvements in C++20 | English | QT | Oslo | 22-Sep-2023 | 60 min | |
Concurrency Patterns | English | Meeting C++ | Online | 12-Nov-2023 | 60 min | pdf video |
40 Jahre Evolution: Von Funktionen zu Coroutinen | Deutsch | Embedded Software Engineering Kongress | Sindelfingen | 05-Dec-2023 | 40 min |
2024
Title | Language | Event | Town | Date | Length | Slides/Video |
Concurrency improvements in C++20 | English | User Group Munich | Online | 27-Jun-2024 | 75 min |
Podcasts
- ADSP: The Podcast by Bryce Adelstein Lelbach and Conor Hoekstra (Algorithms + Data Structures = Programs)
- CppCast by Rob Irving and Jason Turner (continued by Timor Doumler and Phil Nash)
- cpp.chat by Jon Kalb and Phil Nash (chats with guests from the C++ community)
Videos
Design Patterns
- Design Patterns by Example with C++ by Douglas Schmidt (very good introduction)