
How many people does it take to start a movement? I guess we’ll find out.
GoPHP5.org launched today, after a lot of hard work by Robert Douglass, Larry Garfield and Marc Delisle. I know that Larry has been evangelical about contacting web hosts and PHP projects for the last month.
The purpose is to coordinate the movement of Open Source Software (OSS) projects to the exclusive use of PHP 5. Why exclusive? Because there are some incompatibilities between PHP 4 and PHP 5, developers often write workarounds to cover both cases. And, in other cases, we have to avoid using functions that are PHP5-only. Frankly, that just doesn’t make much sense to me.
For me, the whole thing started in Sunnyvale, during Dries Buytaert’s “State of Drupal” talk at the last Drupal/OpenSourceCMS meeting. After his informal talk, there was open Q&A. And, since we were at Yahoo!, Rasmus Lerdorf was handling the microphone for the audience.
The two had a friendly exchange about why more OSS projects didn’t use PHP 5 (Drupal 5.1 and the upcoming 6.0 both run on PHP 4 and PHP 5). The basic answer, from Dries (as I recall it) was so many of our users rely on shared hosts and most shared hosts still only offer PHP 4. Now, pride in his work aside, Rasmus has a vested interest in getting people onto PHP 5 as a platform: if the developer community doesn’t use it, support for new features will fall off, and the proect will suffer. Dries discussed this right after the Sunnyvale conference. Rasmus also faces the challenge that the PHP working group can’t force people to drop PHP 4. The code is loose, and people can do as they like.
But there are great benefits to moving development to PHP 5 (especially if you like to pass data around using XML).
My position on the issue is simple, but its a complicated kind of simple.
- I work for a large company where we use PHP 5.2 exclusively in production.
- On my development machine, I code and test on PHP 5.1.6 (thanks to Marc Liyanage).
- My web host (for this site) runs PHP 4.4.x
- I develop and maintain a Drupal module
- The company I work for runs Drupal and Joomla sites, and Jonah Braun is on our staff.
So one day Jonah was having a barbecue and we started talking about the PHP 4 / PHP 5 debate, and the role of Drupal and Joomla. We agreed, in theory, that the problem for both projects is this: If one declares a move to drop PHP 4 and the other doesn’t, the project risks losing users not based on quality, but simply based on the availability of PHP 5.
Now we work on different projects, but Jonah and I agree (I think) that your decision to select software should be based on the merits of the product, not forced restrictions. So we thought: Hey, if we both declare that we’re moving to PHP 5 on some arbitrary future date….
After that conversation, I sent a note to Larry (who I knew was working on cool PDO features for Drupal that, yup, require PHP 5), and he thought it sounded like a good idea. That exchange spawned this soon-to-be-infamous post to the Drupal development list.
Since then, thanks to Larry and Robert and everyone else who has commented on, worked on, or debated about the proposal, the GoPHP5.org movement has gathered steam and leaked out to the greater world.
And that’s a good thing.