Just had an argument with my partner. He was going to add a new logging feature to our help desk app
. Another feature. Another button in the admin panel. Another setting. Another report to read.
This reminded me of Jamie Zawinski
's law. The one that says every program attempts to expand until it can read mail
Stop adding frigging features. If you think there's a killer-feature worth adding... think again.
If you're still positive about it - make sure that:
PS. Image courtesy of Erik Burke from "stuffthatmatters.com", his site seem to be down, fortunately, had it saved on my HDD.
- ...the feature works exactly like it's supposed to.
- ...the feature works like the users expect it to which is even more important. If the user expects a fireman to resque his cat - give him a shiny "fireman" button, not a "cat rescue squad".
That's why Adobe Photoshop has so many photography terms in the user interface. The majority of Adobe users are photographers, who expect these names. They want menu items to say "aperture" and "exposure", instead of "blur the background" and "clip the whites".
- ...the feature is easy to locate. Add features, not easter-eggs. It won't add any value to your product if no user can find it. And adding a gigantic manual called "keyboard shortcuts and other hacks" is also not an option. The hacks, shortcuts and gestures should be obvious.
- Don't make assumptions. Ask your users before adding a feature. Measure if the area of your app you're willing to improve is even being used by anyone. And that "genius" feature of yours might actually turn out to be a piece of crap. Lots and lots of startup founders I know keep avoiding this step.