Fail and You Terrible things are about to happen in Microsoft's web application hosting environment, Windows Azure. Redmond's Slugworth, desperate to keep up with Mountain View's Chocolate Factory, has introduced support for PHP on their web application platform. Microsoft's Windows Azure is a competitor to Google App Engine and is trying to gain popularity by supporting interoperability and standards. And don't fall asleep within four hours of reading that sentence or a blood vessel will burst in your brain as your subconscious tries to make sense of it. You've been warned.
Both App engine and Windows Azure boast a promise of automatic scalability to developers, in the same fashion that a traveling salesman in the early American 1800s with his straw hat, red and white pinstripe suit, and assistant midget boast that their secret-recipe tonic will cure all that ails you.
Step right up, friends. Boy, have I got an offer for you. Have you got problems with scalability? Are you too incompetent to denormalize your data schema to optimize hot access paths? Do you write N-squared loops and blame poor execution speed on your runtime environment? Well, then step right up because I've got the solution for you.
The danger of these fast talkers is that they can convince a bad programmer that he's a good one. Google does an adequate job of keeping out the troublemakers by restricting App Engine to Java or Python. Now, say what you will about Java developers, but when App Engine first launched with support for Python, they immediately made it clear that you must be at least this awesome to ride.
In response, it appears as though Microsoft is taking what I like to call the Little League strategy: Everybody is a winner, even the kid who got smacked in the face with a line drive hit and waited out the rest of the season listening to adults struggle to tell him that it doesn't look that bad.
Yes, let me introduce you to the professional PHP programmer. You see, PHP is like a handgun. On its own, it is simply an inanimate tool that has no moral leaning. In the hands of a responsible citizen, it can be used to the benefit of society. But in the hands of someone who is untrained or mentally unstable, it can be used to commit horrible atrocities.
Whenever there's such a tragedy, other developers are quick to blame PHP. If PHP were illegal, then Yahoo! would never have happened. If we regulated PHP tightly, then there would be no Digg. Now, it's not fair to say that the world would be better off without PHP, but its community could certainly use less encouragement, which is why Azure's support for PHP worries me.