When you realize that you are about to make a user interface decision—say, to add a feature—that is based on your goals, knowledge, and preferences rather than on the user's, ask yourself the following questions:
If adding the feature really does help the user, go for it. If not, why do it? If not all users will want to use it, make it optional. If not all users will use it the same way, make it configurable. It seems obvious, doesn't it? Yet you don't have to look hard to find programs that have unnecessary or inflexible features.