How to improve software products by making them simpler - why less is still more
Here's a really simple advice that's - unfortunately - a little harder to follow: make your software products simpler. Why? Because they will be simpler to market and to sell. That should be a compelling argument, right? Let me first explain the issue of complexity on the basis of everyday practical examples. After that, I give some general rules of thumb that should help you reduce complexity for users of your software.
Last night I had a nightmare. I was searching a web shop and tried to find the cheapest iPhone Xr. I typed 'iPhone Xr' and what I got was a seemingly random results list featuring not only iPhones Xrs in various colours, but also cases, wireless headphones, Black Friday offers for other devices and many sponsored results. I also got ample filtering options, more than fit on my (rather large) desktop screen. How to choose from the overload of options?
OK, I'm kidding, it wasn't a nightmare. It was an actual visit to Amazon, apparently the most successful online retailer. I'm having similar issues with the largest hotel booking platform in the world: Booking.com. They used to be a rather transparent hotel booking website. Nowadays they seem to be a test platform investigating the edges of visual and psychological torture. I book hotels 99% of the time. What am I getting? Apartments.
Yes, Booking.com, I know your tricks suggesting urgency and scarcity, and I know that those high hotel ratings are derived from so many factors that even the shabbiest place in town would get a rating of at least 7 because it has acceptable internet and the soap dispensers actually function. By now I've found that the information overload actually forces me to do several background checks to see if the hotel is any good (and is a real hotel).
Booking.com is probably the king of A/B testing. I wonder, though, what they are testing these days. I guess it's two options, both with way too many bells and whistles. The competitions follows that pattern. What we get, as consumers, is screens that are absolutely loaded with options. Being a travel hacker myself, I don't really mind. I use the many bells and whistles to filter, and try to ignore the rest of them.
But, come on, providing so many options cannot really get you the happy customers you want, right? This choice overload is becoming endemic. I think many customers simply hate it and cannot handle it. Therefore they choose to ignore choices, remain lifelong loyal customers ('sleepers') of their telecommunication, health insurance and electricity providers. And they pay for it, too.
If you're right, why aren't you rich?
Of course it's either ignorance or arrogance using arguments as the above against some of the biggest or most profitable companies in the world. But I think they're slowly moving away from the viable. As much as Apple ensures a fair market share (and very high profitability) by its image of simplicity and design, I'm convinced there must be at least a niche market, and probably something bigger, for simpler services and products.
I'm not only talking about phones for seniors (a nice niche market). I'm also talking about hotel booking sites that just provides you with a single hotel. A retailer that only provides a single result for an iPhone search (right model, lowest price). A ticket booking site that only shows you the best fare/connection option. An energy contract comparison site that automatically picks the cheapest option every year and does the paperwork for you.
Ten years ago one of the tech hypes was the so-called 'intelligent agent' that would do smart things on your behalf. Never heard of again, but this is the domain where they really would come in handy. It's not rocket science either. Back in the days, when knobs and wheels cost money, there would be an economic driver to keep the number of bells and whistles limited. Today, with software taking over many functions of those nobs and wheels, there's no limit.
The value of an on/off button
There used to be an on-off button on your television. That's become rather rare. It's cheaper to add a remote with too many buttons, and countless software options that you have to choose from with a clumsy interface. How comfortable is it to turn a device off with one switch? A fourty year old radio has such a button, and it works instantly. But it's not possible anymore with your computer, tablet or smart phone, that also take ages to shut down.
Today, microwaves feature touch interfaces that do not allow to find an option just by tactile feedback. You have to use both your hands and your eyes. It's easier to keep clean, but it's definitely harder to use. And those 'handy' programs for defrosting, or cooking fish, they take more time to figure out than they will ever cost you just making an estimate and keeping an eye on the food.
Remember your camera? I still own one. Not necessarily because the picture quality is better than that of my smartphone. It's because it has dedicated buttons for most photographic functions, such as aperture, exposure compensation, and most importantly: shutter release. A dedicated shutter release button is much easier and quicker than the virtual button on your smartphone will ever be. And yes, that matters for the quality of photography.
'Fly by wire' on modern airplanes? Nice, but if the pilot loses touch with the physical response of the plane, this may actually lead to disaster. Automatic systems interfering with normal controls because of physical changes to the design of the plane? After two crashes with the Boeing 737MAX we know that fiddling with the very basics of airplane controls might not be such a good idea after all.
How to keep things simple
Enough with all the complaining. You catch my drift, I hope. So how to cope with the complexity creep that is omnipresent in today's products and services - with the exception of companies and institutions that are disciplined in this respect? The following are a few rules of thumb that apply to many different products and services; I try to provide a few examples in each case:
Provide meaningful options. Remember the ghettoblasters from the eighties? They had more knobs than a human being could wish for. All were meant to provide basically meaningless options to compensate for the terrible speaker quality. Today, it's buttons and faceted search that have taken their place in software. To keep a product or service clean, do the following:
- Only provide options that are available. Nothing more frustrating than checking 'Free shuttle service' and then seeing there are zero hotels offering that service. Or providing all kinds of items that cannot be shipped to your country, which you only discover when you try to pay for the items in your shopping cart.
- Do not use information or options merely because they are available in your meta data. Showing an EAN (unique product identification number) may be very helpful to people searching for low prices, but it doesn't provide meaningful information about a product. If needed for SEO purposes, you can collapse these characteristics.
- Eliminate options. Measure the actual use of metadata in faceted search and thereby prioritise and prune the facets (you could collapse them to be available on explicit user request). Your users will generally be thankful for removing the choice overload. Use a logical sorting criterion that's intuitively recognisable.
- Eliminate duplicates in metadata. One of my pet peeves is that brand names are not deduplicated in Amazon. You can theoretically have dozens of variants of the same brand name, preventing you from effective filtering on a single brand. Most software will benefit from mapping metadata into facets that are available across the service.
Find optimums. It's as tempting to oversimplify as it is to allow feature creep. At some point, it was fashionable to have washing machines with only a single rotating wheel. To make this work, you'd need at least a confirmation function in this wheel as well. This was well before Apple invented the click wheel, and it never took off. There's a reason: you'd generally want a separate button for an important function - and confirmation qualifies:
- All-in-one designs generally don't work. You have the occasional Swiss army knife that might work for you, but in general, specialised functions ask for specialised products. So specialise in what your product is good at, focus on that, improve it, and don't try to do ten things on the side as well.
- Overspecialisation doesn't work either. If your target audience simply is too small, you might be able to reach it or the cost for that might be too high. So the opposite of 'all-in-one' will not work for you unless you're ASML (the chip production machine manufacturer).
- Scope creep will always be lurking. A single moment of distraction will lead to features that do not contribute to the main software functions, that count as 'gold plating' or that obscure other features. Dividing development capacity among main features, technical and user interface debt and side features might help.
Take design seriously. Yes, you need an interaction specialist and a graphic designer specialised in software design. The designer should put the user perspective at the first place too. It's all about serving the user to fulfil tasks with the software product. Great, simple and 'airy' design help accomplish that goal:
- White space is like oxygen. Users need it to be able to breath. You might be tempted to use every square inch of 'screen real estate' but that's not a good idea. Software benefits from visual hierarchy, which can only exist by the proper use of white space.
- Use icons only to replace text buttons if their meaning is glaring obvious (not only to you, but also to your users) or if you, really, really don't have the space available for text buttons. Remember that mouseovers generally do not exist on mobile devices so that it's impossible to check the meaning of an icon if it's not clear to the user.
- Do not hide the most important features of the software. Invest time in determining your main navigation and making it clear to your users. Take into account future developments in order to let the navigation 'grow' in a natural manner without radical changes in the user interface.
- Modesty is a virtue, in design too. Although designs will benefit from character, it shouldn't take over the whole user experience. Follow current conventions in order to give the user a flawless user experience. You don't want your software to be the hotel room where the light button is not next to the door.
Final words
My impression is that even the biggest companies on earth find it hard to keep their products simple, at the cost of intuitive and frictionless use. Maybe their adage is 'if you can't convince them, confuse them', and of course they do solid testing, but I think they're slowly derailing. The good news is that this leaves room for smaller competitors to take up some part of the relevant markets with cleaner, simpler interfaces.
Do you agree with the above observations? What is your favourite example of over-complex software? And which product gets it precisely right?
Read more on software product management
Why you need a healthy dose of marketing in product management
Why software engineering should be rocket science
How to handle cognitive biases in product management
Bob Ross was the real father of the agile movement - and why that is bad news
What software product managers can learn from the current 737-MAX crisis
Seven golden rules to avoid software becoming a Christmas tree
Seven secrets of building beautiful software
Building compliance software: five major pitfalls and how to deal with them