It's hard to read through a book on the principles of magic without glancing at the cover periodically to make sure it isn't a book on software design.
Never present a power-user option in such a way that normal users must learn all about it in order to know they don't need to use it.
If a feature is good enough to be included in a new release, it is good enough to be fully integrated, not left to grow on the side of the old one like a goiter.
If we are to isolate and insulate our users from the reality of the system software, we must take great pains to ensure that isolation is complete.
The Creeping Learning Curve: Every change made to the software, even those "trivial" little changes assimilated day by day by the design team, will be re-experienced, all at once, by each user upon first running the new revision. If your team of spends 6 months, and adds 1 feature each day, your users are going to be hit with 6 months worth of changes, all 180 of them, in the first 6 minutes.