This is at most a rant against the misguided implementation in certain mainstream languages. Not against OO in general.
The fact that Alan Kay meant something different is irrelevant.
While you can build messaging and composition into most languages, they're usually considered application models in their own right, not core features. (Objective C is an exception, among a handful of others.)
So I think it's a valid question - why do mainstream languages still present this model as a core feature when other models are less rigid, more expressive, easier to work with, and better candidates for language fundamentals?
On the contrary, we see OOP being used in the majority of programming projects.
I have been waiting for a proof that functional programming is easier for a very long time now. It doesn't seem to be the case, and I'm getting sick of fanboyism that insists that it is.
I went back to my OO roots and c#/c++ and carried on mostly as I did before. Why?
Simply that its easier to rationalise a large system in terms of objects and actions. Even atypical OO languages like Go use this model.
What I did take away was limited mutability (not total immutability) and some functional paradigms such as map/filter and a well founded opinion that one shouldn't listen to programming religious wars and use what works for you.
I'm currently of the opinion that OO is basically a form of module system: useful for carving up large problems into more manageable ones, but not necessarily a good model for writing algorithms.