I read a very dissapointing post by Anthony Ferrara called Rambling on Internals last week. It describes how frustrated Anthony has become with PHP’s internals mailing list, the process that PHP uses to select and create new features, and the plain fact that there are many trolls on the PHP internals list who have their own agendas, not the agenda of the PHP project, at heart.
Reading Anthony’s article was an eye-opening experience to the challenges that PHP faces. And while I can’t say that I agree with all of his statements or choices, I can say with some certainty that I understand his point of view. PHP Internals has long been known as a troll’s paradise.
And then, just today, there was this discussion.
The speed at which the discussion degenerated into a shit slinging contest was stunning. Truly.
The truth is that every open source project has challenges, trolls, people who have their own agendas and individuals who aren’t interested in adopting new ideas. And every project has to figure out a way to solve these issues, in order to move forward.
PHP is the world’s most widely spread language, available on almost every single web server you can buy from a third party. And yet, despite PHP’s success, instead of focusing on improving the innovation and usefulness of the language, it seems people are more than content to celebrate its successes and assume we’re done making things better.
Great ideas like named arguments, function autoloading and others fall by the wayside as “invented problems” or “unnecessary additions.” PHP 5.5 has just been released with the smallest user-facing feature set I’ve ever seen from PHP; sure the “yield” keyword is useful, and the opcache was a tremendous amount of work. But where are the improvements to the object model? Where are the new libraries that made it into core? What have y’all been doing for a year?
Oh, right, you’ve been fighting over silly things like whether or not named arguments and scalar type hinting are invented problems or not.
I don’t know how to write C code, and even if I learned I’m pretty sure that the PHP code base would suck my soul dry. I rely upon the people who work on internals to do great things so that I can do great things, too. If internals descends into chaos and sheds good developers like Anthony, then we all stand to lose. PHP will slowly decay into a second-rate language, and our dominance over the web? It will end.
PHP’s cause of death will be us. We can’t let this happen.
Frustrated with your company’s development practices?
You don't have to be!
No matter what the issues are, they can be fixed. You can begin to shed light on these issues with my handy checklist.
Plus, I'll help you with strategies to approach the issues at the organization level and "punch above your weight."