In technology, change is a way of life. Feature stagnation will lead to a competitor jumping ahead of you and an abandonment of your product. At the same time, changes in your product can cause a backlash from users who aren’t happy with the results. A thread on Hacker News is what brought this to my mind and I wanted to explore the subject a little further.
What happens that causes users to hate change and what steps can be taken to make things run smoothly?
In my experience there are three main groups of users who are unhappy with change:
- Users who don’t like anything to change
- Users who don’t need the changes and now have more work to do for the same results
- Users who aren’t using your product the way you intended and who’s functionality has been broken
Do you deal with users who don’t fall into these groups? I’m not talking about people with minor complaints, I’m talking about users that get really angry or frustrated. Passionate users that will let you know how they feel and aren’t afraid to go elsewhere.
What can be done to ease change and make it more universally accepted? I don’t think there’s a silver bullet for this problem, but there are certainly some things that you can do to help:
- Prepare users for the change: Educate your users ahead of time giving them all the info they need about whats coming, making sure to focus on the improvements from their point of view.
- Poll users about the change: Only do this if you care about the results, polling to get a result that you want is a bad idea and if it backfires things could get ugly quickly.
- Preserve old functionality: No one wants to support multiple versions of a product, but it’s done all the time. Why? People don’t get angry about change when they don’t have to do it.
- Enhance simplicity: This is harder than it sounds, adding features while keeping your user experience simple is very challenging. If you can do this and focus your changes on the backend with minimal frontend changes you’ve created a truly elegant product.
- Incorporate unorthodox usage: If a user is using your product in a different way than you intended, then that user has just added value for free. If their usage has some merit seriously look at expanding in the new direction with your next enhancements instead of slamming a door.
While we may want to blame problems with change on our users, if you look hard enough you’ll see that it’s a problem of our own making. I’m curious if other programmers have a different view on this, other categories of change resistant customers or other strategies to make change go smoothly.