In my experience, people who "hate on" OOP fit into these groups:
1) The old guru. You've been programming the same way since 1983 and you resist change. You're proficient in procedural C, or FORTH or FORTRAN and you see no reason to learn anything else.
2) The elitist. You use your choice of language as a filter to form an exclusive club. You feel that 10% of people who program in X are bad programmers, but 90% of people who program in Y are bad programmers. Therefore you must shun Y, in order to keep the bad programmers away from your club.
3) The enterprise defector. You've been raised on Java in a large company, and have been forced to write one too many SolutionFactoryAdaptaorPatternVisitorFlyweightProxyFactoryProviders and other wtfs, with coworkers who buy into this tripe, probably just for political gain within the enterprise.
4) The tried it once-er. You tried learning C++/Java/SmallTalk back in 1998, wrote tonnes of inheritance trees, realized your code was terrible, and decided to forever shun this thing that you barely understood in the first place.
5) The old-school optimizer. You wrote a better version of virtual in C 20 years ago, so now shun all C++ compilers, even though you've never bothered to re-run your tests with modern compilers. You're probably also an old-guru.
6) The hardcore game-dev. You actually understand all the points being made in Mike Acton's rants, and therefore you subscribe to point #2 -- you're sick of seeing bad programmers write bad code, so you want to take away the tools they're abusing.
And he was talking about OOP and how bad it is.
If anyone is making rash, absolute statements like that, then they should not be teaching other people.
There is great blog entry where Casey is explaining his coding style.
http://mollyrocket.com/casey/stream_0019.html
That falls into the straw-man argument category. To paraphrase:
"I don't understand OOP, so based off the badly taught perversion of it that I was using, I'm going to declare that it's all horseshit."
The big staw-man there is he bases all the opening paragraphs on an example where a problem is solved using a faulty inheritance hierarchy, implying that this is the OO way to do things... when in fact OO teaches the opposite of this -- to prefer composition over inheritance -- and thus the opening paragraphs are either ignorantly or deliberately presenting a terrible and/or contrived solution to generate a false impression.
All the ideas he's putting forth in that post can be combined with the useful ideas from OO theory... i.e. they're mostly orthogonal.
It's very arrogant to just dismiss it (and harmful to teach such arrogance to others) because you had a bad experience in the past.