Today, I am going to do something a little unusual. I have been thinking about a way of making application interfaces more productive. To explain it, I am going to use the example of a word processor.
Right now, in traditional interfaces, every button and menu item is locked to a particular place. You can manually move them around, but they never move on their own. This system really makes very little sense if you think about it. Two seconds after pressing save you don’t need the save button in the same place as 10 minutes after last pressing save. Similarly, if you have just selected all the text, you are much more likely to change settings such as the line spacing, than while you are typing. You can apply this sort of logic to almost all the buttons and options of any application, so why do these buttons always stay in the same place no matter what you are doing?
Taking this idea to an extreme, every button would be free floating and would simply move towards or away from you depending on how likely it was that you would need it. This is probably not practical, though, since you would never know where an icon was at any time. A better implementation would be a small toolbar that follows your mouse and is populated with the 5-10 buttons you are most likely to need.
The only challenge with this approach is keeping the toolbar out of the way and yet easy to access. Some effort would have to be put in to this, but as long as the toolbar stays well behind the mouse, it should be fine.
Finally, there is the challenge of actually deciding what buttons the user wants at any time. Some buttons, such as save, are pretty obvious, but others are not. Probably the best way would be to watch the user’s actions and learn from them. Thus, the selection of buttons displayed at any time would reflect how the user uses the applications and would get better over time.
Would you use this sort of feature if it existed? Should this sort of thing be applied to the entire OS?