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

[Canvas] [Meta] UX improvements for changing your data source #40890

Closed
3 of 24 tasks
ryankeairns opened this issue Jul 11, 2019 · 8 comments
Closed
3 of 24 tasks

[Canvas] [Meta] UX improvements for changing your data source #40890

ryankeairns opened this issue Jul 11, 2019 · 8 comments
Labels
Feature:Canvas impact:low Addressing this issue will have a low level of impact on the quality/strength of our product. loe:x-large Extra Large Level of Effort Meta Team:Presentation Presentation Team for Dashboard, Input Controls, and Canvas

Comments

@ryankeairns
Copy link
Contributor

ryankeairns commented Jul 11, 2019

Problem statement

Canvas looks fun and people are excited by the prospect of creating a highly customizable presentation of their data! So they dive into a new workpad, add an element, and then…

What’s all this data source stuff?

  • This doesn’t look familiar.
  • I’ve heard of Timelion, but it’s going away, right?
  • I haven’t SQL’d in a long time.
  • I know some SQL, but this is just a text box.

The moment can become lost.

Live data is a key differentiator between Canvas and other presentation software, which is troublesome if it also happens to be an early hurdle for our users.

What if users could more easily see their data in real elements?
Suppose you open add your first element and within seconds you can view your own data?

It’s a much more impactful experience that leaves the user feeling as though everything is possible, they need only add imagination. There will still be challenges, sure, but knowing that you have a palette of elements and your data readily available then places the onus on the user to continue building.

If you can’t get your data into onto the workpad page, then you’ll presume the tool to is too difficult to use or, worse yet, flawed. At which point, you quickly bail.

Findings

While this initially surfaced as anecdotal feedback, it became quickly apparent while conducting user testing sessions that something is amiss. The initial pattern that a new user follows is fairly predictable:

  1. Create a new workpad (or start from a sample data workpad)
  2. Add a new element (or select an existing sample element)
  3. Change its appearance (e.g. color, size, etc.)
  4. 🙅 Change the data source

Users move quickly through steps 1-3 only to have their momentum slow or stop altogether at step 4. One frustrated (technical) user even suggested they’d simply give up at this point.

Possible solutions [ease][impact]

Initial side conversations have surfaced a number of potential improvements.

SMALL

Quick wins

MEDIUM

More effort; more potential impact
  • [1][2] Improve and/or make the data preview feature better
  • [2][3] Exposing/listing available indices in the UI
  • [2][3] Exposing/listing available fields in the UI
  • [3][3] New data source: Saved search [Canvas] Use saved searches (Discover) as an element data source #56539
  • [3][3] New data source: Saved queries (Saved queries are a Saved Object) Implement saved queries and filters #39140
  • [3][3] New data source: Data Frames
  • [3][3] New data source: SIEM?
  • [?][?] New data source: Other saved objects?
  • [3][3] Do we keep using demo data? Can we make it better? (it has benefits)
  • [3][3] Data wizard that connects a workpad to a datasource, and helps users get started with elements

LARGE

Most effort; most potential impact
@ryankeairns ryankeairns added Meta Team:Presentation Presentation Team for Dashboard, Input Controls, and Canvas labels Jul 11, 2019
@elasticmachine
Copy link
Contributor

Pinging @elastic/kibana-canvas

@ryankeairns
Copy link
Contributor Author

ryankeairns commented Jul 23, 2019

I've been working on a couple of prototypes that address several of the above items in addition to some improvements to the expression editor (resizing, etc.). Working with data and features is critical to improving the Canvas experience for both new and experienced users. The prototypes below introduce some layout changes that improve the UX for both of these critical features.

Option A: Simplify data source UX in the sidebar

🖼 https://marvelapp.com/43e9fci/screen/59547020

While this simplifies the UX to a degree, and makes the Data capabilities more visible (no more tabs), this approach still presents limitations with regards to available real estate when compared to Option B.

DS1 - accordion --SQL autocomplete

Option B: Move data source UX to a resizable bottom panel alongside the Expression editor

🖼 https://marvelapp.com/c7fe5ie/screen/59630879
Note: the hotspot links aren't working correctly (Marvel issue); use your arrow keys to navigate
Updated screenshot to include page manager button in top menu

canvas - workpad --resizePanel -dataSQL autocomplete

We've discussed a resizable panel for the Expression editor (due to the size of expressions we've been seeing and hearing that users copy/paste from their editor) and it seems highly likely that users will/are facing the same hurdles when writing SQL queries (which seems to be the most used data source by a healthy margin).

Keeping the Expression and Data features in close proximity to one another has several benefits: 1) both can leverage the resizable panel (i.e. extra real estate) 2) these experiences are similar and should be treated as such 3) this brings visibility to both features ("always on") and 4) makes a stronger visual relationship between element and code/query.

Option C: A more traditional data wizard

I've intentionally not mocked up this idea for a couple of reasons.

First, Option B provides a simpler UX and also introduces the concept of an 'Elasticsearch basic' data source which could simplify things for new users and handle many basic data needs (i.e. I just need a field or two from an index).

Second, I'm reluctant to design away the instant gratification of adding an element to a workpad. By attaching a step to select data (potentially having to write SQL) before/after the 'add element' flow, we'd would likely be degrading that 'A-ha' moment. Introducing such a hurdle early on in the experience seems unlikely to bode well for adoption.

@elastic/kibana-canvas

@clintandrewhall
Copy link
Contributor

I love Option B -- do these datasources all have icons? Might be worth playing with icon-based buttons instead of a dropdown... not sure, though. It was always nice on the data source tab to see the list of available data sources... perhaps it would be enough to default the expression panel to a set of large icons + text...?

Screen Shot 2019-07-23 at 12 26 27 PM
Screen Shot 2019-07-23 at 12 26 34 PM

@crob611
Copy link
Contributor

crob611 commented Jul 23, 2019

In Option B, where do the Page Navigation controls end up?

@ryankeairns
Copy link
Contributor Author

Good catch @crob611 !
I removed one too many icons from the top bar when exploring this latest work. It would appear on the left akin to Google Slides and other presentation software:

Screenshot 2019-07-24 07 44 06

It's an area that could be looked into further, but this is my current recommendation.

@ryankeairns
Copy link
Contributor Author

@clintandrewhall good call on using the icons/logos. Not only a nice visual touch, but it draws your eye to an important feature of the application and, I presume, encourages users to interact. Additionally, since you can only ever select one data source at a time, the checkmarks are unnecessary.

Screenshot 2019-07-24 09 33 20

@shaunmcgough
Copy link

@ryankeairns I also ++ on option B here. Really like where it's headed.

@nickpeihl nickpeihl added loe:x-large Extra Large Level of Effort impact:low Addressing this issue will have a low level of impact on the quality/strength of our product. labels Mar 23, 2023
@ThomThomson
Copy link
Contributor

Closing this for the time being as we are currently not prioritizing Canvas data source UX.

@ThomThomson ThomThomson closed this as not planned Won't fix, can't repro, duplicate, stale Apr 6, 2023
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
Feature:Canvas impact:low Addressing this issue will have a low level of impact on the quality/strength of our product. loe:x-large Extra Large Level of Effort Meta Team:Presentation Presentation Team for Dashboard, Input Controls, and Canvas
Projects
None yet
Development

No branches or pull requests

8 participants