Even on PHP 7, WordPress is not “Modern PHP”
Our friend Carl Alexander wrote a (possibly) inflammatory but true argument for Delicious Brains this week. It reflects a lot of thoughts I’ve had as I’ve spent the last few years as one of the small minority of people trying to span the roles of “WordPress” and “modern PHP” developer. In short, he’s said all I’ve thought in a fair, even handed, and useful way. While action is hardly guaranteed, helping to reach a public consensus about the state of WordPress PHP is the first step in evolving toward making it a modern PHP project (if that’s ever desired by enough of the right people, of course).
Here’s maybe the most important (to me) of Carl’s many good points:
Part of the reason for that is WordPress is a legacy application. The WordPress project itself is more than 15 years old, but it’s also a fork of another project called b2/cafelog. This was an open source project that had already existed for a few years before Matt and Mike decided to fork it. So all things considered WordPress is a lot closer to 20 years old.
Working with software that old brings unique challenges. Case in point: Your development practices tilt towards not keeping up with what others may be doing in the industry. This is especially true with WordPress. That’s because the PHP ecosystem wasn’t at all like it is now when the WordPress project started.