Scott Meyers Retires From Involvement With C++ (blogspot.com)
An anonymous reader writes: If you've studied C++ any time in the past 25 years, you've probably read something by Scott Meyers. He wrote Effective C++, regarded by many as one of the top two books for learning to work with the language. He also wrote similar books about changes in C++11 and C++14, as well as making good use of the Standard Template Library. He's been a seemingly endless source of instructional videos, articles, and helpful answers on Usenet and StackOverflow. Unfortunately for us, Meyers has now decided to move on. "25 years after publication of my first academic papers involving C++, I'm retiring from active involvement with the language. It's a good time for it. My job is explaining C++ and how to use it, but the C++ explanation biz is bustling. ... My voice is dropping out, but a great chorus will continue." Thanks for all the help, Scott.
Instead of C++17 you should use the Rust programming language. It is the successor to C++, and is an improvement in every way.
If you don't know what Rust is, let me refer you to what Rust's home page says: "Rust is a systems programming language that runs blazingly fast, prevents segfaults, and guarantees thread safety." It has guaranteed memory safety and threads without data races.
Rust is what C++ should have been. Rust is all about safety, while still keeping the programmer totally in control and the generated binaries fast.
Rust is clearly the future. It's being developed by masters of the trade like Yehuda Katz, Steve Klabnik and Patrick Walton. These fine men are visionaries and many years ahead of the rest of the industry. We need to follow their valiant lead today. We need to use Rust for all new projects, and start porting all existing software to it immediately.
Let's put an end to software security problems. Let's put an end to software bugs. Let's use Rust.
I used the language for a test data generation project a couple years ago and was quite impressed with how nice it was to work with -- easily as easy as writing a java program. I needed a math library to generate the data and considered several languages. The Eigen C++ library I found looked like it had the easiest API to get into, with reasonably clear documentation and examples. I was able to organize the functionality of the program into unit-tested libraries. Between that and the strict type checking in the compile phase, I was able to deploy with very high confidence that I wouldn't be introducing any bugs into the environment.
I'm trying to teach myself to set people on fire with my mind... Is it hot in here?
Granted, at the time we were also using a mid-90's vintage of Visual C++ and trying to port to things like g++ on Linux, BeOS, MacOS, etc, so much of the issues we had were less due to "C++ the language" and more because of "C++ the implementation(s)", but Meyers' book was the icing on an increasingly unpalatable cake.
Log in or piss off.
Basically there's a lot of free talks on Youtube these days that give better advice for people who actually write code. Scott Meyers is great and all, but he admits that he doesn't actually write code. These days I look to people like Alex Stepanov and Sean Parent. I think Sean Parent's talk on rotate and partition alone is a more effective way to think about C++ than that whole business about OO.
Those who do not learn from commit history are doomed to regress it.