And within "functionality" comes simplicity or at least intuitiveness of use. And that is not the same as the developers' and fans' familiarity with the programme.It's only functional when a new user can a) immediately discover what it can do and b) find out how to do it.
Also any aspect of function that demands "You have to do X first" needs a bloody good reason why you have to do X first, a pretty clear path to discovering you have to do X first and a good link from doing X to the function the user actually needs.