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 improving UX for Welcome Page #63152

Closed
miguelsolorio opened this issue Nov 14, 2018 · 43 comments
Closed

Explore improving UX for Welcome Page #63152

miguelsolorio opened this issue Nov 14, 2018 · 43 comments
Assignees
Labels
ux User experience issues workbench-welcome Welcome page issues
Milestone

Comments

@miguelsolorio
Copy link
Contributor

miguelsolorio commented Nov 14, 2018

This exploration will aim to modernize the look and feel of the Welcome page while also improving the layout for new and current users. Items we're looking to explore:

  • Add "privacy" section to page for better visibility
  • Add "recently update" section for app and extension updates
  • Add underline for text links on hover (consistency)

Related issues

Current Design

image

Research

Our research shows that new users install language & keyboard shortcut extensions the most, while current users go to recent projects or open folders. Below is a visualization of the top actions.

Top actions for new users

new users

Top actions for current users

current users

I will be updating this issue with explorations as they're developed.

@miguelsolorio miguelsolorio added ux User experience issues workbench-welcome Welcome page issues labels Nov 14, 2018
@miguelsolorio miguelsolorio added this to the November 2018 milestone Nov 14, 2018
@miguelsolorio miguelsolorio self-assigned this Nov 14, 2018
@chpxu
Copy link

chpxu commented Nov 14, 2018

@misolori from my issue at #56144 there was a comment about pinned projects on the welcome screen too.

And also to keep in line with thw rest of VSCode, the hyperlinks should have an underline on hover

@miguelsolorio
Copy link
Contributor Author

@beastdestroyer thanks, I've updated the issue to include those two.

@gulshan
Copy link

gulshan commented Nov 15, 2018

Should welcome page contain a link to command for git cloning a repo (under the Start section)? IntelliJ and next Visual studio is showing that in their start/welcome page/view.

@miguelsolorio
Copy link
Contributor Author

Explorations

Exploration A

  • Moves Start and Recents to the right
  • Adds option to star/remove recent item
  • Adds privacy section for telemetry
  • Condenses help links into buttons

exploration a

Exploration B

  • Moves Start and Recents into sidebar
  • Adds option to star/remove recent item
  • Adds privacy section for telemetry
  • Condenses Customize, Learn, Help into tabbed content
  • Adds an "Updates" tab to show app & extension updates

exploration b

Exploration C

  • Makes recents two-columns
  • Moves Start to the right side
  • Adds option to star/remove recent item
  • Adds privacy section for telemetry
  • Condenses help links into buttons
  • Condenses help links into buttons

exploration c

Exploration D

  • Makes Recents and Start into two-columns
  • Moves Customize, Learn, Help into large buttons
  • Adds option to star/remove recent item
  • Adds privacy section for telemetry
  • Condenses help links into buttons
  • Condenses help links into buttons

exploration d

@octref
Copy link
Contributor

octref commented Nov 15, 2018

I do think Playground is an important part for people to get familiar with VS Code's editing features and should be a part of the welcome experience.

Being able to try the features right in editor is much better than reading docs in a browser and come back to editor.

@Da13Harris
Copy link

I prefer B... I think giving regions of space to each set of features could help users process them more quickly/easily at a glance. The background on the right side creates a nice separation. The tabs in the main content area allow a few items to be tucked away a bit, reducing clutter. It'd be a nice bonus if it retained the state of your selected tab.

@chrmarti
Copy link
Contributor

I like the focus of C on 'Recent' folders. Is there a good way to use that space when there are no recent folders yet, like on first startup? E.g., by using a subpage switcher like in B.

@chpxu
Copy link

chpxu commented Nov 16, 2018

I like C and D, perhaps sort the buttons on D by category like C, lower that container down so it's centre with everything else, and center the Show welcome page on startup checkbox

@ghost
Copy link

ghost commented Nov 16, 2018

Seems like the C is the best option. Focus on "Recents" is the best.

@miguelsolorio
Copy link
Contributor Author

miguelsolorio commented Nov 16, 2018

@chrmarti that's a good idea. We could move the "Help" content up to the recents location when there are no recents, since the users accessing this view would most likely be new users, and then move it back when there are recents:

exploration C-1

@rebornix
Copy link
Member

I prefer D the most and here are my 2 cents. Before I'm super familiar with shortcuts of Open Recent and Open Folder, I used Welcome Page as my dashboard. I bind F2 to command Open Welcome Page and then everytime I just press F2 and then

  • Choose a recently opened folder
  • Or open a new folder

But now I no longer do that as I have to switch from the keyboard to mouse to operate on the welcome page. When I use Open Recent, I only need to press Ctrl+R, type and then pressing Enter, however with welcome page, navigating into those links is painful.

For option D, as we already focus on the Recent Folders, if we can use arrow keys to navigate between all clickable elements, it can be super helpful
image

@chrmarti
Copy link
Contributor

@misolori I like that. 👍

@rebornix I think keyboard-centric navigation is best served by the Open Recent (Ctrl+R) command. We should still think about improving keyboard navigation on the Welcome page, but I wouldn't optimize the design for the keyboard.

@miguelsolorio
Copy link
Contributor Author

Exploration C

Here's an updated exploration for Concept C. In this one I explored ways to make the first day experience (Day 0) focused on getting started. From the research above, it's very important for new users to adjust the editor to fit their workflows (via language support and keyboard shortcuts). Additionally, I wanted to make sure that current users (Day 30) we're able to easily access their recent projects while still providing for a way for those new users to access the first day content.

Day 0

  • Focal point is on getting started (customizing and learning) while also exploring the product
  • Added content tabs for app + extension updates, and help content
  • Entire layout is reduced for easier click targets

exploration c 1 4

Day 1

  • Moved customize and learn content into tabbed content to reduce visual noise

exploration c 1 2

Day 30

  • Increased layout for higher density of information
  • Recents turns into two columns

exploration c 1 3

@chrmarti
Copy link
Contributor

I need to warm up to that little page switcher. Isn’t that an indication of us putting too much information on the ‘Welcome’ page?

I like the other ideas.

@chpxu
Copy link

chpxu commented Nov 20, 2018

@chrmarti But can't you also argue that. being a Welcome screen, a lot of features can make it quite appealing, especially to newer users. I would say depending on the content yes there may be too much, but the page switcher with a few buttons isn't at all

@miguelsolorio
Copy link
Contributor Author

miguelsolorio commented Nov 20, 2018

It's a hard balance to make certain content the focal point for certain users, so that's the main reason for introducing the content tabs/switcher. In our current design, we definitely show a lot of content so I'm trying tidy that up while placing a bigger emphasis for Recents and Start.

For example, new users are more likely to install their language & keyboard extensions to support their workflow while current users are more likely to open a recent project. But we can't have an emphasis for all of it at the same time so contextually moving it can help with that.

@dalDevelo
Copy link

dalDevelo commented Dec 3, 2018

Another vote for B here, perhaps with a button to expand (& pin) recents to fill the page...for those who want recents as the primary function of their welcome page, after using the application for some time.

Also agree that playgrounds need to feature here somewhere, but I guess that would be under the learn tab.

@miguelsolorio
Copy link
Contributor Author

After doing a bit of user testing with the various explorations above (thanks to @stevencl), we've found that Exploration C has performed the best and we'll be working on incorporating those changes. The actual changes will likely happen in the next iteration or so. I'll keep this issue open as I post higher fidelity mockups. Below are the latest iterations.

Day 0

day 0

Day 30

day 30

@miguelsolorio
Copy link
Contributor Author

Below are a couple of the higher fidelity mockups:

Day 0

welcome

Day 1

welcome

Day 30

welcome

Transition (GIF)

ezgif com-gif-maker 5

@Astrantia
Copy link

Astrantia commented Dec 13, 2018

@misolori the folders list looks really empty. can icons be added next to them? if a folder is mainly javascript maybe display javascript icon?
image

@miguelsolorio
Copy link
Contributor Author

@Astrantia the intention is to keep it simple, any icons would add unnecessary visual noise since it would be the same icon (projects can contain multiple file types).

@dalDevelo
Copy link

It’s a minor complaint, but I think the logo and header text alignment looks terrible in relation to the text below. Maybe the header could be moved up a little further to create more separation from the ‘recents’ section below, or add some background shading to the recents section, such as in exploration B (which I still prefer). It would probably even look a little better if the logo was moved to the right hand side of the text and the header text was aligned to the text left?

Are recent workspaces still identifiable by (workspace) after the title, or will there be other visual indicators of workspaces, such as a different shade of text, perhaps?

@weinand weinand added this to the April 2019 milestone Mar 29, 2019
@alefragnani
Copy link

Hi @misolori ,

I really liked the new mockups, specially the exploration C, but I would like to comment a different area.

Is there any chance (or had any conversation about) allow extensions to contribute to certain sections of the Welcome Page?

I mean, my Project Manager extension allows the user to define Favorite Projects and would be nice to have this list available right from the start in the Welcome Page. This could appear near the Recent section.

There are also some extension that almost makes VS Code a new IDE, like the Java/Python extension. These extensions could add their new kinds of projects/files in the Start section.

Even the Help section could receive contribution from extension.

The idea is the extension contributes / provide additional info, not replace the VS Code contents. So the users still gets all the current help/features/support from VS Code, and after extending VS Code with new extensions, the start up would also be improved.

Thanks, and congratulations for the explorations 👍

@miguelsolorio miguelsolorio modified the milestones: April 2019, May 2019 May 8, 2019
@miguelsolorio miguelsolorio modified the milestones: May 2019, June 2019 May 30, 2019
@miguelsolorio miguelsolorio modified the milestones: June 2019, Backlog Jun 24, 2019
@kowalski7cc
Copy link

Totally agree with @alefragnani
Really loving exploration C (maybe logo could be a little bigger) and would be wonderful if extensions could contribute to the page.
An exanple could be a GitHub extension to provide open issues or remote repositories.
Or the SSH remote cold provide some host to connect to, without opening a project.
Hope to see soon the new design! 😁

@andrewrothman
Copy link

andrewrothman commented Nov 6, 2019

Basing off of: https://user-images.githubusercontent.com/35271042/49915404-45fc5580-fe4a-11e8-918f-473f31dd739a.png

What do you think of moving the "New File", "Open Folder...", and "Add workspace folder..." buttons above the recent files/folders list? They could be represented as horizontally stacked icons, possibly with titles underneath. That way, the "Start" section could be removed, which should provide enough space for the "Customize", "Learn", and "Help" tabs to be broken out into vertically stacked sections (removing the need for a page switcher).

Thoughts?

@Matelasse
Copy link

@misolori What became of this?

@miguelsolorio
Copy link
Contributor Author

@Matelasse we've got a direction for the design but this has yet to be added to a milestone. I'm hoping this happens soon though I don't have an ETA.

@lambainsaan
Copy link
Contributor

@misolori UX is sorted for this, right? I would love to implement the new designs.

@roman-petrov
Copy link

This might be a great improvement: being a non-new VS Code user I never need many items on current Welcome screen and use every day only Recent as show on initial design proposal as top 1 action for current users. I suppose there are many VS Code users doing the same.

@miguelsolorio
Copy link
Contributor Author

👋 Hey Everyone, it's been a while since we last updated this issue. We've been busy working on a new "Getting Started" experience (#111554) and we're ready to revive the welcome page explorations. I'll be posting updates into this issue since they are all related. A few additional items we're exploring:

Empty folder

image

Workspace

image

Workspace + Recents

image

Workspace + Recents + Getting Started

And after some time that the user has opened multiple projects and installed multiple extensions that contribute to the getting started content

image

@kolebayev
Copy link

Hi, are there any methods in current extensions api to make custom welcome page (as extension)? I need to show only recents as grid (not list) and button to open folder with project for example

@digitarald
Copy link
Contributor

@kolebayev there is #119097, but just for walkthroughs. What kind of projects would you expect to see on the recent list? Feel free to ping me on my profile email for longer input.

@Inori-Lover
Copy link

simple is better, i choose a

@miguelsolorio
Copy link
Contributor Author

Since we already shipped our new welcome page that includes the new getting started pages, closing this issue as done 🎉

@github-actions github-actions bot locked and limited conversation to collaborators Aug 23, 2021
Sign up for free to subscribe to this conversation on GitHub. Already have an account? Sign in.
Labels
ux User experience issues workbench-welcome Welcome page issues
Projects
None yet
Development

No branches or pull requests