Skip to main content

What features don't you need in your application?

10 days ago, Scoble asked What will Steve Jobs kill next?



Perhaps more importantly, he asked "How about you, which feature are you getting rid of to make your product/service/store/business simpler?"



I think application developers have a real tendency to thrown in "everything but the kitchen sink". It's not because we want to - but more because after years of experience, we want to be ready "just in case" someone asks for a feature.



Yet the end result is overloaded apps with not just too much functionality, but also a need for complicated user manuals and training.



But after users have used the application for years, it's really hard to take away a function or feature because there may still be a group of users who want to use it.



I've been going through this recently and have found myself turning off or hiding features in one of my applications. But I still can't take myself to take away the feature - instead, I've just hidden it (using GENMENUX to ensure it doesn't even appear on the menu). I've added a flag in my application to show the hidden functionality (in case, there's an uproar) - but my goal is to encourage users to use other features that offers similar functionality. (I even have a dialog when they try to use an older function that says "why not use this one instead?")



(why would you have two features that offer similar functionality? Blame it on application bloat - consider FoxPro's LTRIM and TRIM functions.)



I tried doing this with a Search screen recently and the results were interesting. I was inspired by Yag's post on new ways of developing. So I built a screen with a single box and a dropdown and told the customers that they could search for anything they wanted, simply by putting it in the search box.



Their response? "I want to see separate boxes for all of my search options."



Argh! It's tough to be a developer offering new features in an older application when you've got users who are used to older approaches.



Maybe I should just create a new application entirely - but then you have to retrain everyone.



What do you do when you want to introduce new approaches in your applications?  (or maybe more importantly, how do you fix bad habits?)





Powered by ScribeFire.

Comments

David said…
Great to read your post. I employ a similar approach when moving end users from one way of doing a task to another. In this case, it is moving users from using a character-based app to perform a task to is windows-based app equivalent.

In the first stage, I just put up a nagged screen asking the users to use the new app for that task and warn them that the old app is soon going to expire, but still allow them to use the old app. This is to manage their expectation. And at the same time, assuming only a small number of users actually use the new app initially, take advantage of that as a small pilot to make sure the new app is bugfree.

In the next stage, I disable the feature in the old app altogether and changed the nagged screen into a "Stop" dialog, telling the users that they have to use the new app to carry out that task.

I also liberately log the usage, so that I know how many users are converting and how many are not, and if appropriate, I can choose to talk to those not willing to convert to find out why. Perhaps they have a valid reason that I haven't thought of.

Also like you, whenever I change the behavior of an existing "mission-critical" feature, I will add an ini flag to turn that change on and off, just in case of uproar as you said, or a showstopping bug showing itself.

Popular posts from this blog

FoxInCloud Stats

FoxInCloud sent this link a while back about their statistics regarding visits to their site:

http://foxincloud.com/blog/2017/12/27/VFP-community-lessons-from-foxincloud-site.html



What's interesting here is the breakdown of people. Yes, I think it's understandable that the Fox community is getting older.

Another factor is the growth of the mobile and web environments taking over development. These environments really do push people towards the newer non-SQL or free SQL/hosted environments but more towards hosted storage options like Amazon and Google. A tool like FoxInCloud that helps MOVE existing applications to the cloud inherently competes with those environments.

But FoxInCloud also allows developers to extend their application further by giving them a starting point using Javascript and the basic CSS (such as Bootstrap). If you're not rebuilding your application from scratch, it's certainly a great step forward.

Well, that explains CodePlex...

In a move that will be sure to anger open source (or rather anti-paid software, anti-Microsoft open source)  zealots, Microsoft is planning to buy GitHub.

A year ago, I mused about why Microsoft would shut down CodePlex and how the world needs competing source code repositories to be strong. I'm not the only one per this Slashdot article :
"...people have warned about GitHub becoming as large as it did as problematic because it concentrates too much of the power to make or break the open source world in a single entity, moreso because there were valid questions about GitHubs financial viability...." - Jacques Mattheij

I will be interested in seeing this play out - whether developers jump ship or not. Have all the efforts Microsoft has made in pushing towards open source be seen as genuine or will all the zealots jump ship or maybe even attack?

Microsoft's comment about why they shut down CodePlex referred to how spammers were using CodePlex. Well, GitHub has its own …

The World of Updates Today

I just received an update for Office 365. It certainly includes some cool features - including starting in one environment and picking it up in another environment. In recent years, I've certainly enjoined the use of Continuity on a Mac and in fact, I feel spoiled being able to start a message in one environment (even Google) and then finish it off on another.  This has become some pervasive when we were reviewing our most recent backlog at a client site, a similar feature was added to the current workload.

But with web applications, the trend is to reduce the amount of software on a client machine. I used to have automatic backup for all of my machines (thanks Carbonite!) but these days, many of my machines don't need anything beyond the core OS and some basic applications. Certainly that's the feeling with Chromebooks and even the lightweight aspect of many iOS apps. The functionality is mostly in the cloud.

When you upgrade your system, you expect it to a big update. So…