In this new post on RelativeSanity.com today, J Barrett talks about "the problem with PHP", specifically that its "sucks" because PHP itself is a sort of framework started on top of a series of Perl libraries.
I've been meaning to comment on Snook's article for a while, but to be honest I wasn't sure what I wanted to say. Coming at it (at the time I first read it) from the newfound point-of-view that frameworks were the new greatest thing, it was a little bitter to swallow, but I found that I couldn't disagree with most of what he was saying.
As I've often found, the key to resolving two apparently exclusive hypotheses (frameworks suck vs. frameworks rock) that you also happen to agree with equally, is to form a third hypothesis that distills down the key points of both, and discards the semantic fluff that makes the original two seem incompatible.
He comments, using this blog post from snook.ca as a starting point, about the main reason frameworks "suck" - they're like learning a whole other language. He notes that PHP (and its frameworks) are so popular because of its low entry barrier, but that doesn't mean it's a good thing in the long run.
Rails is a framework. PHP is a bunch of bricks.