Getting rid of the extra
Have you ever had a tool you loved add so many features that it became impossible to navigate? Do you spend so much time learning how to use a tool that it wastes your ability to get things done? You've probably even heard the name for this phenomenon, feature creep because it's so common in our daily life.
It doesn't have to be this way.
The very best tools recognize the problem they're trying to solve, solve it, and then get out of the way. Sometimes, the best tools spring up by offering a more limited feature set. I can think of no better example of this than my daughter's Strider balance bike.
If you haven't seen a Strider before or don't know what it is, you probably aren't a parent or didn't become one in the last decade. A Strider looks just like a regular bike, except it's much smaller and has no pedals.
Its size is no revelation; after all, it's meant for toddlers. However, the lack of pedals provides fantastic insight into the danger of feature creep.
A regular adult bicycle is a tool for getting around and a mode of transportation. However, a Strider bike is a tool for learning to ride an adult bicycle. So, what challenges come to mind when you think about learning to ride a bike?
If I distill it down to my top three, it would be learning to balance, pedaling, and stopping. However, of those three, which is the most important? Anyone who has ever been cruising on their bike down a hill can tell you that pedaling is only sometimes necessary. Many fixie bicycle enthusiasts will happily debate the utility of a brake altogether. But, if you don't know how to balance on a bicycle, you do not know how to ride a bike.
This focus on balance is Strider's critical product insight; what makes learning to ride a bike hard is learning to balance on a bike. If I asked you to go learn to do something hard, would it be easier if you did it in isolation or if I gave you related but optional things to learn simultaneously? Put this way, it's easy to see the problem. It's hard to know what to focus on. Take away the things that distract from the real challenge, and your users will have a much easier time.
For what it's worth, my daughter, who just got this bike for her second birthday, is already gliding around regularly. When she upgrades to a bike with pedals, I expect I'll hand it to her and she'll take off.
Let's take a look at another familiar product with an intentionally limited feature set: Google Search. What's going on behind the scenes of your typical search is immensely complex, but for the user, nearly all of that is abstracted away. If you search for "movies playing tonight," Google knows that you almost certainly mean the city you're in, not somewhere else, and it gives you the results accordingly.
That's a design choice, though. It's not hard to imagine something much more clunky. Imagine a settings dropdown that allows you to adjust the parameters of your search. Perhaps a modal pops up and asks you to answer three short questions to improve your results. Or even worse, it could just throw an error message in the search field telling you to be more specific.
Can you think of any tools you've used that give you this kind of enormous feature set? Most tools you've ever used, honestly.
Consider the challenge of managing an agile project, for which there are many available tools. I would argue that most of these tools fall victim to feature creep to a greater or lesser extent as they try to solve more problems for more teams. Unfortunately, all those additional features make the software more complex to understand and give it a steep learning curve.
So what's the lesson? If you want to build great things, know the problem you need to solve, solve it, and stay out of the way!