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

Unify checkbox, star, and radio buttons in the table #3430

Closed
dberenbaum opened this issue Mar 8, 2023 · 11 comments
Closed

Unify checkbox, star, and radio buttons in the table #3430

dberenbaum opened this issue Mar 8, 2023 · 11 comments
Assignees
Labels
A: experiments Area: experiments table webview and everything related discussion priority-p2 Future feature, less priority for now 📦 product Needs product input or is being actively worked on

Comments

@dberenbaum
Copy link
Contributor

There's a background discussion in https://iterativeai.slack.com/archives/C01APS0FHDM/p1676329398900699.

I get confused by when to use each of these:

Screenshot 2023-02-13 at 6 01 18 PM

I especially find it confusing because the checkbox actions for multiple experiments only impact the other two columns:

image

For example, if I go to star some experiments to compare, I can't then plot them automatically:

Screen.Recording.2023-03-08.at.4.16.44.PM.mov
@shcheklein
Copy link
Member

For example, if I go to star some experiments to compare, I can't then plot them automatically:

Q: what would you expect for this? A separate action, like plot all starred as part of the Add experiment drop down?


There is some unification happening in Studio that is related to this. Checkboxes will behave like they do in all the other products (including MLFlow, for example) - pick items to do some mass action (vs showing plots by default). That alone should reduce the confusion.

Also, there will an eye icon (that is srandard for W&B, MLFlow, comet, neptune, etc) to toggle the plots visibility.

I wish we could have adopted an eye icon as well here, but it's a limitation on the VS Code side, @mattseddon can add more color to this.

Stars - a bit different story. I'm trying to understand the confusion better - do you feel for example that stars are responsible for plots? If we change a circle to an icon - would that help or not? If we add quick actions as we discussed - would that help to clarify things or not?

@shcheklein shcheklein added product PR that affects product A: experiments Area: experiments table webview and everything related 📦 product Needs product input or is being actively worked on discussion and removed product PR that affects product labels Mar 8, 2023
@mattseddon
Copy link
Member

I wish we could have adopted an eye icon as well here, but it's a limitation on the VS Code side, @mattseddon can add more color to this.

Tl;dr is that we can only have 1 icon per row in the experiments tree. If we want to blend a spinner + selected/unselected for plotting then it needs to be a circle. Unless there is some smarter option that we have missed or we want to add a custom webview to the sidebar.

For more background, you can start here: #712

Note: Adding a webview opens up a different set of problems (matching styling/custom context menu etc) but it can be done.

@mattseddon
Copy link
Member

I realise we only have a very small sample (138) but could we look at our engaged users' usage to help here? Could even look at total usage?

@sroy3
Copy link
Contributor

sroy3 commented Mar 8, 2023

This definitely won't solve the whole thing, but adding a bigger margin after the checkbox might help understand that it behaves differently than the other two actions. It's a quick change that should help at least a little until we figure out a more complete solution.

@dberenbaum
Copy link
Contributor Author

Thanks all! This is definitely in discussion phase, so no need to rush to action.

If I use 🔘 then I find I can't filter the table to those experiments. If I use ⭐ , I can't plots those experiments. How do I choose a set of experiments that I can filter, sort, and plot? I think it would be nice to be able to filter, sort, plot, and star all 🔘 experiments.

Is the idea of ⭐ to save them so they can't be lost? If so, I have a couple questions about it:

  • Is it okay that they disappear once newer commits are added?
  • When would this be recommended vs doing dvc exp branch?

I also think the UI could make it more clear that this is the expected behavior of ⭐:

  • Can we make ⭐ be selected/deselected from the checkbox actions and not directly clickable? If these are supposed to be saved, I think it's too easy to accidentally select/deselect and doesn't seem to fit the purpose.
  • Maybe ⭐ is too vague of a visual cue? @daavoo suggested 📌 here (or maybe 🔒?).
  • Are there other visual cues that could help? For example, move all of these rows to the top of their commits or even the top of the table entirely? Color/format these rows differently?

@shcheklein
Copy link
Member

@dberenbaum let's forget about the stars for a moment (I can describe the context and intuition I had when we prioritized that a bit later). Do checkboxes and circles behave in the way you would expect for you?

@dberenbaum
Copy link
Contributor Author

If I use 🔘 then I find I can't filter the table to those experiments. If I use ⭐ , I can't plots those experiments. How do I choose a set of experiments that I can filter, sort, and plot? I think it would be nice to be able to filter, sort, plot, and star all 🔘 experiments.

This is my only request/confusion regarding the circles.

@shcheklein
Copy link
Member

Okay, the plot part comes by default with circles (they are kind a toggle for plot/unplot).

Filtering - we can add an option to filter them I guess, similar to the way we do with stars. I wonder if this should be even a quick toggle (similar to the "show only changes" toggle that we are discussing)- since I assume your use case it quickly compare metrics among plotted experiments?

Star / unstar - can be done via checkboxes. Any mass action should be done via checkboxes + context menu or a button that applies to the selected set of exps. Question here is do we want to have a quick way to select only plotted experiments? And how we do this in UX.

Am I going in the right direction, Dave?

@shcheklein
Copy link
Member

@dberenbaum let's sync on this tmr one more time. It's not clear if we can come up with some action items here.

@shcheklein
Copy link
Member

Okay, as we discussed the issue here is that it's not clear what is the workflow with the stars and radio buttons is expected. What "I can do with them"? Let's say I selected them, but what then? Can I see quickly see them in one place? Can I do actions on them at once? etc

Some possible practical steps:

  • Add a quick way to filter by starts and plot buttons
  • Still need a better explanation what radio buttons do (toggle plots). Change them to an eye icon after all? At least in the table even if we can't unify them with the side bar.
  • Remove stars to simplify things (it was based on my personal bias - when I was running a lot of things, I needed some way to "remember" about iteration. Convert them into branches?

@dberenbaum
Copy link
Contributor Author

dberenbaum commented May 3, 2023

Thanks @shcheklein. TBH I would not prioritize it myself, but all of those sound like good steps to me.

Edit: Among the p2 issues I have opened, I would rather see #1994 first.

@shcheklein shcheklein added the priority-p2 Future feature, less priority for now label May 3, 2023
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
A: experiments Area: experiments table webview and everything related discussion priority-p2 Future feature, less priority for now 📦 product Needs product input or is being actively worked on
Projects
None yet
Development

No branches or pull requests

4 participants