4 MAR 2014 0
One of my pet peeves in web design is how the web design community tends to jump on every new technology as the solution for everything. The reality is, we're craftsmen (and women!) with an extensive tool box, and it's our job to choose the right tool for the right job, not to try and use a hammer when the job needs a screwdriver.
So let me preface this by saying, there are certainly scenarios where Wordpress is a good solution. For example, if you need a very simple website that doesn't have many layers of complexity, or if your budget is extremely low and you'd like a pre-made template to get up and running quickly, Wordpress can be a great solution.
WordPress is an open-source content management system that can be downloaded for free. It was originally built as a blogging platform, but over the years it has evolved and is now used for managing the content of websites—and many websites do use it this way. With over 29,000 free plugins (small pieces of code that add features to WordPress), it’s a very extensible piece of software that can and is used to make WordPress meet the needs of many businesses. Unfortunately, WordPress' greatest strengths are also its greatest weaknesses.
Wordpress itself is maintained as an open-source project by a number of developers, which means there are literally tens of thousands of plug-ins- each programmed by separate individual coders or teams of coders- that are needed to take WordPress beyond very basic functionality.
There is very little control over plug-ins hosted in WordPress' own plug-in directory, and none over plug-ins that developers choose to host or sell themselves. This creates many potential headaches over the life of your website.
1. Code Quality
It's pretty easy to tell the quality when it comes to the actual design of a website. You look at it, and either it is well put together and visually appealing or it's not. It's not as easy to determine the quality of the code. Very few of us are able to look at the source files of a program and be able to determine if it is programmed well or not.
When features need to be added to a WordPress website, your website designer will download a plug-in, add it to your website and then customize it as needed. The quality of the code varies greatly, and it doesn't always get vetted before making it into your website.
Why is code quality important? Simply, poorly coded software tends to break often and therefore requires ongoing maintenance. This leaves you in one of two situations: Either you're always paying your designer to fix poorly coded plug-ins on your website, or your website is broken and you can't get a hold of your designer to fix it because he's busy with the next project.
2. Frequent Updates
Right about now you're saying "Hold on! Updates all the time, that's a good thing right?"
It is a good thing, but the problem lies with the structure we talked about in the first point. Since Wordpress is updated by a group of developers, you'll likely have anywhere from 5-10 (or more) plug-ins that are each developed by a different group or individual.
Major releases can and often do break one or more of your plug-ins, so now you'll have to rely on that developer to update his plug-in to support the new version, or pay someone else to try and fix a codebase they did not initially create.
A large majority of the time, plug-ins are developed as a hobby and offered for free, so if the developer gets bored of the project or busy with something else, there is no requirement for them to ever update their plug-in.
Combine this with a very aggressive update schedule (three major version releases scheduled for 2014 alone) and you've got a recipe for a lot of time and money keeping your site up to date.
What's that? You'll just not update WordPress when new versions come out? Hold on...
3. Updates are Not Really Optional
WordPress is open source, which is why it's free to download, but that means anyone can download and look at every line of code. Even shady individuals with malicious intent. I'm not suggesting that WordPress is an insecure piece of software, it's written better than most! However, no software is perfect, and it's much easier to find vulnerabilities when you have complete access to the source code.
In this regard, WordPress is a victim of its own success. It's so prolific that it's a very attractive target for hackers. Updates are so important with WordPress that all newer versions come with automatic updates turned on. Even if you keep WordPress completely updated, you're not entirely safe, as a plug-in you're using could have a security exploit that results in your site being hacked as well.
If you don't update WordPress , it's not a matter of if your site will be hacked, but when.
Here's the thing... every point I just brought up can be mitigated / worked around, with a budget and good development / maintenance practices- but for large, complex websites, using WordPress adds many points of potential failure. What's often overlooked by customers and developers alike is that there is a great case to make for simplicity.
Your solution should be as simple as the need allows, as your website is ultimately built and maintained by a human. Every potential point of failure increases the chance that something will be missed that will expose you to downtime, added cost, and extra time.
So, while WordPress can be an excellent choice for simpler websites, it's usually not the right choice for a large website. Large websites require a lot of customization and complexity, and using WordPress for these usually results in a number of issues which ultimately cost you both time and money.