Here's the problem with the FQA. It has some deep understanding of some C++ issues, but it has a completely distorted attitude.
If the FQA said, "Here are some problems with objects and inheritance. Here are some strategies for dealing with them", that would be useful. Instead, it implies (and coming very close to outright stating) "Here are some problems with objects and inheritance. Therefore C++ is completely broken because it includes objects at all." And it's not just objects. That's the FQA's attitude on every issue. It's like the author went deliberately looking for everything possible to complain about, and just wanted to complain.
It's like some guy took the time to write 50 pages detailing all the ways chefs could cut themselves with sharp knives (all of which are real), and trying to persuade chefs to stop using sharp knives. But a real chef would respond, "These knives are useful precisely because they are sharp. Now shut up and get out of my kitchen."
> Also, and I think this too was needlessly aped from UNIX-HATERS – I keep insisting on this good-for-nothing language being literally good for nothing, and while I don't outright lie to make that point, I'm "editorializing", a.k.a being a weasel, and why do that? I mean, it's a perfectly sensible choice for many programmers to learn C++, and it's equally sensible to use it for new projects for a variety of reasons. Do I want to see the day where say Rust scrubs C++ out of the niches it currently occupies most comfortably? Sure. But being a weasel won't help us get there, and for whomever C++ is the best choice right now, persuading them that it isn't on general grounds can be a disservice. So the "good for nothing" attitude might be best scrapped as well, perhaps.
I found reading it rather cathartic. It mirrors the vitriol that my C++ teachers had towards C, and it was a counterweight to the irrational exuberance they expressed towards C++ features like iostreams and inheritance.
I mean, I actually like C++. It's my language of choice. But around the early 2000s, the smugness was overwhelming. To me, this is the 'mogodb is webscale'[1] of yesteryear.
I started reading the FQA, and I am kind of torn. On the one hand, I like the idea of questioning and critisizing both C++ and its FAQ. C++ has its fair share of problems, even seasoned C++ developers will admit that, and pointing them out / exploring them is a good idea. Even if you do like or even love C++, being aware of its problems is a very good idea when using it (which can, of course, be said of any language!).
But I don't like the aggressive tone. This way, it is merely intellectual masturbation to somebody who already does not like C++, while somebody who does like C++ will find it easier to dismiss this as just another rabid rant rather than take it into consideration as an informed critique.
Maybe turning it into community projekt will allow for changing the tone, turning it into a valuable resource that even diehard C++ lovers will appreciate?
9 comments
[ 2.7 ms ] story [ 33.3 ms ] threadIf the FQA said, "Here are some problems with objects and inheritance. Here are some strategies for dealing with them", that would be useful. Instead, it implies (and coming very close to outright stating) "Here are some problems with objects and inheritance. Therefore C++ is completely broken because it includes objects at all." And it's not just objects. That's the FQA's attitude on every issue. It's like the author went deliberately looking for everything possible to complain about, and just wanted to complain.
It's like some guy took the time to write 50 pages detailing all the ways chefs could cut themselves with sharp knives (all of which are real), and trying to persuade chefs to stop using sharp knives. But a real chef would respond, "These knives are useful precisely because they are sharp. Now shut up and get out of my kitchen."
> Also, and I think this too was needlessly aped from UNIX-HATERS – I keep insisting on this good-for-nothing language being literally good for nothing, and while I don't outright lie to make that point, I'm "editorializing", a.k.a being a weasel, and why do that? I mean, it's a perfectly sensible choice for many programmers to learn C++, and it's equally sensible to use it for new projects for a variety of reasons. Do I want to see the day where say Rust scrubs C++ out of the niches it currently occupies most comfortably? Sure. But being a weasel won't help us get there, and for whomever C++ is the best choice right now, persuading them that it isn't on general grounds can be a disservice. So the "good for nothing" attitude might be best scrapped as well, perhaps.
Which is a much more reasonable position.
As I recall it actually spends a load of time bitching that C++ isn't garbage collected and more like lisp, which is multiple levels of stupid.
I mean, I actually like C++. It's my language of choice. But around the early 2000s, the smugness was overwhelming. To me, this is the 'mogodb is webscale'[1] of yesteryear.
[1] https://youtu.be/b2F-DItXtZs
Reading some eloquent critique of your favorite technology can encourage healthy attitude towards it and prevent turning it into holy cow.
But I don't like the aggressive tone. This way, it is merely intellectual masturbation to somebody who already does not like C++, while somebody who does like C++ will find it easier to dismiss this as just another rabid rant rather than take it into consideration as an informed critique.
Maybe turning it into community projekt will allow for changing the tone, turning it into a valuable resource that even diehard C++ lovers will appreciate?