Hacker Newsnew | past | comments | ask | show | jobs | submitlogin

It wouldn't be "pretty awesome". It would be almost entirely unusable.

At the moment, Photoshop is difficult to use, but has thousands of features (I have no idea exactly how many) that presumably professionals make use of, at least to some degree or another.

Try making a modeless version of Photoshop like you describe and most people would have to look up the key combination before doing anything, at least until they've learned all the modifier keys (which sounds remarkably like emacs). Not exactly the paragon of usability.

As with almost everything, UI is a tradeoff between several different factors. In the case of modes, the applications that people like them in tend to be used by professionals or experts for a very specific purpose. In such a case, the utility, power and expressiveness is much more important than the initial ease of use.

If your aim is to create something that doesn't have thousands of features and should be usability immediately (or relatively so) by new users, then modes are likely a bad idea; if your aim is to create something powerful for experts who will be using it 8 hours a day for the next 5 years, modes may be worth considering.



"It wouldn't be "pretty awesome". It would be almost entirely unusable." Compared to the paragon of usability that photoshop represents today?

On its own, chords would hurt discoverability. But as I wrote originally, discoverability can be restored using another of raskin's ideas, a dynamic style of command line demonstrated by his son Aza in the Ubiquity and Enso projects, and also present in the Sublime Text 2 text editor (called the command palette there)-- In essence, if your program has thousands of features, then make them invokable from an efficient specialised search engine. If we are using chords, make the available chords discoverable and visible in the UI.

You can entirely avoid modes AND have an efficient and powerful interface for experts to use day in and day out. They are not opposing forces.




Guidelines | FAQ | Lists | API | Security | Legal | Apply to YC | Contact

Search: