Hey there @sylvia-tomiyama,

Thanks for taking a look at this and giving the user's experience some thought. 
I agree that some of the terminology surrounding the feature needs to be 
defined more clearly since there's some ambiguity around the term "published". 
You hit the nail on the head when you said that **My understanding is that 
unpublished dashboards are viewable, but less discoverable** – which is further 
bolstered by your distinction of _prod vs in-progress_. I think the comment 
about migration (which mentioned that dashboards would all of the sudden be 
gone) was referring to the visibility of them within these list views but they 
would not actually be gone or become truly unviewable. With that in mind I've 
considered some of the excellent points you've made and here's what I think:

### Welcome List & CRUD View List for Dashboards
You mentioned as a part of your understanding that the visibility of the 
dashboard will change on the `/welcome` page but not the crud view. This wasn't 
quite my intention since when I was developing the feature these both used the 
same `/dashboardmodelview/list` endpoint and displayed the same dashboards. 
However I think it's a good idea to show admins all of the dashboards on the 
crud list view and to include a column of whether or not it's published for 
filtering. The alternative would make it so that even admins wouldn't be able 
to see these dashboards unless they performed a query which is less than ideal. 

Right now I say that only admins should be able to see all dashboards because I 
believe this view is used more frequently for finding dashboards than 
`/welcome` (considering I'm not aware of a way to return to `/welcome` except 
by setting the URL specifically). If the Superset icon in the top left returned 
the user to this view instead of the profile I would say it should affect just 
the welcome page and not the CRUD view but since most people use the CRUD view 
to find dashboards once they're in the application I think the feature should 
de-clutter that view as well. Perhaps the _profile_ button under the human icon 
in the top-right can become the `/profile` page and then an edit button on that 
page can take you to `/users/userinfo`? It seems like this may be more 
intuitive even without this feature we're discussing haha.

###   Displaying and Altering the Published Status
I think you make a great point about the eye icon being a bit misleading and a 
bit too subtle. I think a better solution might be something like a [_draft_] 
badge next to the title of the dashboard (possibly with a hover-over tooltip) 
which indicates a few things:

- The dashboard they're viewing will not show up in the list of dashboards, 
they should favorite it to see it in that list along with the others
- The elements used in the dashboard are tentative and subject to change
- Users should consider whether or not it is okay for them to share the 
dashboard before doing so

This indicator seems like it would make the intention of the feature much more 
understandable.
 
As for altering the status, I think you're totally right that it makes more 
sense to put this in the actions dropdown especially if we forgo the icon which 
was both the indicator and the toggle.

### The Way Forward
Here's a couple of action items which I think are appropriate after this 
discussion for me to work on:

- [x] Replace the eye icon with a [draft] badge of sorts next to the title of 
unpublished dashboards.
- [ ] Add ability to toggle published status in the action dropdown menu 
- [ ] Add published field to CRUD listing of dashboards for sorting / filtering

Let me know what you think and thanks again for your consideration :)

[ Full content available at: 
https://github.com/apache/incubator-superset/pull/4725 ]
This message was relayed via gitbox.apache.org for [email protected]

Reply via email to