As quoted from Jakob Nielsen who was summarizing this paper:
Users never read manuals but start using the software immediately. They are motivated to get started and to get their immediate task done: they don’t care about the system as such and don’t want to spend time up front on getting established, set up, or going through learning packages.
The “paradox of the active user” is a paradox because users would save time in the long term by learning more about the system. But that’s not how people behave in the real world, so we cannot allow engineers to build products for an idealized rational user when real humans are irrational. We must design for the way users actually behave.
It goes back to a simple concept. Simplicity is key. We must make software simple for the end user. However, we should also allow additional complexity and functionality unwrap itself like a flower as the end users explore it’s depth. Simple on the top, rewarding and fulfilling deeper down.
We’re not making dumb software. We’re making highly intelligent software that puts the basics up front and quickly accessible. But, if the user wants to get to know us better, spend some time with us and get a better relationship, then they’ll see we are actually quite smart, complex and interesting pieces of technology. (Yes, I am drawing an analogy here)
So, I propose to you, make your software simple. Keep the interface clean. Make it so that a person can get started easily within the first 5 minutes with your program. But, also make it so that they don’t have to scrap all their work when they jumped right in and then later realized they did it wrong. Let your program build that relationship with the user and invite them in to explore the depths. I think you’ll find you have happier customers.