PHP has been a staple of Web development for longer than Wikipedia’s existence. But the language has rarely received much love from the software development community due to its less bureaucratic governing body and reputation for being copy/paste friendly. But the PHP community is still growing, as is evidenced by new offerings from Amazon and Zend for the cloud, and a new effort to write the first-ever specification for the language.
Amazon has certainly embraced the language. In early August, the company invested an undisclosed sum into Acquia, the company that offers commercial support for Drupal, the PHP-based CMS. Zend earlier this month announced a collaboration with Amazon to bring PHP frameworks and patterns into Amazon Web Services. Part of this agreement includes support for Zend Enterprise Server 7 in AWS. That new version of the Zend PHP suite includes a new tool known as Z-Ray, which allows developers to debug their PHP applications.
(Related: Parse creates SDK for PHP)
Jeffrey Hammond, analyst for Forrester Research, said that PHP came up as the fifth-most popular language among the enterprises his firm interviewed. “It kind of rounds out the Top 5 languages used by frequency in our data survey, and has again this year,” he said. “One of the interesting things about it is it represents a different developer segment than most companies are used to working with. In the SMB space, and in the Web commerce space, they tend to reach for PHP, so we see more and more on customer-facing applications.”
Hammond said that two of the major reasons for PHP’s continued popularity are Facebook and Drupal. “There are so many folks who have this love-hate relationship with PHP; the folks that are hardcore language geeks deride PHP by saying it’s all copy/paste, but on the other hand that creates an extremely powerful draw for folks that are maybe getting into programming for the first time,” said Hammond.
Andi Gutmans, CTO of Zend Technologies, said that “PHP has had a lot of innovation in the past 18 to 24 months.” He attributed this to numerous factors, including a general trend toward dynamic language in the industry. He also said that enhancements to the PHP tool chain, frameworks and Drupal have driven innovation in the language.
“If you can get quality in at the development stage, you save time later on,” said Gutmans. “But today, continuous integration only happens when the developer checks in code. What if we can go in and change the way developers write code? Z-Ray provides developers X-ray vision into the application and [shows] how the code is running and how they’re developing. We just show that to them in the browser so they don’t have to change their workflow.”
The development community’s enthusiasm for PHP has also driven Facebook to push for a specification for the language. Today, the PHP language evolves through proposals posted on PHP.net by the community. Proposals are considered and voted upon, and if accepted, they’re implemented.
But Facebook’s HipHop Virtual Machine has driven the need for a formal specification for the language, as it is now being implemented in different ways by different teams. Compound this with the fact that PHP is going to be getting some much more technically complicated features in the future—JIT compilation being high on that list—and you’ve got a recipe that calls for some serious clarifications within various implementations.
“The specification is basically modeled according to what PHP is today,” said Gutmans. “As you’re writing the specification, there are always minor questions of ‘Does this really make sense? Should we clarify what the intent was?’ I think those kinds of clarifications—and we constantly clean up from version to version—but those kind of things could create a discussion. The language doesn’t force you to have only one default switch.”
Despite this new effort for a specification, Gutmans said that he hopes the PHP community process does not end up looking like the Java community process. “It’s an incredibly heavy process. PHP is a much lighter process. There’s discussion, voting, and if certain thresholds are met, those things are accepted into the language implementation,” he said.
Forrester’s Hammond said that “PHP is a great language for getting things done on the Web. That’s part of why moving to a formalized specification is good. Maybe it’s a way to resolve that tension between the language zealots and the larger community of PHP users.”