It’s time for some quality control for WordPress plug-ins — a proposal
By: John Risby
Tags: Quality Control, Quality Assurance, Wordpress Plugins, WordPress, Woocommerce

When you post something on the Facebook WordPress group on Christmas Eve about the poor quality of plug-ins and it gets 131 reactions and 118 comments within a few hours, basically all in agreement, you know you are not alone in how you feel.

The post in question was about the poor quality of far too many WordPress plug-ins, including paid for premium plug-ins, not just free ones.

To be clear from the outset, I’ll continue to refer to plug-ins throughout this but I also mean themes and all other WordPress products, services and add-ons.

I’d been meaning to write something about this for a while, but I’ve been busy non-stop with a new WooCommerce site and my main business for months.

It’s clear from my own experience, and validated by many other people in the Facebook discussion on Christmas Eve, that too many WordPress plug-ins are simply not up-to-scratch.

This not only damages the reputation of WordPress but also wastes valuable time that developers, web-site builders, designers, and end-users don’t have to spare.

There are many reasons for this poor level of quality including the false idea that anyone can write a plug-in and sell it, an almost universal lack of quality control, a lack of knowledge many developers of the industry the plug-in is written for, and often poor documentation and best practices etc etc

In recent weeks I’ve personally fixed a number of paid-for plug-ins on behalf of the developers simply because I just wanted to get them to work and couldn’t wait for them to do it. Almost none of them gave any thanks, or even an apology for their code simply not working. And I’ve ended up getting refunds on too many for my liking.

Refunds costs us more money than developers lose

I don’t want to ever have to ask for a refund for a plug-in. if I do it means I’ve already lost more money than I’ll get back because of the time wasted and the delays in the project which mean delays in earning money.

The option to refund should always be there of course — and not all plug-ins offer them — but when you buy something after researching the plug-in itself, competing plug-ins, reading reviews etc, you should have a good idea if it will work for you or not. Refunds should be rare. Any company that refuses to offer refunds because of the potential for fraudulent refunds presumably doesn’t understand the huge market for nulled plug-ins.

Nulled plug-ins are obviously bad for developers, but they are also bad for the future of WordPress and the end user. If developers don’t earn what they deserve from their hard work and skills they will stop developing, and then everyone loses out.

But many people have told me they use nulled versions first to test plug-ins because of the poor quality of so many and difficulties in getting refunds. I’m sure some go on to pay the developer, but many will probably not get around to it even if they do continue to use the plug-in.

What’s wrong with existing review sites?

If you need a plug-in to achieve a particular task it’s easy to search Google and find lots of reviews that should help you make a decision on which one to buy.

But if you do this, you’ll find that many — most? — of these ‘review’ sites and compilations of ‘best plug-ins for X’ are written by people who have never tested them in real life, or if they have ‘tested’ them, they may have installed them, looked at the settings and concluded it works.

Many of them are nothing more than lists of affiliate links where every plug-in ’works’ and is ‘worth buying’ — ‘just click here please’. Ker-ching!

Someone suggested WPHive which I’ve had a brief look at and their stated aim is to provide a better repository of plug-ins which is great. But, from what I can gather, it is based largely on automatic code testing.

While there’s certainly a role for automatic code testing, it’s not something that can be easily done by anyone except for the actual developers of the code. And it seems most plug-in developers don’t have the level of knowledge to set up and run correct unit testing.

WPHive explain that their system will fail and mark a product as having major errors if their automated system finds any error at all. And it fails if the plug-in has any dependencies that are not core WordPress. So, straight away, lots of plug-ins will fail their testing as they do rely on other plug-ins to work.

This is not an attack on WPHive. I don’t know enough about it to make any definitive statements but certainly the level of automatic testing they describe and how they mark plug-ins as having errors is clearly not a viable method to prove conclusively if a plug-in actually works properly.

So, what’s the answer?

It’s only by actually using a plug-in on a real project, that has real-word consequences (normally financial), that we can see if it works well or not, and what its limitations are.

People using a plug-in in a professional setting can provide valuable feedback that helps other potential users/purchasers of the plug-in, the developers, and the WordPress platform as a whole.

Reviews on sites like Codecanyon are often superficial and in some cases clearly fake (this applies to other sites as well, I’m not pointing my finger solely at Codecanyon).

Genuine queries, bug reports or complaints often go unanswered by the developer, or they reply with a promise that ‘a fix is coming in the next release’ and months go by without any fix.

Going back to WPHive, their aim is to quality-check every plug-in and claim to have tested 50,000 so far — although as I’ve already said, this is based on simplistic and flawed automatic testing.

Yes, there is a role for some automated processes, such as checking ratings on other sites, checking how often something is updated, running profile testing to measure the speed impact of the plug-in and so on. These are all valuable metrics.

But only by real users installing, configuring, and working with a plug-in can genuine feedback be gained that is useful to others.

A plug-in can look amazing until you start to use it and you realise it lacks basic features that it appeared to have, or should have, and the developer either refuses to add the feature or, worse, tells you that you don’t need the feature (and that’s especially annoying when they have no knowledge of the business sector you operate in or what is actually needed).

I write this as someone who started programming around 40 years ago and has released software, and has been paid to develop software and web sites. These days though I am in the online retail business but I use my experience as a programmer and developer to produce our own sites and systems.

I’m basically more of a hacker — in the correct use of the word — than a professional developer. The only time I’m the best programmer in the room is when I am alone, and even that presumes there isn’t a fly hovering about. But I get things done and often find myself at loggerheads with self-declared ‘professional developers’ of plug-ins who know half of what I do and refuse to accept something can be done, normally before I just do it myself.

Perhaps it’s fair to say I have higher expectations than some, but if I do that’s just because I know what can be done and what should be available, while many end users are just fobbed off and disappointed the plug-in doesn’t fulfil their business needs because they don’t have the technical background to know the developers are just being lazy or incompetent.

I also come from a background where, having first used WordPress sometime around 2005 or 2006, I never for one moment thought I would be using it professionally. But it has grown and matured, and perhaps it’s fair to say I am too old to be re-inventing the wheel each time I want to do something, and I now find myself using it, and largely happily.

But my experience in the last year of actively using the platform, plug-ins and themes, and developing my own code for it, makes me think it is at a bit of a crossroads and if things aren’t handled properly, it may easily take the wrong turn.

No CMS platform is perfect. No E-commerce platform is perfect. And no community is perfect. But they can all be made better.

Bigger platforms than WordPress have disappeared, and no platform has a right to ever-lasting success.

I explain my recent ‘conversion’ to WordPress to make it clear I may be unaware of solutions that solve the problems I’ve mentioned. For instance, I hadn’t heard of WPHive until this conversation on Facebook, although that doesn’t seem to be the answer I’m looking for.

What we can do next

This is a very rough idea, literally based on thoughts since my post on Christmas Eve

Maybe there is something out there already that does what I feel is missing.

Or maybe what I feel is missing is not something others would want.

If there’s no demand for it, great, I can get on with other things — I really shouldn’t have spent the time writing this out as my TODO list is huge as it is ;)

And if someone is already doing this, even better! Point me to it!

But if not, I’m proposing some form of WordPress Quality Mark that can be awarded to plug-ins that meet certain standards. This is not as simple as it may sound, as quality marks tend to require a strict pre-defined list of conditions products must meet to qualify. Just defining those would be a big task alone, and designing them to suit the various types of plug-ins even more so, and likely impossible given the wide range of use cases for plug-ins.

So maybe all that is needed is a review site that focuses on real-life use. A site where the aim isn’t to list every available plug-in that does X, but a small number that do it well.

I think the focus should be more on software that works well, rather than simply attacking software that doesn’t. In my teenage years I used to enjoy reading occasional writing by Jeff Minter, the games designer and programmer, who would sometimes review software for magazines like ZZap!64. His philosophy was basically along the lines of ‘If you haven’t got anything nice to say, don’t say it at all’ or, in other words, he preferred to give his time praising great products rather than attacking bad ones.

That said, while there’s no need to review every single plug-in and criticise it — life is too short and there are too many poor plug-ins — if a plug-in is well-known, well-promoted and well-used then it certainly needs to be reviewed and problems or limitations highlighted.

Any such project would need the co-operation of users who are prepared to provide feedback on the use of plug-ins, developers prepared to provide free copies for people to use (probably in the form of a refund after reviews are written rather than up-front freebies — the aim is to get people who really need and use the software to use it, not to attract bargain hunters), and developers prepared to accept constructive criticism and use it to improve their products.

Depending on how it develops it may even eventually need funding to employ people to manage it — probably in the form of payment from developers on a sliding scale depending on their size/revenue — although this is not something I want to be part of. Not that I am against the idea, simply because something along those lines is a much bigger task and one I absolutely do not have the time or will to do.

Other potential income streams include affiliate links — but only as long as they are clearly marked as such and have absolutely no influence on the review of the product or the award of any mark. There’s no point working towards this only to replicate the sham review sites that already exist.

Any such site or awarding body would need transparency in how it operates and who is behind it. As far as I can see WPHive doesn’t even say who operates the site unless you click on the LinkedIn Icon where you see it seems to be by weDevs (again, sorry, I’m not picking on WPHive, it’s just the only one I’ve found that is vaguely similar).

And plug-ins also need more transparency. Too many are for sale by ‘companies’ (often individuals) with no real contact details, and users/purchasers don’t have much — if any — knowledge of who they are buying from. This alone is a huge issue the platform faces.

It’s down to us, developers, web-site builders, end-users and, in some cases, devotees to WordPress to do what we can to ensure the eco-system stays on track and develops in the right way and, alongside the work that goes on developing the core WordPress platform, ensuring a decent level of plug-ins is essential to that.

I’ve created a group on Facebook called WP Quality Mark (very much a temporary title I would imagine) and invite anyone interested in this concept — whether end-users, web site builders, programmers and especially plug-in developers — to join and discuss this in more detail.

Being totally honest, I’m incredibly busy so may not be able to devote much time to this (otherwise I would set this up as a business and would have launched with a fancy-pants web site with payment methods setup for developers, rather than this very long and very boring Medium post!)

If there is a demand for this, hopefully we can find the right people to work on it together.

But again, if there is no demand, great, let’s all get on with our other work, or if something already exists that does this that I’m not aware of, please let me — and others — know.

I’m not remotely precious about this idea and have far too much in my life, both personally and professionally, to devote much time to this and I’m more than happy for others to take the basics of this idea and run with it if they wish.

I only hope it is done with the right reasons, and not just to replicate the existing vapid review sites that exist solely to make money.

WordPress deserves better. And we deserve better.

Join in now!

Please feel free to leave comments here but it would be better to join the group and post there. At the moment it is a public group but depending on whether or not it attracts any spam or abuse etc, it may change status to a private group and require approval to join.

You can find the Facebook group at https://www.facebook.com/groups/wpqualitymark

ps. please excuse any typos etc, it’s Christmas and I really should be doing other things!