Over the last few posts, I’ve been sharing my thoughts on the WordPress Philosophy and how I generally think that many of us who build things for WordPress are ignoring the philosophy that drives the application for which we build.

So far, I’ve talked about how I think we do a bad job of making sure everything works out of the box, and I’ve also talked about how we do a better job at designing for our peers than we do designing for the majority.

If you’re not aware of anything that I’m talking about, then make sure to read the WordPress Philosophy and it will bring you up to speed as to exactly what these posts are all about.

With that said: The third point, Decisions, Not Options, is arguably my favorite point in the philosophy, but it’s the one that we’ve trashed the most.

And that’s a sad thing because I think that if we’d paid more attention to it, then we wouldn’t have so many of the complaints about so many different themes, vendors, marketplaces, and so on as we do today.

The WordPress Philosophy: Decisions, Not Options

As the philosophy states:

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.

The first thing that I want to point out is that, in the context of this point, I think that design relates both to the visual design as well as the technical design of a theme (or anything else built for WordPress).

But, often times, I think we forget that they’re one in the same because so many of the things that are visible on the screen as part of the design map to a function (or set of functions) that help power whatever you see.

The WordPress Philosophy

Regardless, given the state of settings pages, theme options, and even now some of the things that we’re seeing in the customizer, we’re providing the user with nothing but options. And here’s the thing, at least, here’s my theory:

Every time we introduce a new option, we’re requiring the complexity of the user’s decision to increase not linearly (that is, one new option does not require one new decision), but exponentially.

That is to say that that if a new option is related to any of the other options then the user then has to think not only about the new option but the other options it impacts.

What a terrible experience.

And rather than doing our due diligence in studying a niche in the market or in the industry, we either create things things and hope people buy them – which is akin to throwing spaghetti against the wall – or we create themes and products that include so many different options that the user can almost make anything happen given enough time with the settings.

And then we market that as a good thing.

What Am I Getting At?

We don’t make decisions for the users – we just throw as many options as we can into tabbed user interfaces, place them on a menu or a submenu or in the theme customizer, and then throw the users into the deep end of the pool that is our theme and say “come on, isn’t it great?” all the while they’re thrashing about trying to figure out which way is up.

Who are we kidding?

The things that we make should have an extremely limited set of options. We need to make decisions on behalf of the users.

“But what if the users end up not wanting our theme?”

Big deal. There are other competitors in the space and our job is not to necessarily out do them in terms of actually making sure our theme includes their design, their options, as well as our own unique spin on it, but to make sure that we’re positioning ourselves in such a way that we’re offering something unique.

If people like it and buy it, fantastic. If not, then we continue working.

So What Should We Do?

I almost named this section “where do we even start?” because I believe that this particular aspect of the philosophy has been so disrespected that I’m not even sure it’s possible to articulate just how bad the state of the theme market is because of it.

To that end, I won’t.

Like with other articles around the philosophy, I’ll simply share my opinions on each of the parts of the philosophy and move forward from there.

When making decisions these are the users we consider first. A great example of this consideration is software options.

When it comes to considering the user first, this doesn’t mean “how many knobs would they want to turn inside of our theme?” This doesn’t mean “wouldn’t it be great if they could customize [almost everything]?”

No.

It means neither.

It means that we consider the average user, what they hope to achieve using the particular theme they’ve purchased, and we make decisions that help solve those problems without the user needing the interfere.

Sure, they may opt to select a header image, maybe a color scheme depending on the layout, or a few widgets, but do they really need control over something such as responsive functionality?

Come on.

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.

This may be the great equalizer.

Every single one of us has felt this way one way or another. I know that regardless of your level of experience with computers, you’ve felt this way using some software. Even those of us who write code for a living have probably uttered profanities at the various ways a language has implemented something because it doesn’t seem to make sense.

And that’s an option of the language.

Yet, we do the exact same thing to our users and market it as this great thing that they have access to using and customizing and then hand it to them hoping they enjoy it.

They probably utter profanity.

On top of that, I’ve heard some developers even complain that when their customers are presented with these options, they aren’t sure where to start so they open a support ticket, and then the developer blames the customer because they can’t figure it out.

So there’s that, I guess.

It’s some of the most backwards thinking that exists within software development of any kind. The user isn’t ignorant. They aren’t stupid. If they can’t figure it out, then we’ve done something wrong.

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.

I don’t even think that this particular piece of the philosophy requires much argument because it’s so self-explanatory.

As a user, when it comes to software, I want to make as few choices as possible to get it to work so that can get to work. This is why I choose the software that I use. This is why I even use the type of machine that I use to get my work done.

I – along with many others, of course – am so focused on being productive in getting done what I need to get done that I will do research to find the right product that does enough of the job for me and gives me just enough options to tweak so that I can be as productive as possible.

I know, not everyone is like that, but when it comes to WordPress, that’s how the philosophy states it should be. But what do we do?

The opposite.

Throw them the kitchen sink of options, claim that it’s revolutionary (it’s not), and then complain when the support tickets come in because of the work that’s been produced is too convoluted for the user to understand.

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

I think this final statement sums it up nicely.

We have the responsibility to make decisions on behalf of our users that give them incredible experiences with WordPress and the products built on top of it such that they’re able to get up and going as fast as possible with whatever type of theme they are using – be it a business theme, landing page, blog, real estate theme, whatever.

Keep “the weight of technical choice” off of them.

We’re the technical ones.

Stop Peddling the Options, Already

To some degree, I think that we’ve convinced ourselves that options are the way to go so much so that we’re not only drinking our own kool-aid but we’re peddling it to our customers and now they’re drinking it.

And they’re expecting the rest of the vendors to produce the same kind.

This has caused a serious problem in the market. So much so that those of us who are trying to get back to the what WordPress is all about have our work cut out for us. But it’s not easy. And the challenge is that I don’t think it’s going to get any easier.

People are still going to continue to pushing these things to make a quick  buck, and then there are those of us who are going to continue to do what we can to fight it. Hopefully, over time, more of us will get back to the roots of what WordPress is about and start making higher-quality products with fewer options (and, thus, will make more decisions) for our users.

And I say that not just for the sake of the philosophy, but for the sake of our users, and for the sake of WordPress.

Remember: It’s a fantastic piece of software, but if it’s to be judged by the quality of the software available to it, then we’ve got work to do.

And a lot of it.