This is not a good thing! It's one of the biggest reasons why the overall state of PHP development, @fabpot and friends excluded, is absolutely terrible.
One person having limited experience with professional PHP development doesn't make it the overall state of PHP development.
The majority of PHP development I've see use these community frameworks like Zend and Symfony. They also use a lot of other well established tools. Things like CodeCoverage and PHPUnit, xdebug, and countless other solid, well written tools.
I'm sorry, but when people refer to PHP development and relate to WordPress or Drupal, I can't help but shake my head. If that's your idea of professional level PHP, I'd hate to see what you think professional level code in your language looks like.
The overall state of PHP development is doing well. We have a lot of professionals writing solid code. Yes, we have a lot of people that flock to WordPress and Drupal, or pick up CI and think they are following best practices in PHP. Many move off to a framework in another language, thankful to get away from PHP and the horrible code it forced them to write.
The problem is less the language, which is slippery and broken in interesting and different ways from version to version but generally not in ways that are real killers. The real problem is that those people that you say aren't professional developers (and they're not!) and are considered important use cases. This is a language where the core developers actually care about people who splat HTML in their PHP and vice versa. They're the people who don't even know about mysql_real_escape_string (LOL), let alone PDO or doctrine-dbal. And if those guys are just hanging on, great, more power to them, but the core PHP team actually cares about the use case for these people, while for the most part, they really don't seem to care about the use case for people who want to Do It Right. The distaste from guys like Rasmus toward the various framework projects is well-known and I kinda think it has an impact on the language itself.
This is I've seen as commonplace PHP development:
-Misuse of Mediawiki as a corporate intranet, using and extending scary plugins like template parser functions.
-Autogenerated CakePHP monstrosities that barely function and doesn't if you have to make significant changes.
-Home-rolled extensions to Drupal for that one little thing that SomeCo's website really just had to have. Ditto Wordpress, ditto Joomla.
Don't get me wrong: it is entirely possible to write good PHP. I'd say, with a decent bit of conviction, that the possibility of doing so goes down sublinearly with the amount of code/feature-points/other-measure-of-size and goes down superlinearly with the number of other people touching your code. But it's totally possible to do so. I wouldn't have used it for most of a decade if it wasn't. But I am entirely and completely convinced it is the sad minority, with the crazy majority largely catered to by the PHP development team, and it's a major reason why I've gone on to saner pastures.
Maybe this is why my view is the way it is. I've never had to deal with the above. And I honestly don't see how a professional could work in that environment (I mean, honestly, how does someone choose to work with Joomla, and then have the gall to complain about it).
The majority of people I deal with (the very large majority) are professionals in their craft. This means they aren't just PHP developers, but when they write PHP, it's professional level code. It's what you'd find being written for any other language.
I find it odd that every time someone rags on PHP, it's generally always involves WordPress, or Drupal, or Joomla, or something akin to that. And when I read that, I understand why someone might feel that way. But then Drupal and WordPress or Joomla aren't fair examples of anything I've written in PHP. In fact, a part of me has the hutzpah to think that if you decided to use them as your tools to do something, it's your own damn fault.
So yeah. Maybe their is a large population I'm not involved with, that I know nothing about. I can't say your examples strike a chord with me. I don't have a hate for developing with Joomla because I never wanted to go there. And what little work I've done with WordPress was painful because of the architecture of WordPress, not PHP.
I'm just tired of very HN post on PHP has to result in retards (not necessarily you are mgkismal) coming out to post childish comments, or how everyone has to pepper their comments with weak shit like "Oh, I'm such a great programmer, and if I had to use PHP -- not that I have to, thank GOD for THAT! -- I'd polish that turd, LOL!"
It gets tiring. And it's insulting. Not because they are insulting a language I use. Rather, it's insulting because the community here encourages it. It's accepted. And I like to HN is filled with smart people who will judge me based on the results of my work and not the fact that fact that I didn't use a Craftsman hammer, but instead a plain wooden one that goes the job done equally well.
Sorry for the rant.
Read this again:
"Only a portion of web work I've seen in PHP uses any community framework."
I see a hell of a lot more PHP than I actually work on myself. I've run multiple PHP groups over the last decade, and have consulted with well dozens of companies of all sizes during that time frame.
What the hell - take me out of it. Look around at most PHP code out there (go look at github or sf). It's not based on Symfony, ZF, Cake, CI or whatever your favorite framework and tools may be. That's just how it is. I didn't say it was good, but it's the state of things. No one said this was good or bad (you say it's bad, I tend to agree, but not 100%).
Yeah, perhaps I shouldn't have taken that as personally as you meant it, but I expected a bit more from you Jason. Maybe you meant that comment more at the OP - not sure.
I was a bit harsher than I should have been, but I also see quite a bit, and it's encouraging. Sure, if you look around github and SF, you see a lot of libs/class that aren't built for Zend or Symfony, but then they shouldn't be built around a specific framework. Heck, even Zend/Symf attempts to make each component indecent and replaceable.
And while you have big names like Drupal and Wordpress, people constantly prop those up as if somehow they are prime examples of professional level PHP code. It would be like me saying Ruby can't run on busy websites and use Twitter as an example. It's just old news.
And regardless of when you started PHP, it's fairly clear you haven't been as involved with the community over the past few years (or if you have, nothing in your comment gives that impression). Otherwise, you'd know about all the projects that are being launched/have been launched on top of frameworks. Open source projects, community projects using Zend, Symonfy, CI, etc.
The professional PHP community isn't made up of some rag tag group of people who don't know better. It's made up of incredibly smart people who write excellent code. I'm sorry, but nothing in Python or Ruby or any other language makes you a better programmer. They are excellent languages, but I've yet to meet a language that can fix stupid (though, some support it better than others).
I'm sorry if I offended you. But, I enjoy PHP. It's an amazingly flexible language. Yes, it has warts, but it gets frustrating every time the topic comes up on HN, people rag on it like somehow it's the worst thing since sliced bread. It gets tiresome. Worse than that, it gets insulting.
And for what? What's the point? What's the fucking point? I could easily point to Diaspora's initial launch and say "Yeah, awesome! That's what all that money buys you for an awesome open source Ruby project." But I don't. Because it's stupid. Its childish. Its pointless.
So yeah. I get it. PHP is the red headed step child that everyone likes to beat on. And that I like it makes me an immature stupid twit that doesn't know the first thing about programming. My respect for fellow professionals be damned, as they don't have a clue either. And by choosing PHP as my choice for a web language is based on clear brain damage at the hands of too many cold winters up north.
So yeah, this is me venting. And I don't mean to do it all over you. But it gets tiresome that every time there is a post about PHP, it has to consist of people bad mouthing anyone who chooses to use PHP, let alone the topic at hand.
Sorry for going apeshit all over this, and sorry for ragging on you. Your commentary is generally well appreciated. It's just getting tiresome, and I guess a part of me responds to all the comments in one.