Sunday, March 23, 2014

Changing field names should be easier, and other Data window improvements.

It's a common scenario: you connect to a new data source and when Tableau shows you the data in the data window you're presented with lists of Dimensions and Measures with technical names, not the nice human-oriented names real people would find useful and engaging. For example, you see something like "customername" when "Customer Name" would make more sense to the person using Tableau.

There are a number of reasons for this, among the most common being we're frequently accessing data that was never intended for analysis by non-technical people, and that even when we are the database folks are reluctant to use human-oriented field names. In the customer name example above I've run into the situation time and again where the DB admins are reluctant to, and in some case flat refuse to put spaces in the names. From their perspective this makes no sense; if nothing else, it would mean enclosing the field name with quotes every time a SQL query is written. In their minds, this adds up to an enormous amount of extra typing because SQL querying it the only way one gets at the data, isn't it?

So time and again we need to supply real-human names for the fields so that they're more useful in Tableau. I know there are some skeptics out there who scoff at the necessity, but there are couple of compelling reasons. It's easier for people to read the names when they're spelled using normal conventions – that's why the conventions are there, with hundreds of years experience behind them. It also makes a difference in Tableau vizzes, making it easier for Tableau to display the field name in frequently limited header space (this would be dramatically enhanced if it was possible to use markup in display names, but that another friction point, for another post).

What's the big deal?

If you don't like the field names, you can just go ahead and change them, can't you?
Yes, you can. But it's a tiresome, boring task that takes much longer than it should, and it's boringness leads to mistakes and unnecessary rework.

Here are a couple of examples of the same data source.

Technical Names

While not as obscure as some of the data sources encountered in the wild, this data source's field names are missing spaces.

Human Names

In this example, the field names have been adjusted to contain spaces between their individual names. It might not look like much of a difference, but imagine what it would be like if all the field names were the really obscure technical names assigned with strict adherence to IT database design standards.

Changing names—how it's too much bother.

Invoking the field renaming.

This diagram shows the process required to get to the opportunity to rename the field.

There are four separate actions needed:

  1. Find the cursor. (it may not be where you expect it to be)
  2. Sweep the cursor to the field in the data window.
    These first two steps might not seem like much, but locating the mouse onscreen and then moving it to the field isn't a trivial action. The further away the mouse is, the more effort is required.
  3. Activate the field's context menu.
    There are a couple of ways to do this:
    • clicking on the down-glyph to the field name's right selects the field and activates the context menu in one action; or
    • clicking on the field, then right-clicking the field name takes two actions.
  4. Navigate to the menu's "Rename..." option.
    This example shows the option below the field name, but it's above the name when the field name is lower in the list.
  5. Select the "Rename..." option.
    Two ways: click it, or use the <Enter> key.

This is a lot of mouse-sweeping and selecting just to get to the point where we'll be offered the change to change the field's name.

The "Rename Field" editor.

Really. All the work done to get to this simple little one-field editor. Hardly seems worth the effort. (it's not)

And it's worse than it seems. Tableau always presents this editor smack in the middle of the screen, which means that the bigger the screen the farther away from the Data window it is, assuming that Tableau is normally positioned onscreen.

"Customer Segment" renamed.

Now the job's done, all nice and tidy, and we can relax.

But maybe it's not that simple.

What if we'd set out to rename all of the field names that need spaces added? If so, it would be really helpful to do them one at a time, top to bottom, to make sure that we got them all. A nice, organized approach.

It sure would be helpful if Tableau helped out in this undertaking. Little things could really help, like keeping "Customer Segment" selected in the Data window, showing us our last selection and making it easier to make the next.

But Tableau doesn't help us. In fact, for some odd reason Tableau unselects "Customer Segment" upon the name change, which makes no sense at all, and violates basic human factors and usability principles. Even stranger, if a field is selected, its "Rename..." option is selected but the name is not changed, Tableau keeps the field selected in the Data window. This doesn't make sense from a human standpoint and is an active impediment, and the different behavior upon rename/no rename is an active cognitive disruptor that generates confusion. The user gets the impression that Tableau is unpredictable and therefore untrustworthy and difficult to use.

Serial field renaming—an exercise in frustration.

Consider the situation where one wants to rename a series of field names. This happens quite a lot out in the wild.

One must go through this series of mechanical steps over and over:

  • Find the mouse.
  • Sweep the mouse to the field in the data window. (which field?)
  • Select the field.
  • Activate the field's context menu. (one or two actions)
  • Navigate to the menu's "Rename..." option.
  • Select the "Rename..." option.
  • Edit the field's name in the editor by: changing the name's text a submitting it via <Enter>; or selecting "Ok".
  • Find the mouse.
  • Move the mouse to the field in the data window.
    Which field?
    Surprise! Tableau unselected the last field you renamed so you have no visual clue as to which one it was, so you have to spend the cognitive capital to recognize and/or remember which one it is. This, coupled with the rote mechanistic series of operations is a horrible hodgepodge that creates real, and very substantial friction for the user.
  • etc. etc. etc.
  • Bored yet? Frustrated? Now imagine going around and around renaming a couple dozen or more field names. It's bad.

A Better Data Window

This data window improves upon the existing one by presenting both the user-facing human names and the internal/technical data source names.

The data names are on the right side, in the shaded zone, which conveys the sense that they're "behind the curtain" and not available for modification.

The human names are on the left side, in the lighter zone, and are editable. The rectangle around "Customer Segment" indicates that it is in an editable state, and that the user can rename it by simply changing its name in place. This is nicely simple and direct, a much better approach than the current renaming process.

It gets even better. Once the direct-configuration idea takes root, it's easy to imagine more of the field's characteristics being configurable in place. Obvious candidates are data type, formatting–notably for dates and measures, and measures' default aggregation. I'm seeing the field glyphs being used to trigger the in-place configurations.

Could this concept work? Yes, it could. There's no technical impediment, only the will to make improvements?

Is this the best design? Not very likely. This is a concept sketch, laying out one example of something that would work, and is a big improvement over the status quo.


An Even Better Data Window

Notice anything different about this Data window?

It might not jump out, but this Data window is a true independent Window, not a panel welded to the left side of the main Tableau application Window.

Freeing the Data window from the main Tableau Window's embrace has many real and substantial benefits. Most obviously, the Data window could stay open constantly, rather than needing to be popped up and down, which is a real pain, particularly given that the up/down toggle moves around sideways (itself a bit of vexation), and that it shares Tableau's left side with the Dashboard window and all of the formatting windows (and does anyone really know how many of them there are?).

I posted an initial bit on the desirability of scrapping Tableau's existing windowing architecture; it's a stub that I intend to keep working on, and the Data window is one of the top reasons I started down this path.

10 comments:

  1. Hi Chris,

    Not sure if you know but you can also use the keyboard to rename a field. Just select the field in the data window and press F2. This opens the rename dialog where you can type in the new name and hit enter. I personally find this much faster than the right-click approach you document.

    FYI.

    Cheers,
    Alan

    ReplyDelete
  2. Thanks, Alan.

    I didn't know about the F2 shortcut. Wish I had it would have saved me a fair bit of frustration over the years.

    Oddly enough, it's not listed in Tableau's online help. But looking for it prompted me to scrape the online info and build a couple of Tableau views of the shortcuts and their descriptions, making it easier to organize and see them, and to find the one you're looking for. I published them to Tableau Public and in my next post.

    Chris

    ReplyDelete
  3. Glad it was helpful. Sorry we can't refund you all those right-clicks. :-)

    ReplyDelete
    Replies
    1. I've been wondering: how did you know about F2 renaming? I'm pretty sure I've not seen it documented anywhere, and it's one of those things that's incredibly useful to know.

      And it brings up the question: what other shortcuts are there that would be really handy to know about that aren't generally known or surfaced?

      I have to point out that, as useful as it is, it doesn't much lower the overall burden of effort in renaming a sequence of field names. F2 replaces steps 3 and 4 above, but the effort is dominated by the need to continually re-sweep the cursor back to the data window and select the next field to rename. Which is substantial, given that the Rename editor is presented in the middle of the screen, and the cursor is left at the editor's location when the editor is closed.

      Delete
    2. I think this helps because it reduces the amount of mouse sweeping. You only need to move from one field to the next - you don't need to take the mouse to the dialog box as it becomes the focus and you can accept the new name by hitting enter. But I agree with you - renaming a large number of fields can still be a painful exercise. I help myself get through it by reminding myself it's a one-time activity if you save the TDS or publish to data server. :-)

      How did I know about F2? I don't remember when/where I first found this but someone probably told me about it (I work at Tableau so I guess I have insider advantage). But I point out that it is an OS-consistent shortcut - if you highlight a file in Explorer and hit F2 it takes you into rename mode. In Excel if you want to edit a cell you can hit F2.

      Delete
  4. This is a great blog; happy to have stumbled upon it. I know Tableau needs fixing when I compare it to really poorly designed software like SPSS and find it's not even up to that (like with bins). For renaming, SPSS allows you to edit field names in a spreadsheet-like interface. Just pop into the cell, type, and arrow down for the next one. It's much faster, and it would be a big improvement in Tableau.

    But thanks for the F2 tip, +Alan Eldridge.

    ReplyDelete
  5. Alan, thanks for the tip on F2. Can you ask your buddies to activate the OS-consistent context menu key (which works like a right-click)? This would help a lot with keyboard navigation, although there would still be plenty more to do.

    Chris, one thing that might interest you is that there is a way to get halfway to a single screen for editing all field names, by editing aliases of Measure Names. Now, if they would only let us do that with dimensions.

    I would also love to have a way to edit data properties for multiple fields at once. (And to edit multiple data properties at the same time.)

    ReplyDelete
    Replies
    1. Hi Mike,

      Thanks, that's a good tip on the editing the Measure Names aliases. I'm always interested in the thinking that leads to these types of insights, so if you get the chance and the inclination I'd appreciate anything you can offer on how you came to think of this or know about it.

      You might be interested to know that I'm working on an improved operational model and UI design for managing all of the various bits, pieces, and components involved. At this point I'm not very hopeful that Tableau will adopt any significant improvements, but maybe the next innovative product will.

      Delete
  6. All enterprise BI tools have the concept of alias names. Users often want fields renamed. The fact that tableau ties calculated fields to the user friendly name is very disappointing. I understand and appreciate the need for visualization tools with a fast turnaround, but watching tableau stumble into the same metadata issues that traditional tools solved 20 years ago......is getting painful.

    ReplyDelete
  7. F2 is a shortcut for renaming that is common within operating systems (Windows and Linux, not sure about Macs).

    I resonate with TC's comment about watching Tableau stumble into problems that have already been solved. History always repeats itself.

    ReplyDelete