A lot of this is common sense to me. I've seen the C++ part play out in practice many times. C++ is an easy example because it requires a lot of effort and time investment in order for someone to be truly good at it. The same is not true for Javascript, Python, Ruby and so on which is why people have a way more relaxed attitude ping-ponging (or chasing the next shiny thing that comes along) amongst them.
The way it usually happens is that a smart person who has made big multi-year investments and climbed the proficiency ladder crumbles into narrow-mindedness and rigidity of thought when one points out to him that the language he's extremely good at is a bad fit for the problem at hand. If an attempt is made to solve it, with C++, that later turns out bad, the situation gets even worse. I've seen people lash out at everyone around them, using any excuse they can find so that they can keep a consistent worldview in their minds, so that their model doesn't come apart.
To question the foundations of one's knowledge is a hard thing to do, especially when it leads to iconoclastic outcomes. The vast majority of people I've encountered in personal and professional life would do anything to stay in their own manufactured reality bubbles rather than deal with cognitive dissonance. Engineers are as prone to this as any other group I've ever come across.
I'd say you're feeling friction, which makes sense, but that doesn't mean this is a hard and fast rule.
In the C++ vs Java fight you might have cases where you need to be fast, and C++ (with sufficient optimizations) might make your program much faster. Then again I'd pick C or Rust if I started a new project (C, because it's much more manageable, Rust because it has a lot of the useful C++ features while maintaining memory safety). But then Rust might a Spanish Prison Guard, it takes effort to learn. There is notable friction when you first encounter the borrow checking compiler. The payoff is big though (trust me, or better check for yourself).
I agree with your thoughts. To clarify, when using the term “friction”, I wasn't referring to a learning curve. I'd also consider learning (more) Rust energy well spent, until proven otherwise.
Fascinating read, although I didn't agree on his gender theories, I think he'll have to dig deeper. It also seemed a bit disconnected in parts. And I would have liked to see some code examples where he falsifies a theory that's a bit smaller than C is easy C++ is hard. I find that programming has more of a magical theory component because like writing essays a lot of what we consider good writing is subject to tastes and fashions.
Unfortunately Pieter died a while back (https://en.wikipedia.org/wiki/Pieter_Hintjens), so he's already dug as far down as he's going to go. The disconnectedness has been his writing style for a while, and while it can be a little annoying, he's been good about tying it all back together though I'd too like more clarity on the language differences.
Which part of the gender theories didn't you agree with?
I found his “Resolving the Gender Gap” paragraph quite credible. Heck, it's even a viable description of some HN comment threads.
I'd very much appreciate the input of women on this, but alas, they are few and far between in our profession. If the author is actually wrong, they might even be too busy being “good developers” to show the same amount of “disrespect” for the field as he does. But I'm not prepared to believe that yet.
The way it usually happens is that a smart person who has made big multi-year investments and climbed the proficiency ladder crumbles into narrow-mindedness and rigidity of thought when one points out to him that the language he's extremely good at is a bad fit for the problem at hand. If an attempt is made to solve it, with C++, that later turns out bad, the situation gets even worse. I've seen people lash out at everyone around them, using any excuse they can find so that they can keep a consistent worldview in their minds, so that their model doesn't come apart.
To question the foundations of one's knowledge is a hard thing to do, especially when it leads to iconoclastic outcomes. The vast majority of people I've encountered in personal and professional life would do anything to stay in their own manufactured reality bubbles rather than deal with cognitive dissonance. Engineers are as prone to this as any other group I've ever come across.