PHP Becoming More Popular
IO ERROR pastes "'PHP has earned the title "Programming Language of the Year 2004" with a positive delta of more than 3 percent within 1 year. The launch of PHP version 5 is generally regarded as a further step to maturity. It is expected that PHP will be capable to maintain its top 4 position for a long time,' according to the TIOBE Programming Community Index. 'The index is updated once a month. The ratings are based on the world-wide availability of skilled engineers, courses and third party vendors.'"
According to the data on my SkillMarket site, php (on the languages page) is holding steady. The data tracked is a bit different, however (Job listings vs search engines hits).
Software Wars
...that PHP is becoming more popular. It is fast, can be developed quickly, uses familiar C style syntax, and was designed from the ground up to be a web language (unlike Perl et al). For about 90% of web applications, PHP is perfect.
What is surprising to me is that PHP has a rating of 9.5%, while Perl has a rating of 7.4% (declining).
Looking at SkillMarket, there are far more Perl jobs than PHP (2629 vs 312). Why the discrepancy between SkillMarket and TIOBE?
From TIOBE's ratings explanation:
The ratings are based on the world-wide availability of skilled engineers, courses and third party vendors.
It could be:
1. That PHP is more popular outside of the US (and SkillMarket only tracks US jobs).
2. That PHP generates approximately the same number of courses, books, etc. than Perl does. After all, if there are 9x as many Perl jobs as there are PHP jobs, that doesn't mean that there would be 9x as many Perl books or courses as there are PHP books or courses.
3. Perhaps PHP has more of a following among amateurs - hobbyists who build web applications, but don't hold jobs as PHP programmers.
cmon man... just cuz you're a slashdottin' geek, does it mean you're not allowed to use normal english?
To me, it seems like PHP strikes a good balance between the strengths and weaknesses. It's got much of the same sort of flexibility and text-handling capability that Perl does, but not so much so that it suffers from the same degree of wild variability that Perl is accused of having.
The "C-like" syntax makes PHP very similar in style to a variety of other programming languages (C, C++, Java, etc.), so it will seem at least somewhat familiar to people who have programmed a bit in other languages.
PHP has support for "object-oriented" programming style, without actually REQUIRING it (unlike, say, Java [or Python?]), so both OO and procedural programmers can feel somewhat comfortable with it.
PHP has a lot of built-in functionality to simplify dealing with connections over the network, e.g. to web servers, ftp servers, database servers, etc. - this and text handling are PHP's two biggest strengths in my opinion. Note that in my own experience I've found the PHP is useful for a lot of the sort of non-web-based "command line" administrative tasks that traditionally have been handled by Perl.
Or in summary - PHP is a nice "middle-of-the-road" sort of language. It's not the "best" language for very many programming styles, but it IS "pretty good" for a lot of them, so regardless of one's own preferred style PHP will usually not be completely uncomfortable.
My own, possibly misguided opinion, obviously...
Hacker Public Radio is our Friend
Heh, PHP is rising in popularity, just as I'm moving away from it. Seems I still manage to avoid the mainstream languages. :-) Or maybe it's just that I know more now than 5 years ago...
...)
Seriously, when I first learned PHP, I thought it was the best. Here's a language specifically intended for web development, with familiar syntax and function names, and support for everything you might need.
These days, I think PHP is an inflexible language, full of kludges to make up for it. I've grown to dislike C syntax, and I also feel the typical (in PHP) mixing of PHP and HTML is bad (what if you want to generate a different output format?).
Also, I have learned that good general purpose languages can often be used instead of a given special purpose language. About the only requirement is that the language be flexible enough, and has the needed libraries. There are several languages that fit the bill for web development (Ruby, Python, Common Lisp, Perl,
Please correct me if I got my facts wrong.
Oh come on... If you are witing ugly PHP code then you don't know the language.
Have a JAVA/.NET developer look at PHP5 and they'll tell you how it exudes enterprise level features.
Add Smarty and PEAR to the mix and you have one hell of a platform.
I believe that PHP should be taken for what it was meant to be: a flexible web language. Yeah, it can also do some command line scripting, and it can be quite good at it. But just by browsing through php.net and looking at the built-in functions, you can see that it's obviously geared towards web use first and foremost. My website uses PHP exclusively, and we've been able to do some pretty amazingly interactive stuff with it, in combination with MySQL.
You have to use a different scale of "expertise" here - there is a _huge_ difference between the average self-proclaimed "PHP consultant" and someone who actually knows something about (web-)programming.
I'm about finished with a several-month project that I had to do in PHP for the sole reason that it was the only language used in the servers, and I've been constantly amazed by the horrible design of the language.
Judging from the posts on USENET and several PHP-related forums, it seems that the average PHP user has no clue, and uses PHP because he has no idea of anything else even existing. That's why the grandparent comparing PHP to Windows et al. is quite right.