The integrated tutorial is one way to get a new user up and running with an application, but it won’t likely be comprehensive. There will be any number of features that won’t be covered, and may not be encountered for some time. As a user becomes skilled with an application, they are empowered to learn more features—try out advanced capabilities that they weren’t ready for until they got their feet wet. How can you help introduce a user to new features when they are ready, rather than in your own scripted tutorial?
World of Warcraft handles this problem in a very elegant fashion. The game tracks the actions you have taken, so it knows what features you have used and those that you haven’t. Whenever you start to do something for the first time, a small pop-up appears on the screen explaining what the feature does and how you use it. You can close it when you are done reading it, and you will never see that pop-up again (unless you choose to reset its history). The game knows that you have seen the pop-up and performed the action. Eventually, the user is familiarized with all of the features and is no longer confronted with any pop-ups. Of course, they always have the option of turning the pop-ups off entirely.
This concept is directly transferrable to all types of software and perfect for feature-rich applications. It’s a lot like the training wheels on a child’s bicycle. They come off once the child has learned to keep his or her balance.