Sunday, March 31, 2013

Tableau Server 8 Improvement - Site Switching

Sites are good.

Tableau Server's sites are very handy for firewalling content. Judiciously used they make it much easier to isolate content so that only those users explicitly connected to the content's site can possible access it.

Tableau Server 7's site switching is confusing.

When logging in to a Tableau Server installation where he is registered with multiple sites the user chooses the active site from an initial list. Once logged in, switching from the current site to another requires the user to take an indirect route. He can log off and then re-log in, at which point the site selection list will be re-displayed, or he can select "Sites" from the maintenance section—but only if he's a Server Admin (and most users aren't), pick the site to switch to, and then select one of the new site's options.

This is tremendously obscure and unintuitive. Even worse, the normal selection mode convention is that when a selection is made from a list it actives the selection in the most obvious context, in Tableau's case selecting a site from the list -should- switch the context to that site, but it doesn't.

Tableau Server 8's improved site switching

As shown in the screen shots below, switching sites in Tableau 8 is far more obvious and intuitive than in 7. A simple click on the down-glyph next to the current site in the upper right of the page generates a list of the other sites. Selecting one of them immediately switches to it, making it the current site.

This new method is an immense improvement in two main ways:

  1. it elevates site-switching to the surface where it's a direct action, not a side effect
  2. it presents the list of sites in place, bringing it to the surface so the user doesn't have to go down another path to find it. 

It's not perfect

The placement of the Site: control in the upper right corner is problematic for several reasons. Most importantly it removes the information about the current site away from the information for the other current server elements. At this distance looking for the current site's name requires a substantial visual find-and-read operation. Moving it into proximity to the related context information would reduce this cognitive friction.

Speaking of which, as much as the UI has improved, there are still some obvious improvements to be made.

Without going into detail here, the current UI doesn't match Tableau Server's structural organization, and it should. Having a presentation model that's different from the structural/organization model is a cognitive mismatch that requires the user to adjust their mental model when aligning them. This makes it harder for the user to accomplish their tasks.

More on this is on its way.

Saturday, March 30, 2013

Tableau Server 8 First Blush - A Much Improved UI - Images

Thank you, Tableau.

I install, configure, and administer Tableau Server in different environments for clients with very different needs. Tableau Server hasn't made this easy, and in many ways has been a struggle.

Tableau's been paying attention to usability issues, and Tableau Server 8's UI is much cleaner and better organized.

I'll save the critical analysis for the future - I'm particularly interested in how Tableau has handled the complexity of the intersecting permissions involved with web publishing.

For now, I'm just going to soak up the nice newness, and present here the basic images of the new Tableau Server UI, from an administrator's perspective.

I've captured them in the minimal size I could get Windows down to, so they're going to be re-scaled to different proportions to fit in the blog – clicking on the individual images should provide you with a full sized view.

Wednesday, March 27, 2013

Tableau Recommends BDUF

BDUF - Big Design Up Front

  • the bane of everyone who wants to get things done
  • the curse of traditional BI, the reason why budgets blew up, time expired and value (or much of anything) wasn't delivered
  • the beast Tableau slew to wrest data analysis from the clutches of the BI technocrat cathedral builders and return it to real human beings with information needs

Why, then, is Tableau encouraging BDUF?

Preposterous, you say? BDUF is antithetical to Tableau's raison d'etre. Contrary to its nature. Expelled from its realm. Rejected in favor of a better paradigm.

Well, yes.

For the most part. But not entirely.

Take a look at this snippet from the online help for Tableau Server regarding project-level permissions:

Before you begin the process of creating projects and project-based permissions, Tableau recommends that you outline or document all of the projects and permission levels that you want users to have in each project prior to implementation in Tableau Server. This exercise will help you organize the various permissions you want to implement and may help you identify any user or permission gaps in your solution.

reference here

This is the very essence of BDUF - trying to determine everything that could possibly be needed before anything's actually put in place. Lots and lots of lost time and effort spent anticipating every possible need, all the potential combinations and permutations, identifying and working through all the subtleties, complexities, and consequences.

I love Tableau because as a data analytical tool it is the polar opposite of BDUF. With Tableau you don't need to know up front what visualization is going to give you the insight you need. You don't have to—you can walk the good path to it by simply following the data, using Tableau to illuminate your way.

So why BDUF here?

Why here indeed? What's different about Tableau Server permissions that impels Tableau to recommend conducting BDUF before you implement them?

Here's my starter list of reasons (it's only a starter list because I'm going to have to stop some time):

  • permissions, and the objects they attach to, form complex relationships
  • Tableau, as an analytical tool, has no ability to model or represent complex relationships
  • Tableau Server is not well designed for the presentation of the information about its contents
  • there's no straightforward way for Tableau Server to present to you the body of permissions, how they're attached to Sites, Projects, Workbooks, and other content
  • there's not even a simple, clear way to see the definitive permissions in place for a given User or Group on a given object - when a permission is identified as 'Inherited' it might as well be labelled "flip a coin"
  • without a presentation model there's no way to gain an understanding of what permissions are in effect for any object, much less for a group of objects
  • without a presentation model there's no way to provide the ability to manage the permissions – altering them with simple, straightforward deterministic mechanisms, and by this I mean deterministic from a human standpoint, not from a technological or implementation perspective
  • without the ability to see and understand the current permissions field it's impossible to know what it is—at best you can build up a mental model by walking around in it
  • without the ability to understand and manipulate the permissions field in a manner even approaching utility it feels only prudent to advise people to map everything out beforehand and then code (oops - configure strictly to spec – which is exactly what Tableau freed us from in the first place.

Is this a calamity?

No. It's a huge pain, and an embarrassment when, as the Tableau Server administrator, I can't definitively lay out the permissions in effect for an object in the tool, but its not a catastrophe.

Will it get better?

I hope so, but the irony of it is that I've been so busy managing our Tableau Server environments and trying to come up with some way to train someone without my deep interest in puzzling out the peculiarities, that's there's been far, far too little time for getting familiar and comfortable with Tv8.

What will it take to get better?

Tableau must, must, must break out of its data flatland.

Tableau was designed to handle flat data. Data with a uniform structure, everything in a linear path at a single level of granularity. And it's a fantastic tool for the job, the best there's ever been (this blog's grumping's not withstanding).

But the world's full of data that's not flat, that has all manner of topologies. Simple master-detail hierarchies. Multi-level hierarchies. Multi-level, multi-path hierarchies. Networks without hierarchies.

Quick question: what's the most common complex data that a Tableau user encounters?
Answer: Tableau

A Tableau workbook is a classic example of a complex data structure crying out for analysis. Here's a partial list of the relationships in a Tableau Workbook (there are enough elements to make your head swim–mine's been axle-wrapped plenty puzzling this stuff out building TWIS and the other tools):

  • A Workbook can have:
    • zero or more data sources
    • zero or more worksheets
    • zero or more dashboards
    • zero or more parameters (although parameters are structurally really data sources under the hood
  • A Worksheet can have:
    • zero or more data sources
    • zero or more row fields (and there can be duplicates)
    • zero or more column fields (and there can be duplicates)
    • zero or more fields in other controls
    • ...
  • A Dashboard can have:
    • zero or one title
    • zero or more worksheets
    • zero or containers (and knowing what and where these are is more useful than most people realize)
    • zero or more text, image, web page, and blank objects
    • zero or more actions
    • ...
  • A Data Source can:
    • access one or more tables (with 'table' a polymorphic term)
    • have one or more source data fields (at least I think one is the minimum, have to check that)
    • have one or more calculated fields – which in turn can reference zero or more data and calculated fields
    • be used in zero or more worksheets
    • not be used in dashboards directly
    • ...
  • And so on
  • and so forth
  • and such like.

I hope it's clear – Workbooks are pretty complex.

Permissions are roughly as complex in type, although not in number of elements

So... it's going to take the ability to model, present, and allow the user to interrogate complex data before Tableau has a real shot at helping people understand and manage their Tableau environments.

Can Tableau do it?

The evidence is not overwhelmingly in favor of success. Not only is it a really hard problem Tableau may have lost its mojo.

Conceiving, creating, and implementing these abilities is far, far harder than Tableau's initial inspiration–rendering in a visual interface the semantics of organizing and presenting quantitative data in a 2D visual space, with organizing elements providing nested sorting vertically and horizontally. The basic structural semantics were refined decades ago and proven in multiple successful products including RAMIS, FOCUS and NOMAD; of these FOCUS was the most well known. Oddly enough, these products were all capable of working with complex multidimensional data, that being the norm before relational databases decomposed everything.

So far, Tableau has provided a mishmash of different ways to present and provide interactivity to complex data. Formatting, particularly of tables, is the leading candidate for biggest flop–although there are definite relationships between the elements in a visualizations it's fiendishly difficult to keep straight exactly how you go about applying -this- formatting to -that- element. Tableau Server 7 has a plethora of different ways to present Sites, Users, Site Users, Projects, Views, Permissions, etc..

Want to see the relationships between your dashboards, the worksheets they contain, and the data sources they access? Good luck - Tableau doesn't provide this, even though the ability to see it has been available for several years, i.e.:

Gross Structure of the Variety Sample Workbook


It's a hard problem.

Providing a visual analytical interface to Variety's structure is a daunting task. One that abstracts it in a way that presents its type structure independently from its contents is difficult enough so that while to date there are plenty of good XML editors on the market there aren't any good XML analyzers.

Interestingly, at least to me, when I started out building TWIS, which created the diagram above, I was pretty much convinced that understanding and parsing Tableau Workbooks would be the hard part. And it was. But it was a challenging in two main dimensions that were both addressable by simply applying skills and approaches I, and other developers, already had. The biggest challenge, the one the eventually led me to the mini-tools approach of building lots of small Ruby apps (hello again, unix) was how to integrate all of the data from the various paths as I followed them down their individual rabbit holes.

I remain hopeful.

Tableau already cracked one nut–bringing a visual orientation to data analysis that provided a direct connection between the semantics of data analysis and the user interface. Can they do it with the next data frontier? Time will tell.

Tuesday, March 19, 2013

Tableau 8 is Digital Photography in a Film BI World.

I'm sitting here in D.C. at the Tableau 8 road show. Dustin Smith is presenting Tableau 8's abilities in advanced analysis. The big new features are all on display, and they're well worth spending the time to get very, very familiar with.

Dustin's also showing lots of not so big advances that make a real difference in the ease and velocity of analysis. This is terrific stuff.

Digital Photography?

Explaining why Tableau is such a great thing can be surprisingly difficult at times. One can wax rhapsodic about its elegance and clarity, its ability to achieve insights otherwise unattainable, its embodiment of high quality of analytical information design principles, its superiority to Excel, BO, Cognos, QlikView, [name your BI tool here]. And it can mean nothing, or even engender a skeptical response.

But... this one tends to resonate.

Tableau is like digital photography, and other tools are like using film.

Creating a data image in Tableau is nearly instant, it takes only a few seconds to get something really, really useful and valuable. And the cost per viz is almost zero, just like taking another digital picture is virtually cost free. Creating a Business Object report, or an Excel chart that needs a pivot table to be build first, is a costly, time-consuming activity that requires planning, setup, and development. time, energy, and effort.

This is Tableau's great virtue - the reduction in the barriers, the friction, between people and their data, just like digital photography removed the barriers between people and the pictures they take.

And, like the best digital cameras, Tableau can take great snapshots, but isn't limited to casual point-and-shoot. You can compose and create museum quality images with great fidelity and polish, with only a little more effort.

And now I'm off to take Tableau out into the data world and make great data images.