Yesterday, I came across this article by Henrik Kniberg that does a fantastic job of summarizing and refreshing the now-famous “MVP” approach, made popular in Lean Startup. The article tells some great stories from places like Lego and the Swedish Police force showing how user-focussed design works in practice. It’s a great read, and a great reminder.
Developing a good product means developing something people actually want.
As developers, we have a tendency to get stuck in the weeds of our work—what back-end should I use? should I use a class or struct for this? is my FRP framework the right one?—and it can be hard to prioritize users from down there.
I immediately went back to the roadmaps of our three apps and asked myself some questions, in particular: am I prioritizing the right kind of features? There’s a constant tension when picking the next steps for development. In my experience, that tension pulls between five different types of features:
- Features that address users’ explicit concerns. E.g., if people have told us an exercise is too hard in Waay, maybe the problem isn’t the exercise itself but the preceding lesson—maybe it’s not clear enough?
- Specific feature requests from users. For example, people have asked for more frequency bands in hearEQ.
- Programming priorities. This is stuff that could be invisible to the user, but the app may stop working without it: fixing bugs, adding compatibility with the upcoming iOS version, replacing a backend.
- Features that spread the word. A great app that no one uses isn’t a great app. So, adding features that help get the word out is pretty essential. That can mean share buttons, requests for user ratings, and so on.
- Features that the developer (that’s me) wants. These are features that I think make a good product, add a sense of quality, add a sense of completeness, make it feel just right.
I think we, as developers, have a misplaced tendency to think we can divine our users needs without actually asking them. Anyone who’s put a few apps on the App Store has probably disabused themselves of that notion pretty fast. I know I have! So, I’ve started weighing the importance of #5 less and less, and the importance of #1 and #2—the features that are based on explicit user feedback—more and more. So far, so good.