Yes! Alexander Stepanov is fantastic. He's the designer of the Standard Template Library (STL) for C++, which is C++'s core library of generic algorithms. It's part of the standard libary. If you can understand how to use the STL properly, you're well on your way to becoming a profiicent C++ programmer. His books are fantastic too. Elements of Programming: [link] and From Mathematics to Generic Programming: [link] If you prefer video lectures, his second book is based off his lecture series Four (three) Algorithmic Journeys: [link] [link] [link] [link] It's a combination of history and math/algorithms and programming (using C++). If you're just looking for a straight intro to C++ course this isn't it. But it's a ton of fun and the generic programming/STL mindset is very powerful. Programming Conversations is another great lecture series by Alexander Stepanov: [link] I would also recommend searching YouTube for videos by Sean Parent. This one in particular is very enlightening: ▶ this video Sean Parent is very good at getting you in the STL mindset and showing off the expressive power of using the standard STL algorithms in your code. Except in the simplest cases, you should try to use them instead of writing your own loops. Here are some random tips if you're coming from C or Java: "new" is not the way to create objects in C++. new and delete should almost never be used by serious programmers in C++. Never use new and delete (or malloc and free). If you want a dynamically-allocate
in “Ask HN: What is the best Modern C++ MOOC?” · View on HN