Coding Horror rips PHP a new one:
The great crime of PHP is its utter banality.
The problem is that banality isn’t a crime, it’s a virtue. Banality is predictability. Predictability is ease of understanding. PHP is a good tool because it’s easy to visualize what your program is doing.
Transparency is important for a programming language. C has it, C++ doesn’t. Javascript yes, Java no. Ruby yes, Rails no. PHP yes, Perl no.
Programming is about programmer’s heads. Tools are there to assist with cognition. PHP does that well.
Personally I’m moving on to Node.js these days, because it doesn’t make sense to use different languages on the server and client. That way I can keep my head in a single language regardless of where my code runs. My goal is to increase the banality of my language. The problem isn’t that PHP is banal, it’s that PHP isn’t banal enough.