Very nice to read this article, receiving a lot of funny comments too!
Remember OOP is from a time where all sorts of snake oil were sold to cure the ‘software crisis’ at the time. There is a new such paradigm of computer programming appearing every 10 years or so.
OOP was completely oversold as you point out, however, the ambition at the time was really to force programmers to structure their work better. Indeed if you try to implement a large, messy and unstructured design using OOP, you are likely to fall flat early, and you will be forced to think again more carefully. The rest is really snake oil talk.
The worst of the snake oil talk is the ‘re-use’ thing. Some ecology pop has crept into computer science there. Either you ‘use’ something for which it was designed and that is fine, or you ‘re-design’ something for a related purpose. To ‘reuse’ in software, sort of implies using code for something it was not completely designed for, and that leads to very bad and hard to find bugs…
Functional programming has been in and out several times, and the sales talk there is that a possibility of ‘automated proof of code correctness’ can be seen in the horizon. However, the practical application of such proofs has evaded us for more than 50 years. There is still a bunch out there (like the Haskell teams) trying hard.