On Oct 3, 2005, at 11:05 AM, Tony Garnock-Jones wrote:
Romain Robbes wrote:
hotkey. we already have them and they work quite well.
but they are slower when you have to explore deeply (5-10 senders/ implementors)
I don't understand this. How exactly are they slower? Perhaps you could use KLM-GOMS to sketch out a quantification of some of these design decisions:
http://www.rpi.edu/~glasse/HCI-HOWTO/ar01s03.html http://www.cs.umd.edu/class/fall2002/cmsc838s/tichi/printer/goms.html
ok, I did a quick computation
with double-click: reach mouse: 400 reaching a piece of code: 1100 double-clicking: 400 total is 1900
with a keystroke: reach mouse: 400 reaching a piece of code: 1100 pressing alt-n: 280*2 (not sure whether this is two characters, or less) total is 2060, or slightly less
I did not count navigation using keys which would be too variable. This assumes that we define a shortcut (alt-n above) which determines from the context the right action to do: senders, implementors, or references to variable/class.
So the two are close to each other. The thing is that it seems more natural to me to do everything with the mouse in this case, especially when you have to click several times in a row (and, as I said before, this is a Vim user talking ;-) ).
Anyways, we can compare with the current system: reach mouse: 400 reaching start of entity: 1100 "Mental", thinking : 1200 (thinking about whether typing the shortcut now is enough or if you should select the entire entity when messages are nested). "Mental", thinking : 1200 (thinking whether to use alt-n, alt-m, alt-N, or the menu item to get references to the instance variable (no shortcut for this one?) keystroke: 280 * 2 total is 4460, in the best case (no selection of code, and no going to select an item in the menu).
Romain
Tony
-- Romain Robbes http://www.inf.unisi.ch/~robbes/