Dan Farber definitely captured the right idea in his
headline for his CNET News article today: “Jony
Ive's challenge: Redesigning the human-computer interface for the masses.”
However, Farber failed to say anything about why designing a human-computer
interface (HCI) for software is qualitatively different from evolving the
design of a new physical device. It is not just that software is more
malleable. Rather it involves the problem that software engineers do not always
think of functionality the same that the interface designers do.
This is why the best educational venues for learning
software engineering recognize that an interface is not some final layer placed
on top of a black box capable of performing some wide variety of operations.
Indeed, many who have been trained at such educational institutions will tell
you that Rule #1 is that the development of the interface should take place in
parallel with that of the code. Thus, if the code starts to go down a path that
will be hard for the interface to handle, the problem will be detected early in
the development stage and hopefully remedied.
Yes, there are functions within OS X that could do with
access through better interfaces. However, there are also a variety of
perfectly good interfaces that connect to code that just doesn't work. The
interface induces false expectations and then leaves the user in the lurch. It
may be necessary to dispense with a lot of the nuts and bolts currently under
the hood, perhaps even down to the current library of functions currently
accessible only through the Unix interface. Otherwise, Ive may find himself
pushed into the unpleasant situation of trying to make a silk purse out of a
sow’s ear; and the problem runs a lot deeper than providing that sow’s ear with
the superficial appearance of silk!
No comments:
Post a Comment