Every time we release a new version of the software we not only get to announce what new features we added, but everyone quickly finds out which features we didn’t add. This makes a new release the best thing in the world for some people and a real frustration for others. For those of you who are frustrated, we hear you. It’s always annoying when a product you really like does an upgrade, and you discover that they didn’t include that one thing you’ve been asking for since 1997!
It happens to everyone, including us. Take ActiveSync as a great example. Pocket PCs have File Synchronization. Smartphones don’t. With every new release of ActiveSync or Windows Mobile for Smartphone we all cross our fingers and chant “Please include file sync! Please include file sync!” and every time….nothin’. Why Microsoft? Why?
Well, I can’t speak for why Microsoft does what they do but I can tell you about us. Here is what we consider when we try to make decisions about new features. There are always additional things that can influence a decision but these are the biggies.
What Users Want
This is huge. We keep all sorts of lists of the things that users ask us for. We research the ideas, check out the options, and explore ways we could do them. The more people that ask for something, the more likely we are to include it. This is a prime area that we look at when considering a new feature.
What Users Hate
Sometimes people come right out and say what they hate, other times it becomes clear in frustrated support emails about a particular issue. Either way we track this stuff and work to improve it. Areas of major annoyance get top ranking on the big list-o-future-features.
Where the Market is Headed
We need to watch which way the wind is blowing. If we don’t keep up with current market trends we’re not going to be around to MAKE another upgrade. These are tough because sometimes people aren’t asking for the thing yet, but if we don’t add it we won’t be competitive 6 months from now. Windows Mobile Smartphone is a great example of this. We wrote a smartphone version before there was a smartphone on the market. This meant taking time that could have been used to add features to Pocket PC, but that’s where the market was going so we had to blaze a trail in that direction!
What Microsoft/Palm/Etc. Tells Us To Do
I posted about this awhile back. There are things we have to do whether we like it or not. A great example in eWallet 5.0 is moving around a lot of files the software uses. From the info we’ve received, files that change as the user does different things (templates, sync files, custom graphics etc.) must NOT be in the program directory in the future. This means we had to redesign the file structure for eWallet 5.0, a big undertaking, at the expense of adding features. Failing to do so could lead to the software not working at all on new versions of Windows Mobile!
Making Things Better for New Users
There are times when we need to make changes that will benefit new users more than existing users. For the existing users, they’ve often become used to whatever weird thing we did in the past. The problem is that every new user has to “get used” to that thing as well. To that end, we often make changes that will make the experience for a new user significantly better. This can be really frustrating for people who are used to the product working a certain way. There are a few of these in eWallet 5.0 and I’ll blog about them later, but these are things we just have to bite the bullet and do sometimes.
What We Love
I’d be misleading you if I didn’t include this one. Every so often there is a feature that we really love so we add it. Sometimes these turn out to be the things everyone wanted but didn’t know they needed. Other times they are that feature that makes everyone wonders if maybe there is something in the water over here in Ann Arbor. Most features get added for the other reasons I listed but this one does come up every so often.
So there you have it. A few of the big things that we look at as we add new features to our products. Not a comprehensive list since there are LOTS of ways a feature could end up in the product, but a good descriptions of the major ones.
And don’t forget the first thing I posted! We take requests VERY seriously so send them our way! (Or post in a comment here even! We’re listening!)