If you head over to the WordPress.org homepage and click on the About link, you’ll be taken to a page that, y’know, tells what WordPress.org is all about, what the software can be used for, some history, and so on.
Then, there are also links to various WordPress-related collateral such as logos and graphics, fan art, the GPL, the project roadmap, and the philosophy.
Wait, what? A philosophy?
Exactly. WordPress – a piece of software – has a philosophy. It’s a really, really neat page that I think everyone who is involved with WordPress – be it designers, developers, or users – should read. It’s not technical, it’s easy to understand, and it helps inform us what the software is all about.
As far as developers are concerned, there are a number of things in the philosophy that I believe we give excellent lip service, but we don’t actually practice, abide, or behave in such a way that we support the philosophy.
That’s a longer post for another time.
Anyway, though there’s a number of things in the philosophy that could be discussed (and probably ultimately will be :), one of the many things that we’ve forsaken is the “out of the box” philosophy.
The WordPress Philosophy: Out of the Box
Straight from the page, the pillar of the philosophy that defines how software should work out-of-the-box is:
Great software should work with little configuration and setup. WordPress is designed to get you up and running and fully functional in no longer than five minutes. You shouldn’t have to battle to use the standard functionality of WordPress.
We work hard to make sure that every release is in keeping with this philosophy. We ask for as few technical details as possible during the setup process as well as providing full explanations of anything we do ask.
It sounds awesome, doesn’t it? To some degree, for those who have ever read some of the history of Apple (or other similar companies) and some of the ideas behind how they believe that computers should “just work,” you can’t help but make the comparison.
The idea that software should “work with little configuration and setup” and should ultimately minimize the frustration of its users is something that I think some people have been after for decades. It’s a fantastic goal.
Despite that fact that the nature of computer programming is to solve problems, the usability of software in and of itself is a hard problem to solve on its own.
Try this: Think of some of the easiest software that’s available to use – this can be on a phone, tablet, desktop, whatever. Then think about how many times you’ve had to answer a phone call or help a friend or relative whenever you’ve been hanging out at their house.
If that’s the case for the easiest software that you can use, then what does that say about the state of the industry?
The point is this: Making software that’s easy to use is something that many people deeply care about, truly strive for, honestly want for the work that they create. Despite the fact that we know there’s a lot of work to be done, we still keep at it.
And yes, it can be discouraging when you realize that a customer or fellow user has a complaint about something that you’ve built, but that’s not the point.
What Am I Getting At?
Simply this: For those of us who are building things for the WordPress economy, what are we doing? And by that, I mean: We’re taking an economy that has taken years to build, that has massive potential to do [more] good on the Internet, and we’re destroying an economy one product at a time.
Not all of us, of course, but enough for the general consumer to take notice.
So What Should We Do?
I’ve only my opinions. But here’s what I think:
Great software should work with little configuration and setup.
Yet, we’re cramming as many things into a theme as possible and then claiming that it’s a good thing for the user.
For every proverbial knob that’s introduced into product, I think that the degree to which the user can be confused is exponential (as opposed to linear).
That’s a failure.
WordPress is designed to get you up and running and fully functional in no longer than five minutes.
And they’ve almost nailed this. Yes, it assumes a small amount of technical knowledge, but one-click installers have helped to address that.
But can your theme and/or plugin do that? Is it ready for the user to use in that amount of time?
You shouldn’t have to battle to use the standard functionality of WordPress.
This is something that’s arguably one of the toughest problems to solve because this has to cater to a variety of different skill levels (let alone language barriers), and because people will forever have an opinion on how something should work if it doesn’t work as they think it should.
But that shouldn’t deter the core developers from aiming to keeping it as easy as possible to use the software.
Similarly, those of us who are building things on WordPress should work to follow this same ideology, but looking at the landscape, it’s relatively clear that we’re not. What a shame.
We work hard to make sure that every release is in keeping with this philosophy.
Above all else, I think this is the ultimate gut check before releasing something out to customers. It can even be asked at the micro-level while working on a feature: “Is this commit/feature/bug fix/whatever keeping in line with the “out-of-the-box” philosophy?
If it’s not, then re-evaluate it.
We ask for as few technical details as possible during the setup process as well as providing full explanations of anything we do ask.
It’s tough to setup an entire web application with asking for just a few technical details, but WordPress does, in my opinion, a great, great job at this.
I also think that providing explanations as to what they’re asking for is useful, but it comes with towing the line of being concise with the terminology (because people don’t read), while also being clear, effective, understandable, and to the point.
We Must Segment the Market
Right now, there are a lot of people – myself included – participating in a number of conversations all related to the pricing of WordPress products (themes, plugins, applications, services, and so on). We recognize that we’ve spent far too long mis-pricing – let alone mis-developing (but that’s a whole other post) – products for the application and now we’re having to work to change that.
We’ve trained consumers that software that’s built for WordPress is likely to break, to be frustrating to use, may not be compatible with other plugins, extensions, and so on, and that support might be hard to come by.
In short, we – as a community – have completely disrespected the WordPress philosophy. We’ve acted as if it doesn’t exist. Now we’re paying for it.
Additionally, I know that the conversations that are being had are irritating for some people because it’s stuff that comes up every year or every other year – I’ve been around long enough to know that – and it’s like hearing the same thing over and over.
But would these conversations and/or debates end up happening if the problem didn’t continue to exist?
The truth is, I believe that the problem is going to continue to exist but there is something that can be done about: We need developers, agencies, and shops to enter into the space and force segmentation. Just as customers can pick the product that they want to buy, we can pick the type of customers that we want.
This comes at determining a mission, vision, and price for your product, standing by it, supporting it, and unapologetically sticking by it permitting it aligns with the WordPress core philosophy.
So rather than saying that “market segmentation will happen,” or “market segmentation needs to happen,” we need to force it.
There are always going to be people who disregard and disrespect all of the above for their own reasons, but for those of us who truly care about WordPress and who truly care about building products that matter, that help people, and that work well out of the box, I believe that we need to force the segmentation.
Right now, those who care less about the philosophy and more than churning out snake oil to make a quick dollar are muting those of us who want to create fantastic software.
Why is it not the other way around?
It can be.
Let’s stop all the talk about how it’s going to happen or how it ultimately will happen, and let’s make it happen. Start making opinionated software for WordPress that abides by the philosophy.
Force this segmentation to happen.
It’ll be good.