I’m a self-proclaimed Ruby evangelist. I ask people all the time to challenge the assumptions of the platform they are working in. I challenge people to keep an open mind. Today, a friend of mine challenged me on twitter to do the very same thing about a technology I have trouble finding the good side of. I know that others have already built a list, but I wanted to write this list independently of others.
Keep in mind though, this comes from a developer who now spends a significant portion of his time in marketing, sales, training and evangelism. The things I see are from my context.
So here goes. 10 things I like about PHP.
1. An open community:
This does not stand in contrast to other communities, however, the php community seems to be very open and welcoming. From the outside, I see very few walls.
2. The community takes care of its young.
Along those same lines, the barrier of entry to PHP still seems to be kept quite low and welcoming. Having been a part of the Rails community for quite some time, I’ve seen us forget about those trying to enter the community one too many times.
3. The ubiquity of CMS options
While we do have things like Radiant and such, we do not have as many options for quick content managed solutions.
4. The hacking culture is alive and well
If you think I mean this in a negative way, go read Hackers and Painters and come back. Sometimes you just want to rip something out, not worrying about the ceremony of it all. Get out a proof of concept quickly.
5. They respect and fight for web standards
The community has been some of the most outspoken people when it comes to truly open web standards. They don’t sacrifice standards for tools like some communities and platforms.
6. They have great sales examples
I’ll admit, I’m completely jealous of the fact that they can say that Digg, The White House, and Facebook run PHP (even if Facebook compiles it down to C++ first … I think that’s a bit cheating).
7. Numbers
If you are going to analyze a technology you cannot help but look at mindshare. The community is huge. There is no denying that.
8. Diverse skill set
As I eluded to earlier, they take care of their young. In doing so you have a lot of great developers, and a lot of developers that are good, and a lot of new developers. For a community to thrive you have to have a great mix at all levels.
9. Microsoft support
Now I admit to saying this with a bit of a bitter taste in my mouth but Microsoft has thrown its weight completely and totally behind PHP. No matter how much many of us like our Macs, Windows is here to stay. If any community is to grow (especially in companies) it has to be a technology taken seriously. In the Ruby and Rails community we have fought hard to keep Windows support there, but it has been almost entirely community driven (one click installer, etc). MS has donated thousands of lines of code back to the PHP community to make sure it operates well. Yes, I’m bitter. If Rails had 5% of that kind of support, we would have a much easier time.
10. Easy to deploy
PHP comes included in everything. If you want to get it out there on the web, its a no brainer. Despite people thinking this is a softball answer, it is not and should be pointed out. I personally believe it is a large reason many people choose it.
Do I think PHP is a good business choice? No. Do I think there are good things about the language and platform? Do I think other communities could learn a lot from them? Most definitely.
Thank you for once again, making me take a real good look at something and making me challenge my beliefs.