Meet the Penguins!

makingof

 

OK here we go. Iron Viz competition time. I don’t viz that much so pleased to dust off Tableau Desktop and have a go. This competition is all about the natural world. A very interesting theme for me being a massive nature fan.

1. The Idea

I love nature. Thinking of a theme I reached back into childhood memories and for some reason I thought of long afternoons with my family at the zoo. Aside from the usual animals we always used to make a beeline for the penguins, something that still happens when I take my own family to the zoo. Everyone loves penguins!

However, I don’t think that many people know just how many different flavours of penguin there are. They live in varied locations, come in a host of different sizes and looks and not all of them live in cold countries. They do all stink though.

So I thought I’d use Penguins of the World as my subject for this viz. And here it is.

Go take a look at the viz!

 

2. Data

I got the data from a single source- https://seaworld.org/en/animal-info/animal-infobooks/penguin/

References to sited data is always good to see

Although I didn’t conduct any lengthy data validation exercise I was given some degree of confidence that the website has a detailed references section, siting the data sources. That’s always good to see and something that is mandatory in scientific papers and such like.

Now there’s tons of penguin data available out there. But I really didn’t have the time to spend days looking for that perfect data source. I also didn’t want to spend days transforming the data before I started vizzing so I settled on this one pretty quickly.  Then it was a copy and paste into Excel and I was off.

Always be on the lookout for good images to incorporate into your viz

One thing I did like was the fact that this page had some cool drawings of each penguin species. That instantly got me thinking of using them as Tableau shapes. It’s always a good idea to be on the lookout for images and drawings that can you can incorporate into your visualisations.

 

3. Viz Design

Now I’m probably not the only person in this competition to be heavily influenced by the master of these kind of visualisations, Sir Jonni of Walker. (@jonni_walker). And with that I thought I’d steal like an artist and try to emulate him.

Key design choices were to use a black background, with plenty of large images and the use of BANs (Big Assed Numbers) as callouts. Things that Jonni does all the time and that really create a visual impact. I also wanted to utilise the penguin images as a “penguin picker” to create some interactivity.

I also wanted a map to be a main feature of the viz as maps are not only informative, but visually striking, highly customisable and also act as a canvas on which to overlay images (in oceans etc.). I had a problem at first with the fact that Antarctica was one of the main locations, and that meant the bottom of the map had a straight edge, which looked ugly. This meant the map would have to meet the bottom of the viz to draw attention away from the abrupt edge.

The IUCN scale

I was pretty pleased with the highlighted IUCN status of each species. The icons looked nice and almost acted as a traffic light theme. Jonni thought they should be greyscale but I overruled him. Pfft – what does he know anyway?

In terms of Tableau content, only a couple of charts to show population, location, height and weight; but that was fine. It didn’t really need anything else.

I also wanted to include a section on famous penguins but it ended up overloading the viz and spoiling the theme. Although it did make me smile. Bonus question – can you name all of these famous penguins?

How many of these famous penguins can you name?

I also considered the use of an embedded YouTube video but decided against it.

I had fun choosing the title font, something that I think can make a huge difference to the viewer if chosen well. Regular fonts were somehow boring, and fonts with penguin characters looked too cluttered. I finally managed to settle on an Austin Powers style font, and then had the idea of alternating the colours to give that penguiny feel. I like it!

In the end I think the final result was ok. However this wasn’t one that I enjoyed. See below.

 

4. Challenges

This was my first viz in a while. I’ve spent the last 3 years knee-deep in Tableau Server and have a crazy busy job building a Tableau Centre of Excellence, supporting thousands of demanding users so I’m the first one to admit I don’t have the Tableau Desktop skills of people like Adam Crahen, Neil Richards, Pooja Gandhi et al.

The standard of skill out there in the community is crazy good. And that really was the main challenge. I found this viz a fairly stressful experience, it made me feel like a newbie all over again, simply because I’d be putting this out there against some stunning competition. I even considered not entering for a while. But hey, that’s not what the Tableau community is all about so I thought I’d have a go at it.

As mentioned earlier, I was deliberately trying to emulate Jonni’s style. Now that proved to be pretty difficult. I managed to create something reasonable, and fairly quickly, and began thinking to myself that hey this is a piece of cake, Jonni who?? But then it got harder. My ideas began to dry up and I found myself staring at an okay-ish viz but being unable to take that next step to make it better. Felt like vizzers block.

And that’s when I realised that the people who create these REALLY good vizzes have a lot of inherent natural skills and imagination that folks like me lack. So I gave Jonni a call and asked his advice. He came back with a number of suggestions, none of them earth-shattering, but much more subtle and delicate. Making the map larger, bringing highlight colours out from the penguin plumage were a couple of suggestions that made a huge difference to the impact of the viz. My point here is that the real geniuses of visual design have these thoughts occur naturally and without significant effort, folks like me have to learn them, or at least work a little harder than some others.

But hey, IronViz (and any vizzing) is all about learning. So I’m good with that.

Another challenge was that the Tableau part of this was pretty easy. That’s obviously great and what we want from our favourite application, but in terms of this viz I spent more time in image manipulation tools than in Tableau. And that really did detract from enjoyment. Come on Tableau! Make it harder for us to complete our vizzes!

 

5. Analysis & Story

So what can we take from this story? Here are some of the key observations that Tableau has allowed me to glean from the dataset.

  • All penguins live in the southern hemisphere, and some in hot countries
  • There are some seriously big populations, although some are endangered
  • They range from massive to teeny tiny
  • Main predators are Leopard Seals & Sea Lions
  • There are not one, but two penguin days in the calendar

So that’s it. I hope you enjoy the visualisation. If you do then please consider voting for me in the IronViz competition. And thanks to Jonni Walker for providing advice for this viz. Top man.

Good luck to all the other entries this year. Especially blinders like this from Ken Flerlage. – The Killing Fields – Viz / Blog.

Hmm. After all that writing I could do with a chocolate biscuit. Now which one……

Regards, Paul

Advertisements

Tableau Server – all about the… Backgrounder

Hello everyone.

You may know me as a Tableau Centre of Excellence manager. That can involve a lot of paperclip pushing skills, with the real work being done by my excellent team (thx @jakesviz & The Information Lab). But I do try and get down and dirty with my lovely Tableau Server environment to keep my skills fresh. Obviously I don’t mess with it – @jakesviz gets pretty protective about his Server.

This series of posts is my attempt to shed some light on the internals of Server. Note there are many more experts in this field than me (Craig Bloodworth, Mark Jackson, Jen Vaughan, Tamas Foldi, Mike Roberts, Angie Greenhaw – to name but a few) so please do comment if anything is incorrect here. Maybe you guys could help me evolve this post?

What is the backgrounder?

The backgrounder is a process that runs as part of the Tableau Server application. As the name suggests, it handles background tasks such as refreshing extracts, running subscriptions and also processes tasks initiated from tabcmd.

Here are the backgrounder processes. The .exe file and the .war file. The WAR file is a Web Application Archive, and contains all the necessary components and resources needed for a Web Application such as Backgrounder.

On a clustered environment you’ll find these files in D:\Program Files\Tableau\Tableau Server\worker.1\bin (may vary slightly with your installation).

28-01-2016 14-07-52

Other files related to the backgrounder.

Template (.templ) files – These files TBD

28-01-2016 14-13-09

There are also a few .rb files in D:\Program Files\Tableau\Tableau Server\worker.1\tabmigrate\db\migrate.

And we also have a .properties file which contains all the config entries relevant to the backgrounder. It also has almost all of the other stuff that you’d find in the main workgroup.yml file which is odd. I’d  have expected it to be just the backgrounder config.

backprops

Here is the location of the backgrounder log files

backlogs

Here are 2 instances of backgrounder.exe running on my server (from Task Manager).

28-01-2016 14-01-08

 

Can I mess with it?

Backgrounder can be configured. There are several settings present in both workgroup.yml and backgrounder.properties. Workgroup.yml is the master config file, and it populates the backgrounder.properties (and other .properties files) when a ‘tabadmin configure’ is run.

I don’t know what all of these do (yet) and the only one I’ve ever edited is ‘backgrounder.extra_timeout_in_seconds‘ which sets the max time in seconds that a backgrounder session can run for. Tableau kills off the session if this threshold is reached. Useful for forcing users to optimise their extract times!

I also pay attention to the ‘backgrounder.vmopts‘ parameter, as this defines the size of the java heap space for this component. All components have a vmopts setting and I’ve had to increase them on occasion due to out of memory problems.

You may also want to change the ‘backgrounder.log.level‘ if you need more debug info, although Tableau logs are chatty enough for me.

If there’s a golden parameter in this lot that you get value from then let me know in the comments.

backgrounder.deploy.dir: D:/Program Files/Tableau/Tableau Server/data/tabsvc/backgrounder
backgrounder.external_cache.concurrency_limit: 10
backgrounder.external_cache.enabled: true
backgrounder.external_cache.num_connections: 1
backgrounder.external_native_query_cache_disable: true
backgrounder.extra_timeout_in_seconds: 1800
backgrounder.failure_threshold_for_run_prevention: -1
backgrounder.jdbc.wg.connections: 8
backgrounder.jdbc.wg.idle_connections: 4
backgrounder.log.dir: D:/Program Files/Tableau/Tableau Server/data/tabsvc/logs/backgrounder
backgrounder.log.level: info
backgrounder.native_api.log.level: info
backgrounder.out_of_date_schedule_minutes: 240
backgrounder.ping_dataengine.millis_to_wait: 5000
backgrounder.ping_dataengine.num_retries: 24
backgrounder.ping_services.num_retries: 10000000
backgrounder.ping_services.time_to_wait: 5000
backgrounder.purge_directories.directories: ""
backgrounder.querylimit: 7200
backgrounder.restart_interval_in_minutes: 480
backgrounder.restrict_serial_collections_to_site_level: true
backgrounder.search_index_verification.enabled: true
backgrounder.sheet_image_api.max_age: 240
backgrounder.sleep_interval: 10
backgrounder.sort_jobs_by_run_time_history_observable_hours: -1
backgrounder.sort_jobs_by_type_schedule_boundary_heuristics_milliSeconds: -1
backgrounder.timeout_tasks: refresh_extracts, increment_extracts, subscription_notify, single_subscription_notify
backgrounder.tomcat.threads: 4
backgrounder.urlprefix: backgrounder
backgrounder.vmopts: -XX:+UseConcMarkSweepGC -Xmx512m

Note that Tableau Support don’t like you to edit config files manually, they recommend that you use the tabadmin set commands to change any parameters. They might have to change that recommendation when we see Tableau Server on Linux.

For more about .templ, Ruby & properties files check out this from Tamas Foldi.

 

What are the problems with the backgrounder?

Here are some of the things that can be problematic with the backgrounder.

  • Single Threaded – This means the backgrounder process can only run one thread at a time, a thread being a set of executable instructions that a process can perform. The upshot of this is that your backgrounder works through a queue of tasks one-by-one.
  • Latency – Due to the single threaded nature of backgrounder, you may see delays or ‘latency’. For example, if you have one backgrounder, and 2 tasks for it to perform at 2am, then task 2 will have to wait until task 1 has finished. If task 1 takes an hour then task 2 won’t start until 3am. This can be annoying for users that expect their data to be refreshed by a certain time.
  • Resource Intensive – The backgrounder can consume a significant amount of processing power (CPU) and input / output (I/O) on your server. This is dependent on the type of task it is performing. It’s not uncommon to see a backgrounder node consuming 100% CPU.
  • Other Stuff – The backgrounder process also does other stuff on Tableau Server that isn’t concerned with extract refreshes. For example – reaping extracts, checking disk space, synching Active Directory groups, rebuilding the search index etc. Bear that in mind when building your system. In reality these tasks don’t take up too much resource but they do take some and you should be aware.

 

Isolating the backgrounders

A common configuration in a clustered environment is to dedicate one of your worker nodes to the backgrounder processes. This means you can dial up the number of backgrounders and let them do their stuff without worrying about any impact on other processes. This is one of the most common performance recommendations from Tableau support.

You can also get a lot of info out of the Postgres DB relating to backgrounder usage and performance. Nelson Davis has posted a guide to getting started here.

 

Improvements I’d like to see

Ok so here are a bunch of improvements I’d like to see to the topic of backgrounders and extract management. I know some of this will drop in upcoming releases and some of these problems have been solved with custom solutions at some customer sites.

Alerting – Tableau Server doesn’t alert (email / IM / SMS) when a task fails. This means you’ll need to set up external monitoring to detect issues. I know Tableau are on this though so expect to see it in an upcoming version. Some people in the community have also coded their own solutions to this problem but it really should be native functionality.

Control per site – We segregate our dev / test / prod user environments using sites , all on the same server. We run 8 backgrounder processes on that server, which are shared across the tasks on all sites. As an administrator I’d really like to be able to bind backgrounder processes to specific sites. For example, 2 backgrounders on each of dev & test sites, then the other 4 dedicated to the production site. That would ensure production tasks always have enough resource to be able to execute on time.

Control per process – I’d like to be able to stop / pause / mess with individual backgrounder processes easily. It is possible – see this from Toby Erkson, but it would be good to have this as part of an administrator console or something.

Control per type / size / pattern of extracts – It would be good if I could dedicate specific backgrounder processes to particular extracts based on their characteristics. In particular I’d like to allocate one backgrounder to all the extracts that take less than 1 minute to complete. Or even use this to reward users that show diligence with their extract management by dynamically prioritizing incremental refreshes or extracts that have a low failure rate.

Better metrics – I’d like to see exactly how much CPU is taken up by a particular backgrounder process or task / schedule or per project. This would be useful for chargeback.

Dynamic reprioritisation – I love all my users. But in particular the ones that take good care of their extract refreshes. I’d like Tableau to be able to dynamically increase the priority of tasks that complete quickly, are incremental and that have a low failure rate. The message being, if you want your stuff to get the best slice of available resource then help us out with best practice.65

Disable run now – We’ve had some issues with the “run now” option that allows users to kick off an extract refresh on-demand using the UI. In particular we’ve seen some trigger-happy users bring our server down by hammering on the run now option multiple times. I’d like to disable that or maybe throttle it somehow.

Better guidelines from Tableau – The documentation from Tableau isn’t great in this area.

05-05-2016 13-09-11

I have an 8 core 128GB server and  run 8 backgrounders with no capacity issues. And I know of other organisations running way more than that. According to this doc I should be running between 2-4. That would be some serious under-utilization of the server. I’d like to see some clearer recommendations, maybe taking into account the variety of use cases that I’ve seen in other big enterprise deployments.

 

OK that’s all for now. This post could have been more detailed but I figure that I’ll get some valuable inputs from the community that will help me expand it. Actually in the time I was writing this, Mike Roberts was doing the same – check his post for some excellent info.

Cheers, Paul

 

The Svalbard Global Seed Vault

makingof

Hi all,

OK here we go. Iron Viz competition time. My first viz in a long time, so it’s good to get back using Desktop again. The first competition this year is the Food Viz contest!

1. The Idea

So this one’s all about food. Plenty of potential ideas here but I love to deviate from the norm and go a little bit off the wall, a little bit unusual.

I got thinking about food. But then I thought what would we do if there was NO food? If we had nothing to grow. If all the crops in the world failed overnight. What would we do? That would be a pretty bad situation for sure and someone must have a backup plan. I’m in IT as you might know so I do love a good backup plan.

And it turns out there is one. The Svarlbad Global Seed Vault. Buried 130m into the Norwegian permafrost, this building looks more like a Bond villain’s hideout than a critical storage facility. Once I saw this website my mind started racing with questions and that’s a good sign that you’ve got a decent subject for a viz.

 

Screen Shot 2016-04-19 at 08.36.51

The Svalbard Global Seed Vault

Go take a look at the viz!

 

2. Data

I got the data from 3 main sources.

The main seed stocks data

Plenty of detail in the data which gives some good potential for analysis. The main seed stats xls was pretty tricky to work with. There were a lot of nulls and gaps which I had to exclude from the dataset, and the file was pretty untidy. There were also close to a million rows in the file and that meant my pc struggled at times. All of this made manipulating the data tricker than I would have liked.

 

3. Viz Design

As with last year’s entry I thought I’d use Story Points again. This format has limitations but I think it works well for visualisations that answer multiple questions. In terms of formatting, I’ll be honest. I just didn’t have the time to mess about so I pretty much went with the same style that I used for my Evolution of the Speed Record viz last year.

Screen Shot 2016-04-18 at 22.35.49

Construction stats

I also thought I’d use a lot of images with this viz. The seed vault is an impressive construction and had a load of really good quality images available for use. I found it was useful to use a text box to provide additional commentary on each slide.

 

 

 

Screen Shot 2016-04-18 at 22.39.29

Seed vault funding

Most of the information about the seed vault made a big deal about how this was a big global project. This led me to question who was contributing and supporting the project and who was pretending to? I was pretty sure there would be a big difference in contributions, both in terms of stock and also finance.

 

 

Screen Shot 2016-04-18 at 22.40.21

Embedded Wikipedia page

A technique I learned last year was embedding a contextual Wikipedia page into the viz. This provides more detail for anyone wanting to know more about the data points.  A good tip is to append “?printable=yes” to the URL to display a more cut down page, as well as using the mobile URL (thanks to David Pires for that tip). Some of the links didn’t work as there wasn’t a direct Wiki page – no big deal.

 

So there you go. An interesting story for sure and one that was pretty enjoyable to put together.

 

4. Challenges

This was my first viz in a while. I’ve spent the last year knee-deep in Tableau Server and have a crazy busy job building a Tableau Centre of Excellence, supporting thousands of demanding users.

So my biggest challenge wasn’t data, or thinking of a subject, it was my own lack of ability with Tableau Desktop. I was shocked at how rusty I’d become and even some basic tasks took way longer than they should have. On the plus side it was great to be back on the vizzing horse again! I’m now inspired to get stuck into some of the online training and boost my skills.

Another challenge was actually deciding to have a go. The standards in the Tableau Community have gone through the roof in the last year, and the level of quality out there is absolutely amazing. So for the first time ever I was nervous about even getting my entry out there.

 

5. Analysis & Story

So what can we take from this story? Here are some of the key observations that Tableau has allowed me to glean from the dataset.

  • The Svalbard Global Seed Vault was a decent build. Didn’t cost too much and also only took 20 months. Pretty impressive going.
  • Some unusual crops stored in the seed vault. Rice at the top, and mostly concentrated around the Triticeae tribe of crop – wheat, maize etc. Surprisingly few fruit. I like blueberries so I’d be stuffed without them for my doomsday breakfast.
  • Probably not a surprise to see India top the seed donations chart but it was curious to see several African nations amongst the top donators.
  • I was surprised to see seed donation amounts tailing off big time in recent years. I wonder if that’s down to project apathy or maybe we’ve just got all the samples we need for now?

Wanna know even more? Go check out this Interactive 360 tool.

So that’s it. I hope you enjoy the visualisation. If you do then please consider voting for me in the IronViz competition.

Regards, Paul

The Evolution of the Speed Record

makingof

Hi all,

Oh dear – it’s that time of year again. Time for the Iron Viz competition. The first challenge this year is the Wikipedia challenge. Create a viz, any viz, so long as the data comes from Wikipedia.

1. The Idea

There are tons of data on Wikipedia. Trouble is, much of it is in a nightmare format and takes a lot of tidying up. I wasn’t cool with doing much of that this time so reasonably tidy data was a must. I also wanted something with depth, and an element of competition, danger and heroism. And I love technology so wanted that as well. All in all a tough ask.

But then I stumbled across the perfect topic – how speed records have evolved over time. Ticks all the boxes and could be a nice use of Story Points.

So that was it – “The Evolution of the Speed Record” was GO!

kings

The Evolution of the Speed Record!

 

2. Data

I got the data from 3 Wikipedia pages.

kand

An example of the land speed record data

The data has enough variety and richness to satisfy my requirements. It is also pretty consistent between pages so makes consolidation into Excel a lot easier. I did have to remove entries that referred to record attempts that were not ratified, and I also had to standardise on mph vs kph as well as distance miles vs kilometers. But with those caveats, I’d gotten me a pretty decent dataset.

It was also cool that most rows linked off to pages about the pilot and the craft used, each with some neat images for use in the viz. Plenty of room to supplement this data set should that be required. I also managed to find some clips of some of the drivers on YouTube.

 

3. Viz Design

The evolution of the record featured trials and tribulations, joy and pain, heroes and villains. So all in all this was a great opportunity to try Story Points for the first time.

axisThe overall look and feel took some arriving at and I’d like to thank Kelly & Chris for assisting with the peer review process. My original version made use of custom “speed-style” fonts to give the impression of speed, but we eventually decided that the real ethos of the whole story was the nostalgia and ‘Pathe’ News‘ style of flat capped heroes with handlebar mustaches pushing the boundaries of technology. So we switched to a style that sort of represented a 1930’s newspaper. I was really pleased with the final look and feel of it. Deciding the style really helped the story design of the charts. I tried to be as minimal as possible, removing unnecessary chart ink and distractions.

paper

Operation Paperclip

I wanted to give a feeling of progressing along a chronological timeline, whilst interspersing with ‘infographic’ style information pages. In particular there was a great story to tell about Germany and Operation Paperclip, that made a great infographic.

 

 

wiki

Embedded minimal Wikipedia page

I obviously wanted to use some advanced techniques so used the individual Wikipedia pages for some of the pilots to link off to an embedded web page. A masterstroke was working out that if I added “?printable=yes” to the URL it would give me a stripped back render of the page, that almost looked like a 1930’s newspaper, fitting the theme perfectly. I was really happy with that.

 

 

Screen Shot 2015-03-14 at 12.02.30

Embedded YouTube page

There’s also a page that links off to a YouTube video of the driver. I like that one, as the links are all monochromatic grainy film with appropriately stiff-upper-lipped voiceover. Excellent. I did worry a little about the ethics of including these videos as some of them show the final moments of the driver’s life. I think I’ve been respectful enough in my overall viz to justify inclusion though. I also added an old-school TV border to give a little bit more visual appeal.

So overall I was really pleased with this. A nice style, several good stories and a use of some advanced multimedia techniques.

 

4. Challenges

As mentioned this was my first use of Story Points. Unfortunately it turned out to be a frustrating experience. The feature, whilst undoubtedly useful, is in need of customisation and doesn’t provide a smooth user experience. One for the Tableau dev team to look at for sure.

Another challenge was the fact that the new Tableau Public site has sneakily been changed to https. That only becomes apparent when accessing a published viz using Chrome. Make sure your links to embedded content are https or they won’t work.

 

5. Analysis & Story

So what can we take from this story? Here are some of the key observations that Tableau has allowed me to glean from the dataset.

  • Records are dominated by only 3 nations, with France killing it in early years with their brilliant aviators.
  • It took a while for airspeed to get going, in fact land speeds were higher for a long time.
  • Germany’s poor record really didn’t tell the full story, their brilliant scientists being key to the USA’s great NASA missions in later years. Interesting how their previous misdemeanours were overlooked though…
  • Most record-breaking attempts advanced the speed slightly, with the occasional big jump.
  • The incredible Malcolm Campbell and his son Donald held an amazing 21 records.
  • Oddly, no-one seems to be bothered about records anymore, there hasn’t been a new record since 1997. Or is it too hard / dangerous now?

So that’s it. I hope you enjoy the visualisation. If you do then please consider voting for me in the IronViz competition, should this make the Elite8 twitter vote-off thing.

Regards, Paul

How to initiate IM / Skype / Chat / LastFM session from a Tableau dashboard

Top Tips

Hello everyone. Before I start this I have to admit I nicked the idea completely from Dave Hart of Interworks, who came up with it when he was working with us. But he doesn’t blog or tweet so that leaves me to claim all the glory… Actually I’m just passing on his superior knowledge..

Many of you probably use mailto: actions in your Tableau dashboards, to kick off a mail to someone that might be highlighted in a viz etc. And you might also have some sort of internal IM system like MS Lync or something like that.

Well you can just as easily initiate a chat session to one or multiple recipients using Tableau.

This uses the Session Initiation Protocol (SIP) to open the session in whatever IM client is in use. You just need to open Tableau Server like this

tabadmin set vizqlserver.url_scheme_whitelist sip
tabadmin set vizqlserver.url_scheme_whitelist im
tabadmin restart

sip: allows Lync to lookup people using their email address
im: tells Lync to open it as a group chat

This is an example of an URI Scheme. There are dozens of others, such as callto: which tells mobile phones to call as well as facetime: and of course mailto:. 

Once you’ve opened the server up you can then create a Tableau action to fire off the command. Note that if you try and IM yourself it will usually default to email.

im:<sip:kelly.smith@company.com>
im:<sip:kelly.smith@company.com><sip:james.anderson@company.com>
im:<sip:kelly.smith@company.com><sip:james.anderson@company.com><sip:rob.jones@company.com>

When it comes to the action Tableau won’t let you use multiple items without specifying a delimiter so what you do is use “><” as the delimiter and then put [url encoded] “<” and “>” around the data field.

Anyway I posted this on the Tableau Forum and there’s a workbook attached to that post so you should be able to download it and see how you get on. I reckon there’s some potentially way cool stuff possible using URI schemes. There’s also lastfm:, spotify: and skype: amongst them – so much fun to be had here I think.

Forum post: http://community.tableausoftware.com/thread/155429

Regards, Paul

Talkin’ bout a Revolution…

Hello, I trust you’re all ok,

There’s something stressing me about Tableau. It might not be the most obvious but I’ll have a go at describing it anyway.

See I demo Tableau Server all the time. Like daily. To some pretty senior people that I really want to impress. These demos often involve clicking around the server views to show some of the user content. Trouble is some of my user content isn’t that great. It can be badly designed and slow to load – that’s a separate issue that my team is working on.

So I click on the view and then, there it is…..

30x30REV

Spin, spin, spin. Will it be 2 seconds or 20? Will it even load at all? The room falls quiet as all eyes settle on the spinning circle. The audience is almost hypnotised. The tension grows, until the view pops into life (or occasionally doesn’t). It’s the moment I dread as I know everyone is staring at the circle, waiting. Seems like it makes 5 seconds feel like 50.

So here are my issues with this.

  • Positioning – The spinner is bang in the middle of the screen, you can’t avoid it. It grabs your attention and also the attention of the room. Everyone starts watching it whether they want to or not.
  • Information – The spinner doesn’t give any indication of the progress of the operation. I’m not sure how it can, given the nature of the underlying queries but it’s still a problem.
  • Inconsistency – Often the spin rate slows slightly just prior to completion. But sometimes it speeds up again. So I think it’s about to complete, then it carries on. I know it’s just an animated gif but it still seems to occur occasionally.
  • Errors – I’ve had occasions when the connection is lost with the server for whatever reason, but the circle keeps going. That’s very misleading.

I think everyone accepts that applications which perform loading operations will generally have some sort of indicator. But I think the spinning circle can be improved.

facebook_standard_loading_animation

Users blamed the system

facebook_custom_loading_animation

Users blamed the app

The psychology of waiting is certainly an interesting subject. This post refers to a study conducted by Facebook that seems to suggest the type of indicator used can affect how the user perceives the problem. Admittedly the post doesn’t provide an accurate source for this but I thought it interesting nonetheless.

.

Screen Shot 2015-01-09 at 22.57.05

There are many recommendations to making the waiting game feel less of a drag

There’s plenty of chat on how to make that waiting game feel less of a drag to users. This post from UXMovement.com has a number of suggestions such as

  • Use backwards moving ribbings
  • Increase number of pulsations
  • Accelerate progress, avoid pauses

Also take a look at this article by Chris Harrison. The associated video shows the theory in action and there’s a detailed study of the theories available.

.

I wonder how much thought Tableau have given the format and positioning of the spinning circle as well as the science of perceived performance as opposed to actual performance. I think the consensus is that a progress bar is the best option but I know that won’t happen as Tableau can’t easily know the duration of a query. However, there are plenty of recommendations out there that may be worth considering. Why not make use of every trick in the book to make users feel they’re getting a faster experience?

There has been some chat on the Tableau forums about this (thanks @johncmunoz). It seems such an insignificant component but why not add as much polish to the tool as possible? Anyway, I’m no expert on this so maybe someone who knows the subject can supply more info.

Until then I’ll just think of appropriate 90’s synth-pop as the circle spins.

Regards, Paul

2 minutes with… Matt Francis of Wellcome Trust

2 mins with title2

Hello!

So we’ve been busy at Tableau On Tour – London. Great to see so many friendly faces and thanks to everyone who came to my talk and the London Tableau User Group.

In between sessions I managed to pin down our next victim subject of “2 minutes with…”.

In this edition we are delighted to welcome a big supporter of VizNinja – Mr Matt Francis (@Matt_Francis).

The Wellcome Trust Sanger Institute is a charitably funded genomic research centre located in Hinxton, nine miles south of Cambridge in the UK.

mattVN: Hey Matt. How are you enjoying the conference?

MF: Great. Really enjoyed your session and had a lot of fun presenting my own about Story Points. I think that’s going to be a very popular feature.

VN: So who are you then and what do you do?

MF: Matt Francis, Senior Software Developer, DNA Pipelines where I am the lead Tableau author

VN: Tell me about your org

MF: A leader in the Human Genome Project, we are now focused on understanding the role of genetics in health and disease. Our passion for discovery drives our quest to uncover the basis of genetic and infectious disease. We aim to provide results that can be translated into diagnostics, treatments or therapies that reduce global health burdens. WTSI was part of the Human Genome Project which spent 10 years decoding one human genome (3 billion letters in length) We now have single instruments that produce 100 times that data in a week.

VN: How do you use Tableau?

MF: Since Tableau arrived two years ago it has spread out from our team into pretty much every area of the WTSI. It’s now used in labs to track DNA samples as they process through our sequencing facility, in Cancer and Mouse Genetic teams to analyse experimental data. It is used to report on IT systems and our Corporate, Finance and HR systems. In fact wherever there is data Tableau seems to be there.

VN: What has the impact been on your business?

MF: The speed at which we can now produce dashboards has increased dramatically so that now, providing the data is there producing a full interactive dashboard is a dream to do. People are able to ask questions of their data and get an answer in hours rather than weeks. Tableau Server has enabled us to share dashboards across the WTSI. We have lots of tracking databases spread across different machines and Tableau allows us to blend these datasources together to present a single datasource, something we couldn’t do before without a lot of behind the scenes coding.

VN: Who do you learn from in the Tableau community?

MF: Everyone. I’ve posted in the forums many time and been helped by a huge number of people. Twitter is great for help using the #tableau hashtag you get a wealth of help. I am constantly amazed by peoples generosity with their time to help fellow users out. That’s one of the real strengths of the community.

VN: In your opinion what should we be mindful of in the BI space going forward?

MF: Tableau works because is it quick, simple and powerful. The best visualisations carry that forward so avoiding the temptation to over complicate things is really important. Tableau allows people without an IT background interrogate their data with an ease they have never had before, keeping this simple is the key to Tableaus continued success.

VN: Could you give me an interesting non-work fact about yourself?

MF: When I’m not building vizzes I like to take photos. Mostly landscapes with the occasional portrait, I have two young models that don’t keep still.

IMG_20131029_153731 IMG_20131029_154038

Enjoyed that, thanks a lot Matt. Look forward to seeing more of your expert presentations at upcoming events.

Regards, Paul