WordPress You Pig
I know it’s been a while… been busy preparing to have / caring for and raising an infant child whilst freaking out about how to make my business thrive. So not much downtime. I do have to take a moment to talk WordPress however.
This is completely subjective. If you want a more technical “observation” of the software you may get nothing out of this.
I have been developing sites with WordPress since 2007 ish. Before then, I toyed with Drupal and Joomla, but settled on WordPress and have actually managed to money developing with WordPress. Let start with the things that I like…
- Continually maintained – core updates are made regularly and the software itself continues to grow and mature. WordPress is vastly different than when I started with it and all of the changes are improvements that make my life easier and make using WordPress more enjoyable.
- Huge community – this, again, is a constantly growing and maturing mass. Even if I confine myself to Richmond, VA I have a huge network of users and developers that are willing to lend a hand or give input. You can’t find that kind of support when a package of software has no community.
- End user ease of use – this is VERY key to what I do. I am able to build and support sites that are mostly tended to by the end user. If it’s a more static site we’re talking simple page and widget updates. If it’s a larger site, we’re talking multiple posts a day. All of this is done SANS ME! Not to say I don’t want to get paid to do this stuff, but it’s important to let the end user do as much as they are capable/interested in doing. This keeps them from having to pay me for simple work that I have a hard time charging for in the first place.
And now the things I don’t like so much…
- Add-On cat and mouse – this is not necessarily specific to WordPress, but keeping the core of WordPress up to date while maintaining ones needed plugins and themes can be a challenge at times. Generally everything is fine, but once in a while there’s that one plugin that totally eats it after an upgrade. The worst is when a developer discontinues support of their software and it is neither tested or proven on any current WordPress release. This is where having a giant community is not all that good. Lots of code sitting dormant and is likely useless.
- Automatic Upgrade – if it worked with less pain, it would be great, but for every site on my dedicated servers, the FTP info seems to NEVER work. The result? I must pass ownership of WordPress to the webserver to allow for this functionality. I do know the FTP option works, but it’s not bulletproof and I have always had trouble with it. Also, end users that know enough will get into this and try to update everything. Great idea in theory, but when I hardcode ***DO NOT UPDATE*** in to the plugin description… it’s for a reason.
- Ads!? – where is the native support for ad integration!? This is why I constantly look for other options and end up with other bloated open source software to serve up ads. I feel it is likely ads could be served within WordPress more elegantly and more quickly if the ability was built in. Instead, I must maintain a completely separate package of software dedicated to ads. The solution works, it just seems to me it would be a nice thing to have in the core.
- WordPress is kind of a pig – this is the big one. Even a default, no plugin, no theme installation of WordPress runs painfully slow out of the box. I have a handful of small sites running WordPress for the positive reasons above. Some are on shared hosted services like GoDaddy and some are on my dedicated boxes. These small sites run terribly considering the small amount of info and graphics being served up. Crank it up to a big site and you are in for a frustrating treat. Seriously… an installation of WordPress serving up a static page with a few small graphics and some text should load instantly, but instead it takes a little too long making the whole site feel sluggish. Now, my main problem is on the larger scale of things. Running a big site that is graphics heavy (ish) with dynamic content added on a daily basis with WordPress is a task. Throw a busy day at this setup and there is little one can do to keep things from completely falling apart. When I say busy… I mean maybe 3000-4000 pageviews in an hour. This is not terribly huge in the grand scheme of things, but no doubt it’s pretty busy. WordPress does not have native static caching built in, so one must bang their head long enough to coax WP-SuperCache working. WP-SuperCache works well, but again, it seems to me this should be handled within the core to allow for much cleaner setup and handling of caching.
I have run WordPress on everything… shared hosting, VPS, random box at my house, and on dedicated servers. It never really changes the experience though. It takes an awful lot of work to make WordPress run well in my experience and the most unfortunate part about that is when I go to research solutions, 90% of what I find is information about WP-SuperCache. WP-SuperCache is fine, but it’s not the definitive solution. I see it patching a problem, not adding a feature. Stability under load should come in the box, not as an add-on. I guess I have reached “the next level” and maybe, possibly, I am on that bridge between hardcore coder and WordPress tinkerer, which is why I find this such a challenge. At the end of the day… I see my servers cringe when the loads are high and after throwing a ton of hardware at it, I see improvements, but can’t help but to think that the content should be able to run with much less hardware. So even though I continue to make it over the hurdles, I keep thinking it shouldn’t be THAT hard. I love WordPress… but only because I overlook the faults. I just hope I am not the only one that thinks this. Maybe WordPress is still approaching greatness and I am just being an impatient nerd, complaining on my blog.