Hi,
With the latest GT integration, we also integrated the search for senders and references from the first step. Here is a detailed explanation about it, including what we still want to do, how it’s done, and how to discover what else is around: Please let us know what you think. Cheers, Doru -- www.tudorgirba.com www.feenk.com "Problem solving efficiency grows with the abstractness level of problem understanding." |
It turns the search field into a "kind of" command line interface, with #sen/#ref as commands. I love CLIs so I welcome it, but I think It "perverts" the search field and uses an awkward syntax. I prefer to type "senders" than to type a special character like #. I would prefer adding a suffix command so you search for 'do: senders' or 'do: implementors'. Regards! Esteban A. Maringolo 2016-01-19 10:43 GMT-03:00 Tudor Girba <[hidden email]>:
|
just that there is no syntactical way to know when you want senders or just retrieve methods who start with do: and continue with keyword sen… etc. that’s the reason from the hashtag (which is now a common symbol to filter/tag like in twitter/facebook/etc.) cheers, Esteban
|
ah, btw… you can also do: do: #sen it does not have to be in front… just you need to use the hash :)
|
In reply to this post by Tudor Girba-2
cool
now could we have an help menu that describes the key elements. People cannot discover that by themselves. A menu item is cheap. Stef Le 19/1/16 14:43, Tudor Girba a écrit :
Hi, |
In reply to this post by EstebanLM
Le 19/1/16 17:46, stepharo a écrit :
You see I complained a lot about Spotter but I do not care about the order. |
In reply to this post by Tudor Girba-2
Doru
on the blog you mention selectors but I'm confused, I thought that methods were implementors. So what is selectors? I checked and they are methods too. Stef Just for the record, there are parts the world where you have to use your GSM to browse the web. Even in France there are parts of the world where you cannot access to Youtube videos. Hi, |
Hi,
On Jan 19, 2016, at 5:52 PM, stepharo <[hidden email]> wrote: So, the difference is as follows. #Implementors lists actual methods. For example, if I search for do:, I will get multiple methods implementing do:. Also, when you preview, you get directly the source code of the method. If you trigger the action (Enter) you get the code browser opened on the method. #Selectors, will show only one occurrence of do:, and when you preview it, you see the list of implementors. Essentially, #Selectors behaves like completion and it allows you to discover new selectors. What’s more, if you trigger the action (Enter) on a selector, you get the implementors browser for this selector. Does this make sense? Cheers, Doru Stef |
In reply to this post by stepharo
2016-01-19 13:34 GMT-03:00 stepharo <[hidden email]>:
> > cool > now could we have an help menu that describes the key elements. > People cannot discover that by themselves. A menu item is cheap. The thing with the hybrid things is that if it is not self discoverable as in a menu item it can't be described by a --help flag like in a traditional command line. Regards! Esteban A. Maringolo |
> On 19 Jan 2016, at 18:08, Esteban A. Maringolo <[hidden email]> wrote: > > 2016-01-19 13:34 GMT-03:00 stepharo <[hidden email]>: >> >> cool >> now could we have an help menu that describes the key elements. >> People cannot discover that by themselves. A menu item is cheap. > > The thing with the hybrid things is that if it is not self > discoverable as in a menu item it can't be described by a --help flag > like in a traditional command line. we need a cheat sheet, otherwise, is arcane knowledge, reserved for the oracle. > > Regards! > > > Esteban A. Maringolo > |
In reply to this post by Tudor Girba-2
It has to be the oposite:
#implementors should show what people understand until now (a list of implementors) #methods should show the actual methods (as now does #implementors) why complicate things if we can do it in a way that satisfaces everybody? Esteban
|
In reply to this post by Tudor Girba-2
> > Essentially, #Selectors behaves like completion and it allows you to > discover new selectors. What’s more, if you trigger the action (Enter) > on a selector, you get the implementors browser for this selector. > > Does this make sense? Not really. It looks really complex to remember. To me selectors is part of implementors. I find it confusing. How do you get the right pane opened? Because I cannot get it. I clieck on the check or the arrow but it does not open. Again another discoverability problem. I think that my remarks about how to learn spotter still stands. Yes I can read your blog and may be remember everything but this is the way UI works. Stef |
Hi,
> On Jan 19, 2016, at 6:17 PM, stepharo <[hidden email]> wrote: > > >> >> Essentially, #Selectors behaves like completion and it allows you to discover new selectors. What’s more, if you trigger the action (Enter) on a selector, you get the implementors browser for this selector. >> >> Does this make sense? > Not really. It looks really complex to remember. > To me selectors is part of implementors. I find it confusing. I am not sure I understand. Here is the reasoning behind the names. Perhaps we can find better ones: - The Implementors Browser shows methods implementing a selector. - So, from this point of view, an implementor is a method. > How do you get the right pane opened? > Because I cannot get it. > I clieck on the check or the arrow but it does not open. On which arrow? :) When I tested the UI with users, and there were some, all of them felt that the gray arrow that goes outside the border is strange, and they clicked on it to see what it does. It seems that you do not see it like that. Perhaps the contrast is not strong enough, and we can work on that. And then, in Spotter we have another discovery mechanism: Shift. When you press it, all clickable things get highlighted (including the arrow). We chose Shift because it is something that you type often as part of a text, so it will be very likely that you will press it when working with Spotter as well. And this will get you to see that something happens. > Again another discoverability problem. I think that my remarks about how to learn spotter > still stands. Yes I can read your blog and may be remember everything but this is the way > UI works. Thanks for describing your way of working. It is useful. In any case, a help would certainly be useful, and it is on the todo list as well. Cheers, Doru > Stef > > -- www.tudorgirba.com www.feenk.com "It's not how it is, it is how we see it." |
Does this make sense? >> Not really. It looks really complex to remember. >> To me selectors is part of implementors. I find it confusing. > I am not sure I understand. > > Here is the reasoning behind the names. Perhaps we can find better ones: > - The Implementors Browser shows methods implementing a selector. > - So, from this point of view, an implementor is a method. I do not think that having a query for something that we do not use is good. I look for implementors and I'm used to get a list of methods >> How do you get the right pane opened? >> Because I cannot get it. >> I clieck on the check or the arrow but it does not open. > On which arrow? :) > > When I tested the UI with users, and there were some, all of them felt that the gray arrow that goes outside the border is strange, and they clicked on it to see what it does. I never thought about clicking on it. I thought it was a decoration not an active element. > It seems that you do not see it like that. Perhaps the contrast is not strong enough, and we can work on that. I see the arrow but it does not have an icon so why should I start to click on everything to see if it reacts. This is not the way I use User Interface. In general the UI tells me where I should click and I click. I did not ask the question to be dum or to show that Spotter UI is not intuitive: I could not find how to get the pane. So this is totally obscure that the arrow is more than a decoration. Putting an icon inside would make the trick because all the other parts the clickable once have icons. > > And then, in Spotter we have another discovery mechanism: Shift. When you press it, all clickable things get highlighted (including the arrow). We chose Shift because it is something that you type often as part of a text, so it will be very likely that you will press it when working with Spotter as well. And this will get you to see that something happens. Seriously not! Because you do not see how my hands are on the keyboard (we compared with esteban) my hand is fully over the keyboard with my tiptoe on numbers and higher like fn key so pressing shift = pain to me because shift is near to my wrest. In general I do not use shift. This is shift+ enter does not work for me. I would like to have esc + enter because esc is on the top left and I have my finger often on it. The proof is that I never saw that shift had any meaning and as I told you when I started to use Spotter I got pain in my hand => STOP using it. Damien has pain in all his fingers and looking for the reason (and the reason may be emacs shortcuts) so I do not play with strange short cuts. I started to use Spotter when I saw that I can use the right shift below enter. Now shift + cmd + arrows is nearly impossible because those are all keys at the bottom of the keyboard. So at the end what you believe is handy is handy for certain people but not other. I will not change my hand over keyboard position because I'm really efficient with it and I have no pain :) > >> Again another discoverability problem. I think that my remarks about how to learn spotter >> still stands. Yes I can read your blog and may be remember everything but this is the way >> UI works. > Thanks for describing your way of working. It is useful. > > In any case, a help would certainly be useful, and it is on the todo list as well. Yes and it does not have to be perfect and a menu to reset it. > > Cheers, > Doru > >> Stef >> >> > -- > www.tudorgirba.com > www.feenk.com > > "It's not how it is, it is how we see it." > > > |
In reply to this post by Esteban A. Maringolo
this is why we have ghost text in input field. To indicate to the user
the kind of input he may type So Spotter could show #class Point | #implementors do: | in really light grey in the input place. Stef Le 19/1/16 18:08, Esteban A. Maringolo a écrit : > 2016-01-19 13:34 GMT-03:00 stepharo <[hidden email]>: >> cool >> now could we have an help menu that describes the key elements. >> People cannot discover that by themselves. A menu item is cheap. > The thing with the hybrid things is that if it is not self > discoverable as in a menu item it can't be described by a --help flag > like in a traditional command line. > > Regards! > > > Esteban A. Maringolo > > |
In reply to this post by Tudor Girba-2
BTW, thanks for the explanations for Spotter.
> On 19 Jan 2016, at 18:37, Tudor Girba <[hidden email]> wrote: > > And then, in Spotter we have another discovery mechanism: Shift. When you press it, all clickable things get highlighted (including the arrow). We chose Shift because it is something that you type often as part of a text, so it will be very likely that you will press it when working with Spotter as well. And this will get you to see that something happens. I am lazy and fearful of RSI. If I can avoid using the shift key at all, I am quite happy. So I did not notice that the arrows where clickable. Here are a few suggestions that would fit my workflow. I also think that "Selectors" should appear after classes and before packages, and be called "Messages". Typically I want to open a specific class, or a specific message in a specific class. The short list of implementors at the top level is usually noise and might have confused Stef. It becomes relevant once the message is fully specified. Diving in should be done with right arrow when at the end of the command line. Diving out with left arrow at the start of the command line. When a list of paginated (only first N items), then the category line should be accessible with arrows, so we can dive into a category just with arrows. That would be awesome. |
In reply to this post by EstebanLM
Hi,
On Jan 19, 2016, at 6:14 PM, Esteban Lorenzano <[hidden email]> wrote: #methods should show the actual methods (as now does #implementors) Hmm, I think I do not understand so please bare with me. You seem to suggest that #Implementors would show selectors (symbols), and #Methods would show . why complicate things if we can do it in a way that satisfaces everybody? The goal is certainly not to confuse. Only that the problem is a bit more complicated than what might appear. When you are inside a method, you will naturally want to see #Implementors and #Senders. And in both of these categories, you will have methods and the preview will show code. If on the top search, #Implementors will just be symbols, then we have two meanings for the same label. We could also use #Methods and #Senders when inside a method, but that would not match well either. So, that is why we use #Implementors in the top search. Does this make more sense? I am asking because these are not carved in stone :) Cheers, Doru EstebanOn 19 Jan 2016, at 18:07, Tudor Girba <[hidden email]> wrote: |
In reply to this post by David Allouche
Le 19/1/16 20:25, David Allouche a écrit : > BTW, thanks for the explanations for Spotter. > >> On 19 Jan 2016, at 18:37, Tudor Girba <[hidden email]> wrote: >> >> And then, in Spotter we have another discovery mechanism: Shift. When you press it, all clickable things get highlighted (including the arrow). We chose Shift because it is something that you type often as part of a text, so it will be very likely that you will press it when working with Spotter as well. And this will get you to see that something happens. > I am lazy and fearful of RSI. If I can avoid using the shift key at all, I am quite happy. So I did not notice that the arrows where clickable. :) Same here. > > Here are a few suggestions that would fit my workflow. > > I also think that "Selectors" should appear after classes and before packages, and be called "Messages". Typically I want to open a specific class, or a specific message in a specific class. > > The short list of implementors at the top level is usually noise and might have confused Stef. It becomes relevant once the message is fully specified. > > Diving in should be done with right arrow when at the end of the command line. > > Diving out with left arrow at the start of the command line. > > When a list of paginated (only first N items), then the category line should be accessible with arrows, so we can dive into a category just with arrows. > > That would be awesome. > |
Hi,
> On Jan 19, 2016, at 9:18 PM, stepharo <[hidden email]> wrote: > > > > Le 19/1/16 20:25, David Allouche a écrit : >> BTW, thanks for the explanations for Spotter. You are welcome. Please keep challenging. This is how good design happens. >>> On 19 Jan 2016, at 18:37, Tudor Girba <[hidden email]> wrote: >>> >>> And then, in Spotter we have another discovery mechanism: Shift. When you press it, all clickable things get highlighted (including the arrow). We chose Shift because it is something that you type often as part of a text, so it will be very likely that you will press it when working with Spotter as well. And this will get you to see that something happens. >> I am lazy and fearful of RSI. If I can avoid using the shift key at all, I am quite happy. So I did not notice that the arrows where clickable. > > :) > Same here. What is RSI? Most people I know use Shift to type an upper case, and we observed that when people search, they often tend to still use uppercase. Not all, but many. That is why we put this functionality on Shift. This does not mean that it is enough, but we just wanted to increase the chance of people stumbling across this without any documentation. It only partially succeeded. Anyway, we should externalize the key bindings. Another thing on the to do list :) >> Here are a few suggestions that would fit my workflow. >> >> I also think that "Selectors" should appear after classes and before packages, and be called "Messages". Typically I want to open a specific class, or a specific message in a specific class. #Messages is not a bad name, but then again I also thought that #Selectors was explicit enough :). What do others think? >> The short list of implementors at the top level is usually noise and might have confused Stef. It becomes relevant once the message is fully specified. >> >> Diving in should be done with right arrow when at the end of the command line. >> Diving out with left arrow at the start of the command line. > I was wondering what is the benefit to have cmd - shit arrow vs arrow Left/Right is used to move inside the text area (there is only one text field in the whole UI), and that is why you cannot consistently use it for navigating through results. Navigating when the cursor is at the end is a tempting idea, but it implies a mode that is not contextual (you need to things to look at). That is why I would not want to have it in this interface. >> >> When a list of paginated (only first N items), then the category line should be accessible with arrows, so we can dive into a category just with arrows. We explicitly chose not to do that because we did not want to mingle different kinds of elements in the same list. So, like this, when you press Cmd+Right, you will always dive in one single element, and not in many by mistake. Actually, our original goal was to have a way to expand the list in place (not only to dive in category). For this we wanted a … line and clicking on that would expand the list in place. We did not get to do it yet, but I think this would solve quite some of the reported problems. But, please do keep challenging. And give it a try with writing your own processors. It would help us a lot. Cheers, Doru >> That would be awesome. -- www.tudorgirba.com www.feenk.com "Obvious things are difficult to teach." |
> On 19 Jan 2016, at 22:40, Tudor Girba <[hidden email]> wrote: > > What is RSI? https://en.wikipedia.org/wiki/Repetitive_strain_injury |
Free forum by Nabble | Edit this page |