All content in the page is based on my experience. This means, I read the books list here, or I visited the conferences at least one time. This list is, therefore, by no means exhaustive. Ask me for details if you need more information.
Books
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++)
General
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++)
Patterns
General
- Pattern-Oriented Software Architecture, Volume 1 by Frank Buschmann, Regine Meunier, Hans Rohnert, Peter Sommerlad, and Michael Stal (the classic)
Design Patterns
- Design Patterns: Elements of Reusable Object-Oriented Software by Erich Gamma, Richard Helm, Ralph Johnson, and John Vlissides (the classic)
- 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)
Clean Code
- Clean C++20: Sustainable Software Development and Best Practices by Stephan Roth (clean code, C++ idioms, functional programming, testing, and design patterns)
- Beautiful C++: 30 Core Guidelines for Writing Clean, Safe, and Fast Code by J.Guy Davidson, and Kate Gregory
- C++ Core Guidelines Explained: Best Practices for 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)
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
Templates
- C++ Templates – The Complete Guide (2nd Edition) by David Vandevoorde, Nicolai M. Josuttis, and Douglas Gregor (the reference book)
Blogs
- 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)
Concurrency
- Preshing on Programming (his posts about the memory model are the best I know)
Guideliness
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 |
|
Meeting C++ | November | Three days | 600 – 800 | Berlin | Meeting C++ |
|