You may have seen this while shopping for a WordPress theme, a new online game, or even an app for your phone: marketing materials using versions with an “x” or “+” in them, such as “3.6.x” or “3.6+”. These are not interchangeable and do not mean the same thing, especially when it comes to support.
If you need some background on how versioning works, see the Wikipedia entry for software versioning.
The version series
When you see a version such as “3.6.x” it means that they are only talking about the version 3.6 series, or more specifically 3.6.0 through 3.6.999, but not 3.7. Placing the “x” in “3.6.x” means the claim/discussion ends when we hit 3.7, and will have to be reviewed or does not apply.
An example would be the statement “This theme works in WordPress 3.5.x”. The statement can be read as “We support using this theme in WordPress 3.5.0 through 3.5.999 (but not including 3.6 and above, or any version before 3.5.0).”
Why do we do this? This places a range limit on the software in question. In the example above 3.6.1, 2.6.3, and 3.2 don’t apply here. Based on the original claim, if someone has problems in 3.6, the theme developer does not have to support it.
Developers also do this to apply the fact that we have no idea what WordPress (and other platforms for that matter) will do 3 or 5 years from now, and whether we will be choosing to update the code to support those changes in the platform. Open-ended support is simply an unsustainable business plan.
The version starting point
When you see a version such as “3.5+” it means they are talking about 3.5.0 on up to the current version out today. That “current version” part is where things get tricky. Using “3.5+” in support/marketing documents means they are claiming it is supported beginning with that version and continuing on up to the current production version, which could have been released years after the claim was made.
An example would be the statement “This theme works in WordPress 3.5.+”. The statement can be read as “We support using this theme in WordPress 3.5.0 and above (but not any version before 3.5.0).”
Why do we do this? This places a starting point at which the software will be supported, and more importantly it is open ended so that when new versions come online they too are assumed to be included. In the example above version 3.2 isn’t supported, but 3.6.1 is. Based on the original claim, if someone has problems in 3.6.1, the theme developer should support it.
Developers also do this to show consumers they are planning to provide updates and support long into the future. This gives the consumer the ‘warm and fuzzies’ about their purchase. But, again, the problem is most have no idea what WordPress will do 3 or 5 years from now, or whether they will be choosing to update the code to support those changes in the platform.
Closing off the support for a specific/reasonable version series is a hard pill to swallow for marketing efforts, so many people just use the symbol of infinite support (the plus-sign) and hope it all works out later.
Why this matters
For those on the purchasing end of the software industry, knowing what is included/excluded can help you make better purchasing decisions, as well as understand what support you have coming to you.
For those in the tech industry, we have an obligation to release better marketing materials to help consumers know where the support begins and ends. There is no value in making it confusing or appear open-ended when we damn well know that a claim of “works on IE 8+” or “Android 3+ compatible” is highly problematic and not sustainable.
For consumers, this is a good time to understand intent versus reality in tech. Marketing and other stakeholders often want you to know that their product will work well beyond your expectations, so a “+” at the end looks better than a stark “x” limiting it to just a series.
The reality is that features in the product as well as the platform the product works on change over time. There is simply no way that the same piece of software can work on platforms without major updates as the platform changes over time. If a Drupal plugin is giving me problems and the support documents say “it works on 4+”, I am expecting support for Drupal 4.x, 5.x, 6.x, and 7.x releases. As unreasonable as it sounds to support a plugin for Drupal 7 that was originally made for version 4, that’s the claim they are making by using the plus-sign.
The fix
We need to drop the “+” sign from support documentation and marketing efforts. It’s confusing and misleading to think that the package of code I just bought will work forever and be supported forever.
The real use for the “+” sign was to mark where support started and make it easy on the consumer to not have to think if today’s version is included. It was not intended to be used as an ambiguous series of future versions.
But we have abused that plus-sign to no end.
If you are creating programs, apps, themes, plugins and other software intended to be run on platforms controlled by other companies, manage expectations by using discrete versions. Examples:
- Internet Explorer 8, 9 and 10
- WordPress 3.2x through 3.6.x
- iOS 6.x and 7.x
The Drupal Modules marketplace does a great job of managing expectations by limiting versions to specific releases:
Consumers: be leery of any marketing materials that claim support beyond what is already released. Don’t build your empire on some notion that support will be there beyond what we can already see. And, more importantly, be flexible when it comes to software support. You’d be shocked to if you saw all the duct tape and bailing wire used to hold most of the tech industry together. After all, we are building this plane as we are flying it.
Got something to add?
I welcome all constructive comments below.
Thanks for this, it was very helpful. I am a ‘newby” and am totally confused. I want to build a simple, clean, effective website for my consulting business and have spent countless hours searching reading and trying to get familiar with WP as it claims to be the easiest to use. I am no nearer to making a decision than I was three weeks ago. Any suggestions?
This is a tough one to clear up in a reply, but I’ll try.
The hardest part in choosing a new website is being able to see beyond your first website and onto the next. Most website owners I have known move on from their first website after a few months to a couple years. It’s often a matter of your business needs settling out or changing over time and your website platform not fitting anymore.
I recommend you choose a platform that allows you to export all your data (pages, blog posts, images, comments) to a new platform. This is NOT an option for many platforms, and in some cases may be an option to export but importing it elsewhere could be a real pain.
Self-hosted WordPress (NOT WordPress.com, per se), Drupal, and other platforms that have you build your site on top of a core that you host on your server is usually the best way to go. Services like Wix, WordPress.com, SquareSpace, Business Catalyst and others where you use their service as a web app (they host it) often come with great limitations in not only what you can do with it, but what you can take with you.
I recommend looking into setting up your own self-hosted WordPress or Drupal website since this comes with the two largest communities of developers in the world. You can throw a rock and hit two of them, I’m sure. There will be a cost associated with this: either you learning how to set it up, or you paying a developer to do it for you. In either case you will have much more flexibility in what you can do and what you can take with you should you decide to move to another platform.