Learning and teaching modern C++
C++ has a reputation of being hard to learn, compared to other languages. The complexity of the language, which allows for versatility and good performance in a range of different domains, results in a steep learning curve. The long history of C++ can contribute to the problem: over the years, the language and our understanding of it has changed several times. Students as well as seasoned connoisseurs of the language need to continue learning to stay on top of what is called modern C++. That need is even more pressing for teachers and authors: People may learn from university courses, books and abandoned online content that may have been "best practices" a decade or two ago, but today that content can actually hurt the learning process of readers who have to unlearn and relearn.