Skip to content
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

Explore UX to explain vscode.dev differences compared to desktop app #166895

Open
joyceerhl opened this issue Nov 21, 2022 · 14 comments
Open

Explore UX to explain vscode.dev differences compared to desktop app #166895

joyceerhl opened this issue Nov 21, 2022 · 14 comments
Assignees
Labels
feature-request Request for new features or functionality ux User experience issues

Comments

@joyceerhl
Copy link
Collaborator

When on vscode.dev, users are often deeplinked into specific content (PR diffs, editor deeplinks), which means that a first-time user of vscode.dev may not see our getting started walkthroughs and are not set up for success when using the product. We'd like to create a way for first-time users to learn about how to use the product, e.g. by showing info about how uncommitted changes are persisted in a lightweight overlay that is dismissed as soon as the user interacts with the UI. (Possible alternatives: surface this info in banner, integrate this info into the GitHub auth dialog since all users must already sign in, always open Getting Started editor for new users)

There are similar use cases e.g. wanting to spotlight new features in the product. We've done prior exploration on integrated walkthroughs: #106717 (comment)

@daviddossett daviddossett added feature-request Request for new features or functionality ux User experience issues labels Dec 5, 2022
@daviddossett
Copy link
Contributor

Saw this today and it actually worked well as an FYI, simple as it is.

CleanShot 2022-12-13 at 14 01 26@2x

@daviddossett
Copy link
Contributor

Taking some inspiration from the example above + others to see what this might look like as a dialog:

vscodedotdev-intro-dialog

Obviously the icons and text are boilerplate overall but let me know what you think of the pattern as a starting point cc @joyceerhl @bhavyaus

@joyceerhl
Copy link
Collaborator Author

One consequence of this change is that new users will see at least two back to back modal dialogs, because GitHub Repositories triggers the modal dialog sign in flow for first-time users, and the filetree and editor don't get populated until auth completes.

If there isn't a softer touch approach we can go with, would we want this info dialog to appear before or after the auth dialog?

I believe we'd also want the dialog above to visually align with the custom modal dialog, which looks like this at the moment (no rounded corners and possibly different background / button color tokens?

image

@daviddossett
Copy link
Contributor

daviddossett commented Jan 9, 2023

Yeah I'd thought about the multiple dialogs issue too. Not sure yet if it would be a dealbreaker. But in any case I think I'd expect to see the auth dialog second since the other one is more a of a overall "welcome" step. Perhaps there's a slick way to bundle these together in a sort of multi-step way.

Instead of a "Got it" button, it could be "Next" with the second step being the auth flow. Just one idea.

Re: styles, agreed on alignment. Although I would say I'll probably move our custom dialogs to use rounded corners all up.

@daviddossett
Copy link
Contributor

Here's a quick sketch of what I had in mind:

CleanShot.2023-01-10.at.09.52.08.mp4

@bamurtaugh
Copy link
Member

Maybe the final point of the first modal could mention GitHub Repositories and tell users they're next going to log into GitHub (I think this step would need to be dynamic in when it appears since users could be entering from vscode.dev without any GH repo open though). This might be a nice heads up and make it feel more like a step-by-step progression, rather than just two back to back modals.

@joyceerhl
Copy link
Collaborator Author

Instead of a "Got it" button, it could be "Next" with the second step being the auth flow. Just one idea.

You generally only need the auth flow once (unless you then signed out), so "Next" might be a little misleading. What does the ChatGPT "Next" button do?

@daviddossett
Copy link
Contributor

Wouldn't this series of modals only show once for new users? Or do we also need to anticipate the case where they are already signed in but see the first dialog for the first time?

@joyceerhl
Copy link
Collaborator Author

Or do we also need to anticipate the case where they are already signed in but see the first dialog for the first time?

This would be the case in github.dev if we chose to adopt this modal welcome in the github.dev embedder, because auth is pre-seeded when you're coming from github.com there.

@daviddossett
Copy link
Contributor

In that case we might need to account for this just being a single step then. So the text would either be "Next" or something like "Got it".

I can see how this would be tricky to know ahead of time to make that decision though. "Continue" or similar could account for both cases without needing special logic.

What does the ChatGPT "Next" button do?

I can't actually seem to get the dialog back but I think it was just more information on what ChatGPT is etc.

@daviddossett
Copy link
Contributor

Another example from Slack

CleanShot 2023-01-12 at 14 30 32@2x

@daviddossett daviddossett changed the title Explore an integrated way to highlight new features in the product Explore UX to introduce unique vscode.dev behaviors Jan 13, 2023
@daviddossett daviddossett changed the title Explore UX to introduce unique vscode.dev behaviors Explore UX to explain vscode.dev differences compared to desktop app Jan 13, 2023
@daviddossett
Copy link
Contributor

Some other modal variations of varying weight/content:

Lightweight:

c

W/ some sort of artwork to grab attention (obviously just a placeholder to get the point across):

b

Instead of a modal we could use a sort of intermediate page before loading the actual app. This makes it feel a little bit more important vs. a modal which many would simply dismiss without looking. Probably could cut down the text here as much as possible:

a

@rebornix
Copy link
Member

I was playing around with it today and it was unexpected to see a modal dialog because it's blocking the current user workflow. I don't think we do this in other scenarios except where VS Code or an extension requires user input to continue functioning properly, e.g. Trust Workspace, GitHub Sign In. The current Get Started/Welcome page doesn't block the user's workflow, so I don't think this info popup should.

@sbatten
Copy link
Member

sbatten commented Mar 13, 2023

@rebornix while I hear the feedback, there are some special notes about this to consider:

  1. It's not meant to be recurring, this is for new users to the flow and they should only see it once.
  2. The non-blocking flow doesn't engage users, therefore they are dropped into a UX where they have no information and get confused.
  3. This is a work in progress, user studies still need to happen to validate hypotheses that this is useful.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
feature-request Request for new features or functionality ux User experience issues
Projects
None yet
Development

No branches or pull requests

5 participants