I read an article today about how PHP is exploding on Google App Engine. How is it that one of the most despised programming languages in the word is running (as Google claims) up to 75% of the web? Many nay-sayers will say “oh it’s just WordPress” or “oh, it’s just PHPbb”. But in doing that they are completely missing the point.
The proper response to this is not trying to dismiss it, but asking why it is that PHP-based applications just seem to always be the ones at the top of the list? Some may answer that PHP’s ubiquity gives it a default advantage but that still dodges the question. WHY is PHP running 75% of the web? Hosters don’t just say “hey, let’s throw X programming language on our web servers!”
It comes down to demand. There is a lot of demand for PHP. That’s why hosters put it on their web servers.
In the article Venture Beat says “PHP is moving to the Enterprise very quickly”. This is not true. PHP IS in the enterprise and has been for a long time. People just either don’t know it or refused to admit it.
But, again, we have not answered the question “why”.
Many of the people who are nay-sayers of PHP are the people who have studied. And in studying they have learned that programming languages need to do certain things in certain ways. And of these things, PHP does none of them (ok, so this is hyperbole, to a point). This is a major reason why PHP has such a bad reputation among cutting edge developers, CS grads and trend-setters.
But what it also does is expose the vacuousness of the ivory tower. The ivory tower deals with validating the theoretical, testing the impractical from within a educational framework or methodology. People will often say that this approach is a more pure way of approaching the problem rather than the dirty commercially-driven interests of the private world. To which I say “big frigging deal!”. Don’t get me wrong, I think that study is good. Though I didn’t go to university I am under a continuous education program called “reading”, for the theoretical, and “practice” for the practical. Study is good. But study is not an end. Real life occurs and it is not clean, pure and methodological. What a bore if it were!
But this is real life. PHP may not solve the problem in the purest of ways; in fact it will probably be pretty dirty. But that is why it succeeds; it mirrors real life. In real life you have a job to get done. And if it takes more resources to do it properly, then the improper method will be used. Commerce and business, at their most distilled, is simply an efficient means of the utilization and transfer of resources. Those resources could be money, time, knowledge, or any combination of those or other things. It is the utilization and transfer of things that have “value”. And when you have two things that both have worth, purity and practicality, a judgment call needs to be made on which is more valuable.
PHP is valuable not because WordPress is built on it, but because PHP solved the problem WordPress was solving, easier. In other words, it solved the problem by consuming fewer resources.
Using PHP, I think, is also one of the smarter moves by the company I work for, Magento. For those who don’t know, Magento is the most popular ecommerce platform in the word and it is written on PHP. Magento is probably the most complicated application platform available for PHP and it’s STILL easier to build for than most Java web applications with a wider range of programming skills that can be utilized. In other words, it enables commerce by utilizing fewer resources than competing solutions, but still provides stunning extensibility.
An organization should require as few “top-end” developers for a solution implementation as possible. When it comes to Magento, WordPress, Joomla, WordPress, etc. you do not require a CS degree to do it. Rather than being a failure, that is a monumental success! Scarcity increases cost and so if you can decrease scarcity (developer skill required) you can decrease cost. And the real world is about doing as much as possible for as little as possible.
So how is it that Google missed PHP? That is a question that I cannot answer since I don’t work for Google. But I would surmise that it has something to do with the fact that Google didn’t WANT it there. For all their posturing about being “data driven” they completely missed PHP despite the fact that they have access to the best web data on the planet. Therefore I must presume that it’s another iteration of The Invisible Postman; also called “having blinders on”. Node, Ruby, Python; all great languages and can do some really cool things that PHP cannot. But they do not solve the problem of resource scarcity on the same level that PHP does, when it comes to web-based applications.
For software companies that are looking to break into the web there is only one language to start with. As long as HTTP is the de facto protocol of the web, PHP will be its de facto programming language. Suck up your pride, build your stuff, and be successful.
… and let the trolling commence.