The microwave in our office is quite annoying. I mean, it does its job: nuking food with radiation, but to actually persuade it to get that far is an unnecessary chore. It’s got a numeric keypad, plus another half dozen control buttons and a start button. If I want to get it to heat my soup, I have to press Time, punch in 3,0,0, then Power, then Start. To be honest, I don’t even know what those other 4 buttons do, and I’m a tech savvy person. We have that self same sequence written out in a note taped to the top of the microwave, since it’s exactly what you want to do 95% of the time.
Which is what bugs me about the whole thing. The product designers have added a whole mess of extra buttons, all of which adds to the cost of the product, to satisfy controllability that we really just don’t use. Even that last 5% of the time, if we didn’t have that extra controllability, we’d be able to just make do. It’s not a surprise to me that industrial microwaves have pretty much two controls: a dial for power, and a dial for time. Anything more smacks of designers trying to justify their own salary, or interference from people who don’t really understand their customers. To be honest even those two controls are overkill. A single button that adds 30 seconds to the clock and starts the microwave (if it’s not already started), and another to cancel. Simplicity.
This isn’t just a rant about our microwave. Okay, well maybe a little bit. But it’s a design principle that goes through everything, games design included. Understanding what your users want to do in the majority of cases, and give them just what they want, but resist the temptation to drown that out with other minor features. It’s not just user interfaces, it’s features as well. Even with the best interface in the world, games or tools that try to over-complicate things end up suffering. Not only do those features take valuable developer time to implement, they’re almost certainly going to increase the odds of those features adversely interacting with the important core features.
So why put in unnecessary features? Many reasons:
- Feature matching: Some other competing product has these features. Doesn’t matter if the user values them, or even if they’re appropriate given your design, just that the designer thinks they need to ‘measure up’.
- External requests: Maybe it’s not the designer asking for these extra features. Maybe it’s the manager, or the boss. Or the bosses wife. Who knows. Someone who isn’t responsible for the design, trying to ‘help’. And usually since they’ve got more clout than the designer, they get their way, even if it hurts the product.
- Brainstorming: At the start of the project, it’s pretty common to come up with a big list of features. Sure, they get prioritised, but they’re still all in the ‘potential’ spec for the product. Features get cut because there’s not enough time to do them, but less often they get cut because they’re just not important enough. The designer’s not to blame for this one, because that’s the product owner’s responsibility. But still, they need to co-ordinate with the designer, and understand how the features improve the product vs. the cost of putting them in.
- Notion of product richness: This one is squarely on the designer, and is about not thinking about your product from the customer’s point of view, but rather from the designers. Instead of building a product to meet the customer’s needs, they build the product they think should be built. This is good to a certain degree: sometimes users don’t know they want a feature until they have it. But it should be used sparingly.
Of course it would be easy to take this advice, and ship a project with only a few features, claiming to be keeping things ‘clean’ and ‘simple’, even though they omit the features the customer is really most interested in. As always there is a balance to be struck. The important thing is to understand both the product/game you’re making, and the people who want to use/play it.
So basically I’m pleading with the game and product designers out there: add features sparingly. Not only do you keep your development costs down, you improve your chances of making a cleaner, more usable product, that fits better with what your customers want.