Summary
I am a React Developer and I wasn't willing to give Wordpress a chance, up until recently.I was wrong about Wordpress.
This blog post is about bias, realizations and valuable learnings.
A few words about React
I learned React in 2019. And since then it's awesome to work with. A few weeks later I stumbled upon Next.js, a progressive React Framework that gives React the horsepower it needs to be fully off the leash. The recent release of Next.js 12 makes me even more optimistic about this technology.However, even using the superior Next.js to build a client website is intense. Let's say your client wants a playground. With Next.js or any other Javascript framework (e.g. Vue / Nuxt.js, Angular, ...) you first have to build the swing, the seesaw, the slide, the sandpit and the cable car before you can put things together.
Of course there are plenty of packages that can help you to abstract things and make your life easier. Still, the framework on its own leaves you pretty alone and you have to connect the dots yourself in order to build something great.
To be clear: The modularity in javascript frameworks (that they are shipped barely blank and you have to extend them with packages) is by design. That way you end up only using the code that you actually need, rather than having a bloated bundle of code that you're not using anyways.
And Wordpress?
Let's get back to the playground example. With Wordpress, instead of building all the different items manually and then putting them together, you would rather start with a full playground. That playground would then look wrong - it has the wrong color, it has climbers even though the client didn't want it and it would miss a swing. You would then tweak the playground to finally match the client's vision.TL;DR: Wordpress is optimized to give you all the tools you need to build a website directly out of the box. You can set up a basic blog within 1-2 hours, while building a usable blog in React can take hours or even days (trust me, I speak from experience, as this blog is built on React).
Why I was wrong about Wordpress
All I said above is nothing new. Everyone knows that Wordpress is a "building block" system, and that it's the solution for Content Management. So what were my misconceptions that held me away from Wordpress?"Everyone can do Wordpress"
It is very easy to get started with Wordpress. In many cases, you don't even have to code a single line.Maybe because of its simplicity and straightforwardness I was like:
Come on, everyone can build a website using Wordpress. I want to do something that other's can't do so easily (custom coding), that will set me apart from the competition!To be clear, my custom coding skills are indeed a skill that sets me apart from no-code developers, especially when you have to do CSS or Javascript tweaks within Wordpress.
My wrong assumption rather was that Wordpress is easy to master. While Wordpress is easy to learn, mastering it is a different story.
Another misconception was the belief that I should use the more complex technology (React, Angular etc.) because a toolkit where you can do more must be better. I noticed that this is simply wrong for some use cases. Why hunt down a fly with a flame thrower when you can simply use a swatter?
"Wordpress misses customization"
The second bias was that the Wordpress widgets you insert are not customizable to the degree I want them. I was so wrong about that.For instance, Elementor lets you change all common CSS properties of the elements you insert, and if you're not satisfied you can always add custom CSS.
React vs Wordpress: What's next?
So, is Wordpress my favourite technology now? Will I choose it over React from now on?The answer is simple: It depends. Apart from all advantages Wordpress also has cons compared to React:
- Worse performance because of the bloated bundle and plugins
- Many plugins cost money, while in React you get much more packages entirely free
- Next.js offers Vercel as completely free hosting solution (even including SSL), while for Wordpress you have no or extremely limited free hosting
- Most of the things you learn are wordpress-specific. That means when changing to another CMS you have to learn the syntax all over again, while with learning HTML/CSS/Javascript you will quickly find around in any framework.
I for my part are very thankful that I got to know Wordpress, used it in my first project already and can use and enhance it from now on as part of my tech stack!