“I agree that there will always be a need for two different kinds of interface: One for naive users and one for expert users. The difference, as I see it, is that naive users are those who don’t have an internal model of the system (or some metaphorical interface to it) Thus naive users need that model represented explicitly ó one control (checkbox, textbox, button or menu-item) for each action they need to perform ó so they can read the functionality of the system from the interface. The interface decomposes complex ideas into a sequence of self-evident steps. Expert users, on the other hand, do have an internal model of the system and remember it’s capabilities and some way of refering to each of them. Thus they can enter commands which include references to multiple actions, composed grammatically.”