Subtle Features are Good Features
We know that users don’t read manuals. Or instructions, directions, or anything for that matter. They just don’t. Of yeah, they want to use all the features your product offers, but they don’t actually want to learn how to. Catch-22.
The only exceptions are when the user already wanted to read the instructions, i.e. because your product is exceptionally shiny or expensive (fear of maintenance), or by force of habit (e.g, playing the tutorial in a new game). So you have no influence over this–begging for attention just alienates them.
This is why this screen (which is part of the Windows 7 setup process) is stupid:
Welcome to Windows 7, it seems to say. Interested in reading this wall of text?
Um, no, actually. I kind of just wanted to use my new computer. How often have you heard this rant before?
“Darn it, Microsoft, if I wanted to use a new home-file-share-hookup-networking doohickey, I would ask for it. Why is Windows 7 so full of bloat?”
Obviously, this is the opposite reaction you want.
Sneak 'Em In
The secret is to never overwhelm your users. Never say, “you must learn this!”. Such force will quickly turn users’ attitudes towards what actually could have been an enjoyable and useful feature to disgust and resentment.
- “Oh no, not this thing again! I just want to edit a document!”
Instead, be subtle. Offer the feature. “You don’t have to use this right now, but if you ever need to, I’ll be ready” is exactly the message you need to get across. The ways of doing this are myriad (context menu entry, advertising, etc), but they all boil down to the same logic: make your features seen, but not heard.
Funnily enough, a good example also comes from Windows 7. Libraries at first seems like another complicated, metadata-based method of organizing my stuff that I don’t need. It reeks of Vista, and I’m not touching it with a 10 foot pole. But I go to change the My Documents folder, and what do I get?

...Oh, that makes sense.
Without a single pesky dialog, they’ve sneaked in understanding, and made me a convert and active user of this new feature. They’ve replaced the sense of obligation with the (rightful) ones of excitement and satisfaction. After all, they’re features, aren’t they? People should enjoy them.
This simple rule separates “features” from “chores”. To the programmer, the two are the same–but to the people who actually use your product, there’s a world of difference.
Stop flushing your work away!