Hacker News Comments on
Effective Modern C++: 42 Specific Ways to Improve Your Use of C++11 and C++14
Hacker News Stories and CommentsAll the comments and stories posted to Hacker News that reference this book.
> This slightly over 100 page book on move semantics https://leanpub.com/cppmove shows some of the iceberg like complexities dotted all over the place. Some developers probably never use and have never even heard of move semantics.
I think Scott Meyers' "Effective Modern C++" which is in large part a collection of caveats and description of things which don't fit always together also underlines that impression:
⬐ mbeexMy entry in professional C++ programming was accompanied by Scotts earlier books. The moment gradually to refrain from the language as my main tool again coincides (coincidence?) with his retreat.⬐ j1eloHard agree. I was enthusiastic about reading that book when I got it, as I'd been very late to the bandwagon of new C++11 and C++14 features.
Ended the book in a pessimistic tone. It looked more like a cookbook of pitfalls _everywhere_.
Every new feature looked exciting, but came with a list of cases where the language decides to leave you on your own when it gets too uncomfortable (the "well that's undefined behaviour, I'm sorry, you suck! bye!" escape hatch). So in the end it's like you said: a new list of gotchas to learn by heart.⬐ jnxxFor me, that disillusion has been one of several steps.
Scott Meyers book was one point.
Then I started to learn Clojure, motivated by the idea that we need better concepts for the upcoming massively parallel hardware (a big influence for me was the article "The free lunch is over" by Herb Sutter: http://www.gotw.ca/publications/concurrency-ddj.htm). I now think that immutability by default is clearly the better way to go, even in close-to-the machine applications like embedded devices and industrial control applications.
Then, I saw this article on the different options and syntax for initializing variables in modern C++: http://mikelui.io/2019/01/03/seriously-bonkers.html
And I was like, no, this can't be serious. I think this was the point where I began to distance from the language (though I still use it at work when I need to).
I got also the impression that the actual language use in C++ is undergoing a serious split. Compare the C++ core guidelines with Google's C++ style guide:
This does already look somewhat like different languages, only that they can be compiled with the same compiler.
And then, the C++17 and C++20 standard iterations, at this point it is just like "this is too much! What is this good for?"⬐ andi999I think in Scott Meyers case it is he basically never used C++ in production, which in some sense is ok, since he makes his living as a language expert, but sometimes this shines through; also from a D conference talk I remember, even he got sick of it and switched to D.
Also let me use this comment to recommand John Lakos, his talks, his books. He knows how to build large scale applications and if you saw his talk on the 'is_working_day' function (if I remember correctly) you know you were not overthinking.⬐ j1eloThanks for the recommendation, I'll have a look at his work, for sure.
Also I'd be curious to see that talk you mention, do you remember anything about it that could help in searching for it?⬐ andi999I think same talk but different recording: https://www.youtube.com/watch?v=MZUJsCh1wOY I think around 1:08:30 onwards (maybe even before) the example I had in mind.
There are several good books about c++11 and c++14, though I'm not sure about 17.
"Effective Modern C++: 42 Specific Ways to Improve Your Use of C++11 and C++14" https://www.amazon.com/Effective-Modern-Specific-Ways-Improv...
"Discovering Modern C++: An Intensive Course for Scientists, Engineers, and Programmers (C++ In-Depth Series)" https://www.amazon.com/Discovering-Modern-Scientists-Program...
I strongly prefer text over video, and the best book on modern C++ is "Effective Modern C++" by Scott Meyers: https://www.amazon.com/Effective-Modern-Specific-Ways-Improv...
 I wish people invested more time/effort in writing good textbooks instead of videos/MOOCs.
"Effective Modern C++" is extremely well written (https://www.amazon.com/Effective-Modern-Specific-Ways-Improv...)
It cover very smoothly most of the main C++11/14 features, while explaining the pros and cons and the inner choices that has been made when those said feature were implemented
Highly recommended book by the community
I think you mean "Effective Modern C++". The two you mention predate C++11.
I've not read it, but the author's other books have been well-regarded for years:
⬐ wmknI agree. Effective C++ was/is the guide for C++98 - Effective Modern C++ is the guide for C++11.⬐ boost_I've read it already, the final retail version, not the early draft and its pretty awesome (like all his other books).
IMO its better than the Bjarne Stroustrup book (which i've read too), but any of the two is fine to learn modern C++ features.⬐ overgardI have read it. Would highly recommend it. Most other guides just go over the neat things, but this one also goes over all the potential pitfalls and things to watch out for (and it's C++ -- there's always something to watch out for :))⬐ azmentheI would like to read this book but the O'Reilly website eBook + Print combo deal is not available until next year.. Does anyone know how I can order both and get the early access ebook now and then the print book when it's ready?