Seems like most comments here talk about the "intuitive" aspects of the design. Which I agree with -- an app should ideally be intuitive.
That said, being intuitive really only is an issue during the user's learning curve. As every vi/emacs user knows, sometimes you can be way more productive once you adapt to the computer, rather than the other way around. Gmail, for instance, has a very poor UI from a traditional perspective, but I find it very easy to be productive once I learned the keyboard shortcuts.
Intuitive is generally a good thing, but in and of itself isn't the most critical requirement for being usable, IMO. I prefer clustering of concepts, simplicity of presentation, and workflow optimization much more important.
But I still try to design my apps to be intuitive. After all, why not build on common concepts?
That said, being intuitive really only is an issue during the user's learning curve. As every vi/emacs user knows, sometimes you can be way more productive once you adapt to the computer, rather than the other way around. Gmail, for instance, has a very poor UI from a traditional perspective, but I find it very easy to be productive once I learned the keyboard shortcuts.
Intuitive is generally a good thing, but in and of itself isn't the most critical requirement for being usable, IMO. I prefer clustering of concepts, simplicity of presentation, and workflow optimization much more important.
But I still try to design my apps to be intuitive. After all, why not build on common concepts?