Live data from Hacker News

I learnt C++ in 2018 and have no regrets

vishnubharathi.codes

51–60 of 259 posts

Re: I learnt C++ in 2018 and have no regrets

#52

"To round up, C++ does not dictate about its tooling, which basically gives lot of choices and flexibility. But at the same time it is making it complex for beginners to come in to projects and start projects with it." This was a big problem for me when I first started using C++. I don't remember it being too bad when I was just working on small projects and things I wanted to do at school. The problems started when…

Most projects use CMake now so it seems the community is starting to coalesce around CMake as the "not official" build system.

Re: I learnt C++ in 2018 and have no regrets

#53

I've learned 15+ years ago, and I stopped paying attention around ~2010, which is just before significant changes were made. Even though I read up on some features and concepts from C++11 and C++14, I feel so disconnected from what's going on as if what I learned was a completely different language. Can anyone recommend any source for someone with lots of pre-C++11 experience to get up to speed with current capabilit…

I've been in the same boat--relearning C++ after using C++98(!) for a long time. My first go-to book was _A Tour of C++_ , 2e by Stroustrup. Also _Effective Modern C++_ by Scott Meyers (of _Effective C++_ fame).

Other books I've been reading: _C++ 17 The Complete Guide_ by Josuttis _C++ 17 in Detail_ by Filipek

Lots of good blogs out there. Also the CPP Podcast. http://cppcast.com/

There are also a lot of great blogs covering new features. Also

Re: I learnt C++ in 2018 and have no regrets

#54
post #43
post #29

Earlier quoted context omitted.

C++ is commonly used for large complex projects. The problem with opinions is eventually you come across something that the opinion will not allow. For a small project an opinionated build system makes things easier and you essentially never run across something that can't work. For very large projects that is not true and so you end up fighting opinions in some place.

Having opinions != removing choices One can have an opinionated, canonical build system and still allow unorthodox things.

But having an 'unorthodox' (read: not aligned with the opinion) design pattern then comes at a cost.

I favor agnostic build systems specifically to permit the fair democratization of design patterns and to embrace a more earnest diversity of thought.

Re: I learnt C++ in 2018 and have no regrets

#55

"To round up, C++ does not dictate about its tooling, which basically gives lot of choices and flexibility. But at the same time it is making it complex for beginners to come in to projects and start projects with it." This was a big problem for me when I first started using C++. I don't remember it being too bad when I was just working on small projects and things I wanted to do at school. The problems started when…

All C/C++ projects I have ever seen used either cmake or autoconf build system. It's pretty standard.

While true, some very large projects are exceptions. e.g. Chromium or I imagine things like the NT kernel.

Re: I learnt C++ in 2018 and have no regrets

#56

"To round up, C++ does not dictate about its tooling, which basically gives lot of choices and flexibility. But at the same time it is making it complex for beginners to come in to projects and start projects with it." This was a big problem for me when I first started using C++. I don't remember it being too bad when I was just working on small projects and things I wanted to do at school. The problems started when…

I ran into this trying to get into it about 3 weeks ago. I'm so used to things like npm, ruby gems, go packages, pip that it felt like a huge task just to get something built or settle on a way for me to build mine.

Even grabbing libraries from github, I was unsure if I should grab just the headers and DLLs, or import the entire tree and mashup my build scripts with theirs.

I wish I had stayed with it since college but now I feel I have to reach for something like Go or Rust just to get something shareable in reasonable time purely because of the tooling, whereas I would really like to use the C++ language itself specifically for working with win32.

Re: I learnt C++ in 2018 and have no regrets

#59

I've learned 15+ years ago, and I stopped paying attention around ~2010, which is just before significant changes were made. Even though I read up on some features and concepts from C++11 and C++14, I feel so disconnected from what's going on as if what I learned was a completely different language. Can anyone recommend any source for someone with lots of pre-C++11 experience to get up to speed with current capabilit…

I've been in the same boat--relearning C++ after using C++98(!) for a long time. My first go-to book was _A Tour of C++_ , 2e by Stroustrup. Also _Effective Modern C++_ by Scott Meyers (of _Effective C++_ fame). Other books I've been reading: _C++ 17 The Complete Guide_ by Josuttis _C++ 17 in Detail_ by Filipek Lots of good blogs out there. Also the CPP Podcast. http://cppcast.com/ There are also a lot of great blogs…

I used to swear by Meyers in my old C++ days; his Effective C++ and More Effective C++ were my favorite software books. But recently, in the course of catching up with modern C++, I got the impression his ideas aren't considered good in the current community anymore. Can anyone comment on that?

Re: I learnt C++ in 2018 and have no regrets

#60
post #31

Many here talk about the complexity of C++. I concede it's a huge language, and not a beautiful one. However, I wouldn't call it that difficult. Being a systems language, once you understand (roughly, sans optimization finesse) how the machine code is generated it starts making a lot of sense. Maybe C++ is even educational because so many nuts and bolts are showing. Personally I'd recommend some systems programming t…

Many programming languages try to have perfect symmetry and because of that, fail to be useful in the real world. C++ has constructs such as template specialization that allow symmetry breaking. Symmetry breaking is what makes nature beautiful and therefore I would argue C++ IS a beautiful language. C++ is complex because the world is complex. Just as a mountain is shaped by time and the elements, C++ is also shaped by decades of experience and change.

This is what also makes Bjarne one of the greatest language designers. Where most designers would have gone off making new languages, Bjarne has been polishing the C++ stone the whole time.

Post reply on HN