There are a lot of reasons already discussed, this one is especially famous: http://me.veekun.com/blog/2012/04/09/php-a-fractal-of-bad-de... PHP is not a exceptionally bad platform from a technical perspective, it usually gets the job done, is reliable, easy to operate and performant. But i guess the real reason why so many developers - including me - hate PHP is that plain PHP is pretty boring. It doesn't have opini…
The CodingHorror blog have been quite vocal on the tour too : http://www.codinghorror.com/blog/2012/06/the-php-singularity...
Remember the immediate visceral reaction you had to the double-clawed hammer? That's exactly the reaction most sane programmers have to their first encounter with the web programming language PHP.
First of all, I didn't have a visceral reaction to that image (and I'm not sure Jeff knows what that word means), but setting that aside, the second sentiment is just wrong. PHP doesn't cause that reaction on your first encounter. Most of its ugliness is in a bunch of little things that you learn to deal with over time.
Another example. He says:
What we ought to be talking about is not how terrible PHP is – although its continued terribleness is a particularly damning indictment – but how we programmers can culturally displace a deeply flawed tool with a better one. How do we encourage new programmers to avoid picking up the double clawed hammer in favor of, well, a regular hammer?
And in the very next paragraph:
Despite the serious problems with PHP, I was forced to consider it. If you want to produce free-as-in-whatever code that runs on virtually every server in the world with zero friction or configuration hassles, PHP is damn near your only option.
I don't know how he doesn't think that contradicts his previous point. Actually, now I'm not even sure what his previous point was. Inexperienced programmers are wrong to choose PHP. But, also, PHP is the best choice available.
I won't go paragraph by paragraph, but these things really add up when reading his writing.