Due date: 11:59pm Wednesday, February 4th.
Turn-in link: Discussion on Canvas
This reading assignment (with its associated online discussion initial posting) is due before Thursday, February 5th (that is, on Wednesday, Feb 4).
Maybe a better title for this assignment is “standard and non-standard designs.”
The power of task abstraction (and data abstraction) is that it allows two complementary things:
- We can see that what we are really trying to do is actually similar to something someone has already done already, so we can apply a known (often standard) design to solve the problem.
- Because we really know what we are trying to do, we can try to create solutions that really address the specific problem, rather than relying on a standard design that tries to solve a wider range of problems.
I call the latter “task bravery”: once you know what your task is specifically, you can be more focused on trying to solve it. You can be braver in trying to create an imaginative design that specifically addresses the task at hand. You don’t need to worry about it solving all the problems that the standard/general solutions follow.
That doesn’t make task bravery easy: often we’re so used to the standard solutions that novel ones are hard to imagine. It also doesn’t necessarily mean that task bravery always leads to good things. There’s a high cost to novel designs (in development, acceptance, validation, …), and standard designs are often really good at a wide range of tasks, and hard to beat (especially given those costs).
In this reading, I want to give you an example of a place where task bravery paid off for a task we’ve all had, and offers tradeoffs with solutions we all know. I also wanted to get you to look through “standard designs” in vis – but these are so common, that its hard to know what to point you towards.
For the task bravery part…
Read the paper (required):
- Manessh Agarwalla and Chris Stolte. Rendering Effective Route Maps: Improving Usability Through Generalization. SIGGRAPH 2001. (pdf) (project page) (acm dl)
If you’re interested, here’s another (optional) paper with an even more non-standard approach to a similar problem:
- Patrick Degener, Ruwen Schnabel, Christopher Schwartz, and Reinhard Klein. IEEE Transactions on Visualization and Computer Graphics (Oct. 2008), 14:6(1452-1458) Presented at IEEE Visualization 2008. (project page with PDF)
Here’s a less unnusual solution (again optional):
- Johannes Kopf, Maneesh Agrawala, David Bargeron, David Salesin, Michael F. Cohen. Automatic Generation of Destination Maps. SIGGRAPH Asia 2010. Authors project page. (doi). You can actually try it.
When you read these papers, don’t worry about the technical details of how the methods work (unless you’re a CS student and interested in these things). What I want you to focus on is seeing how they look at the tasks that we do with maps, and then use this to design a solution that is good for this task (at the expense of others).
For the “reminder of standard designs” part…
Look at the paper (required):
- A tour through the Visualization Zoo. By Heer, Bostock, and Ogievetsky. There are various versions around. But, the one in ACM Queue online (here) is good enough.
You should also look through the D3 examples page which has hundreds of examples of things – some standard, some not-so-standard.
As you go through these, think “how many of these have I seen before?” “which ones seem standard?” “what tasks might these be good for?”
For the reading discussion (two initial postings due 2/4, 11:59pm):
In an initial posting: consider the Route Maps paper. What is the task they are focused on? What are other map tasks that they are (almost explicitly) less interested in? Seeing how their solution is good for their task is easy (if for no other reason because they tell you!) – but discuss how for other map tasks their solution (Route Maps) may or may not be good. Since we all use maps all the time, you should be able to think of all the things you use maps for, and whether or not Route Maps would be good for that task.
For a second posting: pick an example from the D3 examples gallery (that no one has posted in your group yet). What tasks might it be good for / bad for? What more standard designs might address these tasks? (better or worse)
Hint: you might find that you lack the “vocabulary” to talk about how a design works, which is actually part of the exercise as it will motivate the next things we will do.