mkaz.blog

Modern WordPress Development

There is a good discussion on modern WordPress development and a general lament about it's complexity and change in the developer experience.

Chris Wiegman tweeted out

The deeper I get with modern WP dev the more I understand why newer devs don’t like to work on it. This is not the same project as it was in the past. The learning curve is now extremely high regardless of past experience.

Chris Wiegman (@ChrisWiegman) July 27, 2021

Chris continued this discussion in a blog post telling his WordPress story and how he's been able to make a living as WordPress developer the past 10 years.

The overall problem I have with the argument "that development is complex" is it ignores the different times that we are now living in. It is nostalgic for a simpler time when just getting a web site published wasn't simple.

The new competition for WordPress isn't really other CMS like Drupal, Wix, or Squarespace, but its true competition is if people even want or need a web site anymore. And you can look at the numbers and usage, people are opting for Instagram, Twitter, and Facebook.

It is much easier to create an account and post on one of the large social platforms than it is to setup a WordPress site to publish. And people are doing just that, running businesses on these services without the need for a site of their own.

Instagram + Venmo: small business platform

Now, obviously I work on WordPress, and believe owning your own content, running your own site, and controlling your own destiny is important. But then I'm a technologist and care deeply about open source, the majority of people are not.

For WordPress to be able to compete with social platforms it needs to become easier for people to publish. This is what users now expect. Look how amazingly easy it is to publish a photo on Instagram, it can be published within a second of taking the photo. Likewise, publishing text on Twitter is practically effortless.

For someone to choose WordPress it needs to offer them something they can not do on the other platforms. So on one hand it is trying to becoming easier to publish, but it also is trying to empower people to be able to create more complex posts with rich layouts and media than could be done before.

This is a distinct change from older WordPress where development was easy. It was doing less, it was basically plain text hand-coded markup being shoved into a database and then regurgitated on the front end. For a typical author, writing and composing posts was harder, discovering features was harder. Any customization to design, or advanced layouts were either not possible or required custom code by a developer.

Also, one of the reasons people could make a living being a WordPress developer because it was more complicated. There is a self-preservation argument here, "you're making it easier for the users and harder for developers". It's true and it kinda sucks when our cheese gets moved.

But getting back to Chris argument, yes, it is a more complicated developer experience and requires to know more; but the platform is richer and can also do so much more now. This requires a new set of tools and development process to support.

If WordPress doesn't advance and move the entire platform forward it will fall further behind and no one will choose it. Everyone will just choose Instagram, Facebook, and Twitter; and that sucks even more.

So yes, I wish it were easier to build complex rich interfaces that enable more features, but that is the technology present we live in and WordPress either adopts it or falls behind, just like every developer who wants to stay relevant.