[program-l] Re: Opinion on Visual Studio code completion experience

  • From: Jeff Berwick <mailinglists@xxxxxxxxxxxx>
  • To: program-l@xxxxxxxxxxxxx
  • Date: Mon, 5 Nov 2018 15:30:56 -0500

I suspect you may get a whole host of opinions, without much consensus.

I am fine with the most commonly used items being placed at the top, but you 
could include them at their usual spot for those who want to maintain 
alphabetic integrity.

I would prefer to hear “Recommended” after the selection.  This allows me to 
select the option that I want without caring whether you are recommending it or 
not.  If I want to find out what is recommended, I am happy to wait the half 
second to hear the end of the item and learn that it is a recommended item.

Now that I write this, I’m not sure that “Recommended” is the right term, but 
I’m struggling to come up with a better one.  It isn’t really recommended, it 
is most used or most likely—maybe even popular.

You can even make it an option that can be changed as some people will prefer 
the notation before, while others would prefer it after.

Jeff


On Nov 5, 2018, at 2:47 PM, Dante Gagne (Redacted sender "danteg" for DMARC) 
<dmarc-noreply@xxxxxxxxxxxxx> wrote:

Hey folks,

First off, if folks think this is an inappropriate use of the list, just say 
so and I'll take it offlist and apologize up front. However, I was hoping I 
could ask the crowd for a few opinions now and then for functionality that 
we're considering in the upcoming version(s) of Visual Studio. Essentially, I 
have my guesses that this experience would work, but I'd rather YOU folks 
tell me that it does.

Today when you're coding in Visual Studio, when you hit "." After a token, 
the Intellisense completion list comes up with every single possible token 
that could follow. So, if you type "Debug.", you'll get "Assert, AutoFlush, 
Close,..." etc... (To be clear, you get a list box with each of these as an 
entry in it, so you'd hit arrow key to travel through).

The new feature, uses machine learning to "guess" what is most commonly used. 
For instance, for most folks, Debug.Write or Debug.WriteLine is the most 
common completion. The feature will move those items to the top of the list. 
However, since they're out of alphabetical order, they are annotated to show 
that these are "recommended" instead of in the "everything" list.

If we did nothing, when you type Debug. You would hear "Write, Writeline, 
Assert, Autoflush", etc... But in that case, you don't know which ones are 
recommended, just that they're the first ones.

The question I have is this... how would you feel if the recommended 
completions were preceded with the word "Star"? So, if I went this way, you'd 
type "Debug" and hear "Star Write, Star Writeline, Assert, Autoflush...". The 
first suggestion that was made was to say "Recommended", but that's four 
syllables and I asserted that a screen reader user would go crazy having to 
sit through hearing "Recommended Recommended Recommended..." over and over. 
But "Star" is very quick.

We had also thought about putting it after the token so you'd here "Write 
Star, Writeline Star, Assert, Autoflush" but the thought there was that 
"Write Star" sounds an awful lot like the name of the method is literally 
"WriteStar". 

How do folks feel about this? Is "Star" short enough that saying it before 
the recommended items (of which there usually aren't more than 2-3)? Some 
other suggestion?

Thanks in advance, and again, I do apologize if this is out of line for the 
mailing list. Just let me know.

-Dante
** To leave the list, click on the immediately-following link:-
** [mailto:program-l-request@xxxxxxxxxxxxx?subject=unsubscribe]
** If this link doesn't work then send a message to:
** program-l-request@xxxxxxxxxxxxx
** and in the Subject line type
** unsubscribe
** For other list commands such as vacation mode, click on the
** immediately-following link:-
** [mailto:program-l-request@xxxxxxxxxxxxx?subject=faq]
** or send a message, to
** program-l-request@xxxxxxxxxxxxx with the Subject:- faq


** To leave the list, click on the immediately-following link:-
** [mailto:program-l-request@xxxxxxxxxxxxx?subject=unsubscribe]
** If this link doesn't work then send a message to:
** program-l-request@xxxxxxxxxxxxx
** and in the Subject line type
** unsubscribe
** For other list commands such as vacation mode, click on the
** immediately-following link:-
** [mailto:program-l-request@xxxxxxxxxxxxx?subject=faq]
** or send a message, to
** program-l-request@xxxxxxxxxxxxx with the Subject:- faq

Other related posts: