[OSM-talk] State of JOSM
Gervase Markham
gerv-gmane at gerv.net
Sun Dec 9 15:10:58 GMT 2007
I think it's important to make a clear distinction between usability and
learnability. Usability is how easy an interface is to use when you know
it. Learnability is how easy an interface is to get to know.
Driving a car is a good example. The car control interface currently in
use today is extremely usable - millions of people use it every day to
control tons of metal flying around at high speeds and there are
relatively few accidents. However, it is not very learnable, which is
why new drivers generally have to have 20 or 30 hours of instruction
before they are good enough to be let out unsupervised.
If a UI is going to be used mostly by people who have never used it
before and may never use it again, you need to prioritise learnability.
A good example is a computerised information kiosk.
If a UI is going to be used mostly by people who use it regularly, and
need to get a job done, then you need to prioritise usability. A good
example is the interface on a point of sale terminal.
I assert that JOSM is in the latter category. Therefore, while we should
not go out of our way to make it difficult to learn (and we should
provide good docs), the most important feature is that people who have
learnt it should be able to make the changes they want to make quickly
and correctly. A modeless interface is likely to be faster because of
the removal of the need to switch modes. So I see that as a step in the
right direction.
However, the interface is highly unlikely to get to a
well-thought-through, consistent state if changes to it are driven by
complaints about particular aspects. (This is a general principle of UI
design; I'm not saying anything specific about JOSM.)
Better would be to sit down and draw up a list of all the actions one
might want to take (add node, delete node, add way etc.), and the
relative likelihoods of needing to do them when creating areas and when
maintaining areas. Given that the list of actions has recently changed
(with the removal of segments), it's a good time to do this exercise.
Once you have this data, you can work out which key/mouse strokes should
be made to correspond to which actions, in order to provide a smooth
workflow both in the "addition" and the "editing" cases (if they are, in
fact, different, which they may not be).
As someone with an interest and a certain amount of experience in UI
design, I would be happy to cooperate with others on a UI specification
for map editing for JOSM.
Gerv
More information about the talk
mailing list