This tweet from Kelly Vaughn caught my eye recently. It came a couple of days after another tweet from Brad Touesnard who said “I have run out of empathy for people whining about having to learn React”.
I really sympathise with Kelly, and at the same time I feel that Brad is speaking from a place of privilege. They are almost the same problem from different perspectives.
To be honest the WordPress tweet made me angry; or maybe frustrated. Not everyone has the time, money or skills, to learn React. It is not an easy thing and, as Kelly tweeted, the goal posts keep moving.
Not only is React changing constantly, but the code in the WordPress block editor is also changing. Change is good: we need WordPress to evolve, and since Gutenberg is still relatively new the way it is developed has yet to settle. But this also means you have to work hard to stay on top of the changes.
WordPress became popular because it was so easy to get started. The barrier to entry was very low in comparison to learning React. Many people got into web development because they tweaked some PHP in a theme, or some CSS on a site, and you can no-longer do that.
I’m not saying don’t learn React; if you can then I would definitely encourage it. I’ve got two plugins in the WordPress repository that create custom blocks so I’ve been through the process and learnt enough to get by.
But last week I wrote about wanting a decent grid block for WordPress. I planned how I would like it to function and started building it, but I got overwhelmed and gave up. I had bits of it working but my mind was doing somersaults trying to figure out how to make it all fit together.
Besides WordPress things, I also run Brush Ninja; an online animated Gif creator: a browser based app that you use to draw and animate images, and then download a Gif. It runs entirely in the browser. I made it in 2018 using jQuery and I’m currently rewriting it in Vanilla JS. The vanilla version has more features and less code, and there’s no React to be seen. I’m really enjoying developing it!
The barrier to entry has been raised massively, so that only those with the time, energy, and skills can contribute to the new editor (and in the future the whole of the admin).
I was pleased to see Matt Mullenweg and Matías Ventura say at WordCamp Spain that they don’t see a reason for WP to use React in themes. In fact the new site builder functionality is largely static HTML so perhaps this will be the way in for less technical people. But it’s not going to make creating simple plugins any more viable for people who haven’t programmed before.
I really want WordPress to be as welcoming to future developers as it was to me when I was starting out. It seems themes will focus on html and CSS, and so perhaps React is going to be the entryway for more technical contributors. For that to happen we need a consistent API and comprehensive documentation. Currently we have neither of those, but hopefully they will arrive at some stage.