Anyway, my problem is that people say that it is possible to make something both powerful and easy, and they often come up with examples, but few are accurate examples. I think that it's possible in general, but maybe not with every case.

The example I like to use is filtering. (Fortunately, many things can be implemented as filtering, even if they don't look like it on the surface.) While you want to present easy filtering for the average user, it would be nice to provide advanced filtering for the advanced user. This is really very easily accomplished (ignoring the complexity of the advanced filtering implementation) by designing a full featured filtering system, and then prepopulating some initial saved filters. You don't even have to make the advanced filter configuration easy to find, as the advanced user has already thrown out "easy" as a criterion.

And a good real-world example of that is the empeg's shuffling modes.

My point is that it's very possible to make a generic thing specific, but it's totally impossible to make a specific thing generic. The iPad is (relatively) specific, and becoming more so through licensing.
_________________________
Bitt Faulk