Here's the deal: all languages have downsides. It's called "tradeoffs". Depending on what's important to you, those tradeoffs could be Really Bad.<p>Take for example my current bread and butter, C++. Because it was designed during a time when people still really cared about speed, a number of design decisions were made for the language (eg, non-virtual by default) that may not make sense today. This is just the tip of the iceberg; I trust I don't need to go on about exceptions or the various things left out of the spec or "left as a decision for the compiler implementers".<p>Now, I know many of the problems with C++, and I'm willing to admit them. It only seems logical, if you are competent at using a tool, you are familiar with its limitations and will admit to them, and maybe justify them in the context of tradeoffs.<p>This cannot be said of many who defend PHP. I'm not going to rehash criticisms of PHP, but it seems to me that the shortcomings of the language can't be justified by tradeoffs because <i>there were no benefits gained</i> by the downsides that are in PHP. It really seems like an ad-hoc spaghetti mess. That many defend this by citing irrelevant facts ("it's popular!") or debatable facts ("it's easy!") while not addressing the shortcomings <i>at all</i>, tends to lead me to believe that defenders of PHP are lacking in professionalism and probably have little experience of other programming languages.<p>That articles like this one keep coming up is a sign that people (mainly PHP defenders) can't just admit their language has downsides like everyone else's (okay, maybe more than everyone else's) and move on.<p>EDIT: A little less inflammatory.