In a previous post, I’ve talked about the WordPress design philosophy of decisions, not options. And I’m working towards getting to a point, but I’ve got to set the foundation a bit about the whole thing first.

You can read the entire set of philosophies on this page, but here’s the gist about the one I’ve just mentioned:

When making decisions these are the users we consider first. A great example of this consideration is software options. Every time you give a user an option, you are asking them to make a decision. When a user doesn’t care or understand the option this ultimately leads to frustration.

 

As developers we sometimes feel that providing options for everything is a good thing, you can never have too many choices, right? Ultimately these choices end up being technical ones, choices that the average end user has no interest in.

 

It’s our duty as developers to make smart design decisions and avoid putting the weight of technical choices on our end users.

This is arguably my favorite philosophy that defines what should go into WordPress core and how; though I’d be remiss if I didn’t say I think there are areas for improvement.

(I know this is where the discussion can take a turn into left field but I don’t know to do that, nor am I trying to start armchair quarterbacking.)

But here’s the question:

If there’s an area of the WordPress UI that can be improved by a plugin that does the same set of functionality that already exists in the plugin, is it worth creating the plugin if the feature already exists?

Does it make sense to create WordPress plugins for existing features if the plugin adheres to the “designs, not options” philosophy more so than the core feature?

WordPress Plugins For Existing Features

First, I recognize the bit of lack of logic that’s included in this statement. I mean, what I’ve out is:

  1. We need to make more decisions on behalf on of the user and offer them fewer options.
  2. An option already exists in core.
  3. Creating a plugin for to introduce functionality that already exists, thus duplicating it, but streamlining it so that it makes a decision for the user on their behalf.

So perhaps the discussion stops with the third point above. But, for the sake of discussion (for argument, if that’s your flavor), I want to take an example just for this post.

A Look at Discussion Settings

The Discussion Settings that exist under the Settings menu for WordPress can be a bit overwhelming even for, what I believe, is the intermediate-level blogger let alone beginner or developer type.

WordPress Plugins For Existing Features

The Discussion Settings Screen.

It takes a little bit of time not only read to read through the options that exist but to make sense of them. And then, there are more advanced options like the Comment Blacklist which I think could likely be part of an Advanced tab.

But I digress.

There’s an option present under Other comment settings that states:

“Automatically close comments on articles older than [x] days.”

This feature, in and of itself, isn’t bad, but what if I want to close comments on articles older than [x] days only if they have 0 comments. Now, that conditional – that is, “if they have 0 comments” – I think is an example of what a plugin can handle.

But the option that’s presented as it is. That is:

“Automatically close comments on articles older than [x] days.”

I see the reason this is an option. No one should make a decision on behalf of a user on how their comments should be handled.

  • Is the way it’s presented, though, as clear as it could be?
  • Is the screen in and of itself conducive to having users read, respond, and tweak and necessary? Or is it so overloaded with options they simply duck out of it?
  • Could this particular feature be relegated to a plugin (or part of a suite of plugins) directly related to comment management to allow users to control their comments via plugins?

After all, plugins are primarily for functionality, and comment moderation has more to do with functionality than presentation.

Does it make sense, then, to create a WordPress plugin for existing features like this with the idea that it’s a simple install, activate-and-go, for users without having them scan an entire list of options and make sense of what’s presented to them?

Personally, I’m on the fence, but I’m genuinely interested in at least experimenting with it to see how it might perform. Sure, this means I should just put my code where my thoughts are – and maybe I will 😎 – but that doesn’t change the fact I’m curious in the ideas for others.