Robert Fraser: > bearophile wrote: > > To design an API you have to start collecting possible (even ideal) users. > > Then you trim them down to the few most important people, and give a face > > and a name to each one of them. > > LOL, user personalities. I remember catering to the user "Mustafa" when > I was working at MS, which I think I misunderstood to have something to > do with the Circle of Life.
Do you mean Mufasa :-) I was not talking about personalities, but mostly about classes of users; people have all different skills and necessities, but can often be categorized in few groups. Then you give a name to a representative of each class. You don't need to give them detailed personalities, just the characteristics that tell the classes apart. I haven't invented this method, it comes from Alan Cooper (Visual Basic) and Donald Norman ( human-centered design). Python core developers don't use this method, by the way. I have used it do design small programs with a GUI, starting from such user classes => use cases => GUI => logic. Bye, bearophile
