-
Notifications
You must be signed in to change notification settings - Fork 29.4k
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Prominently recommend language extensions for debugging #119110
Comments
@digitarald what you are saying makes sense. I can look into improving this flow next milestone, thus assigning to April. fyi @weinand |
I have improved this quick pick dialog. Now we show the following dialog Clicking on the Install item shows the extension viewlet with the correct "python" query I think this really improves the flow and am quite happy with how this turned out, and for now I would not put any more prominent recommendation measure. fyi @connor4312 @weinand |
@sana-ajani good point. I have changed to use the languageLabel not the languageId, so now it will be C++ works just fine for me, can you please clarify your steps. |
I think |
This looks great! I will spend some more time tomorrow to test the flow. A wording aligned with the extension recommendation prompt could be "Show recommended debugger extensions for C++", being clear about showing (vs install) and the value that this will allow debugging. I am not sure about how this potentially clashes with the placeholder text. "can not find extension …" vs "show extension …" (why show what can't be found?) could maybe need to be a more crisp. Maybe something along the lines of "Debugging C++ requires an additional extension". |
"Debugging C++ requires an additional extension" works for me as a placeholder text, I can make that change. Let's also see if @weinand has feedback and I might demo this in Zurich standup Thanks a lot for sharing your thoughts! |
If it doesn't use the same logic, the "recommended" should be dropped – right. As a consideration – could this use the same mechanism if the language has a recommended important extension? |
@isidorn by just reading the comments from above, I do not really understand what a user is expected to type into the Quick Pick. |
@weinand that's a good point. I have switched to use a modal dialog |
The button will not start the installation process automatically it will just open the extensions viewlet, so maybe the more correct term would be as @digitarald suggests: "Show Python extension" |
@isidorn yes, using a modal dialog in this situation is more intuitive. Since the next step after this dialog is to "find" a Python extension on the Marketplace, I suggest to not use the word "find" already for the first step. We could use something like this:
And for the Button:
|
@weinand thanks for feedback. Here's Version 2. |
Verifier:
|
@isidorn any chance that we can have this behind an experiment flag to observe improvements in debug sessions. Debugging is a new-user issue across all language extensions; so those insights could help to further invest into this setup flow. I'd be happy to help set everything up and shepherd it through the process. |
@digitarald thanks for the offer but I think experiments make good sense when we are not sure about what path to take. |
I agree that we have high confidence for this one and don't need to evaluate options – an experiment isn't blocking. We'd like to get better at understanding the cycle of qualitative observations and quantitative impact; with the help of running these smaller high-confidence improvements through experiments. We would better understand how improvements change metrics to further improve metrics and baseline future experiments. This is especially important for debugging, being one of VS Code's core features but also one of the steepest adoption curves. Some of the questions that we could observe beyond an increased debugger setup rate:
|
@isidorn @digitarald I think it would be valuable to see just how much this prompt helps new users get the right extensions installed and how exactly it helps the run and debug flow. Running as an A/B test in Insiders before we release would be a good confirmation, or I might suggest doing a few user studies since this is a problem we initially saw from user testing (though this might take more time to set up and parse through results) |
Search is improved when switching to |
@connor4312 thanks! |
Would it still further improve the results by removing the |
@digitarald yes, I have this on the plan for today, here's the item tracking this #122079 |
Ha, lost track with search improvements landing across different issues. Thank you, @isidorn! |
Problem
If a user misses to install an important language extension that provides debugging (like python or java), the setup of run & debug makes a lot less sense. The provided defaults in "Select Environments" are all meant for JS and don't give any additional context.
In usertesting we saw most Java/Python users without the right extension give up on "run & debug", and one even try Chrome-debugging on a python file. None of them clicked on the nondescript "More …" in "Select Environment" (which opens the search for debugger extensions).
Solutions
The run & debug viewlet and setup prompt could use file and workspace recommendations to highlight a shortlist of extensions that the user should install to make debugging easier.
We could start with a small scope for Java, C++ and Python and run this as experiment.
cc @sana-ajani @stevencl @isidorn
The text was updated successfully, but these errors were encountered: