&gt; It&#x27;s as if you had to be there from the start to have a full image of how the language grew and truly understand the interplay between all the &quot;features&quot;, otherwise it&#x27;s too late to become an expert, and in some cases even too late to become comfortable writing good maintainable code in C++.<p>Although this is perhaps a poor anecdote more than anything, I myself only learned C++ six years ago (when I was learning to program, to boot). Overall the switch to using C++ today is more of an &quot;unlearning&quot; process, and requires that you don&#x27;t treat the language as you would treat C (for better and or worse).<p>Overall I don&#x27;t think it&#x27;s true that you had to be there from the start, as you could easily just learn C++11 and C++14 style idioms today and avoid the hairier parts of the language if you want to. Reading through Scott Meyers&#x27; books are a great start, but overall I found that switching to a more modern style was very easy if you already know some basic concepts from other languages (range-based for, what a lambda is, how auto &#x2F; type-inference works).<p>I guess really, is that I think giving up because C++ has evolved very differently from C or how other languages evolve just seems... defeatist?