Document 17868830

advertisement
>> Hrvoje Benko: All right. Well, it's a great pleasure today to host Daniel Wigdor. But before
that, my name is Hrvoje Benko. I am a researcher here up at Natural Interaction Research
Group, and I've had the pleasure to actually work with Daniel on several occasions in the past.
Daniel is a fantastic speaker, so I think we are all here in for a treat. Welcome Ken, I know it's
early. He is currently a professor at University of Toronto. He was also a student at University
of Toronto, but he did this in a roundabout way of going out. He has an illustrious research
career working for Mitsubishi Research Labs, working for Microsoft, he worked in a Surface
Group as well as has a stint here at Research we did a bunch of projects together; and in the
meantime he also worked at Harvard, I believe with Cha Shen[phonetic], on the different
projects there. So he's been around. Many people here know him, and he always gives some
fun talks. He's been really active in the touch and gesture community, but he'll tell you right
now that's so passé and he doesn't work on that anymore. So now he’s turned his attention,
laser focus on a new topic for him which has been developing tools and applications for kind of
ubiquitous computing scenarios. He calls them, what, Symphony of Things?
>> Daniel Wigdor: Symphony of Devices.
>> Hrvoje Benko: Symphony of Devices. Sorry. I messed it up. One thing that I tried to do
correctly I messed up. Anyways, so without further ado I'll give you Daniel.
>> Daniel Wigdor: Thanks, Benko. It's always so fun to come back to 99. Thank you everyone
for coming out. As Benko mentioned I’m now a professor at University of Toronto and codirector of the Dynamic Graphics Project Lab. There are two major projects that my group
focuses on. The first is high-performance interactive systems and purging all latency from the
world; but our early collaborations were all with MSR, and I didn't want to repeat things that
people had seen before, so I'm not going to be talking about that today. Instead I'm going to be
focused on this Symphony of Devices Project that Benko told you about a little bit.
Now I should say as a professor my job isn't really to run my own research projects directly
anymore, right? My job is to go out and find money and to help other people to do exciting and
fun research. Really more of a middle manager than it is a research dig. But what it does mean
is that I get to work with a lot of really fun students who have done wonderful projects, and I'll
be sharing four of them with you here today. Stephanie, who is a Master’s student, and did she
did a field study that I'm going to be telling you about shortly; Peter, who has just moved onto
his PhD and is now interning at Yahoo, did some of this work; Anthony, who is right here in the
room, was interning at Autodesk and I had the privilege of collaborating with that team and I'm
going to tell you about that project as part of the larger Symphony Project; and of course Jishuo
as well who is also my Master’s student.
So the talk is largely comprised of these four papers, so if you want to go back and get the
source material, that's what it is. So Anthony, in his talk, had what I think is a really startling
contrast that I think is a great way of proving the point that the error of ubiquitous computing is
here. So this is the people conclave for Benedict the 16th in 2005, the crowd eagerly awaiting
the announcement; and this is Pope Francis in 2013. Notice the contrast. Can anyone really
argue that the error of ubiquitous computing if not having arrived, if we haven't yet achieved
the true vision, at least it has begun.
So what does that mean? Well, what it means is that we have this huge number of devices, and
this too comes from Anthony's talk, this is what my lab looks like. I don't know if everyone's
living room looks quite like this, but we are soon to be flooded with devices. Now, many people
think of this as an error in which you might have a smart phone, maybe a desktop computer,
although that's becoming increasingly unpopular, and maybe also a tablet. But the way I think
about this and I think the way a lot of people in ubiquitous computing have been thinking about
this for quite a while is not to think about these as individual devices and certainly not to think
of them as devices that are owned by an individual, but that eventually we will think of them
the same way we think of this, a ream of paper sitting on the shelf.
Now what I love about this photo of this ream of paper is that it's such an unimportant product
that they didn't even bother to spell it properly. If you look at the description of the price tag
down at the bottom it's receyled or something, not recycled. This is how unimportant paper is.
You don't distinguish yourself with paper. Maybe you think oh, I want to be good for the
environment so I'll buy the recycled stuff, right? But this is how you think about it. It's cheap, if
I were to walk into someone's office when I was meeting with them today and there was a
stack of paper, I wouldn't even think about taking one and writing with it, right? But right now I
would think about twice about grabbing their iPad and taking notes with their iPad. But soon
enough this will be the way we start to think about these ubiquitous computing devices. These
technologies will become as cheap and as plentiful as paper.
Now, for anyone who studies ubiquitous computing this is not in and of itself an original
thought, but the key that we see to this at the University of Toronto is moving from the giant
clutter vision of the world and the disparate large number of devices of the world to what we
call a Symphony of Devices. And the core idea behind the Symphony of Devices is rather than
just having individual screens that you have content for developed for, instead, think of the
large collection of devices that the person has and target applications for the person and not
for their technologies.
So this has started to happen in a few places for specific form factors. So this is Microsoft's
attack which is called SmartGlass, am I getting that name right? Where you can write an
application that runs on the phone and it runs on the Xbox. So if you're sitting in the living
room and you’ve got your Xbox running you can interact with it with your phone. If the person
has created an experience the developer, the people who made the game, created an
experience that allows it to span that way. It's not just Microsoft. Samsung also sees this as
their future, so they have applications that run on their phones, and as long as you have a
Samsung TV you can control your television from your phone. And there are lots of these sort
of targeted tools. What we are trying to achieve with the Symphony though is a little bit
different. What we're trying to achieve is a way for developers to create applications without
having to focus on the form factor and without having to focus on the context of use because
the problem is right now you can develop a SmartGlass application, you say okay, what's the
scenario? Well, there's a television and there's a phone. And maybe there are two phones.
And that's sort of a scale that is reasonable to ask them to design their applications for. But if
you think about what's going to happen and what has already begun to happen is this explosion
of different device form factors.
Now this has created a couple of problems, one of which has been talked about for decades,
which is writing an application once and having it run everywhere. [indiscernible]. What I'm
interested in is similar but subtly different from that. I'm interested in enabling development
teams to build applications that yes, can run everywhere, and I think the closest to winning the
write once run everywhere is probably HTML, but you might have a different opinion about
different tools. What I'm interested in is similar to that except I want our experiences to grow
and to shrink across all of the user’s available devices. So if right now when I'm giving a talk I
have my computer, and I have available to me a large screen, the application should spread out
and take advantage of those screens. I'll give you a more specific example in just a second.
Now the role of the cloud in all of this of course is to be the connective tissue between all of
these devices. But it's important to understand that the approach that's been taken so far
doesn't yet allow us to achieve it in a meaningful way. We have experiences like iCloud, and I
forget what Apple calls their ability to play video from the phone and it shows up on the
television. Does anyone remember what that's called?
>>: AirPlay.
>> Daniel Wigdor: AirPlay. Yes, AirPlay. Thank you. So this starts to get there, right? And with
iTunes if I buy a song once and my wife is on the same iTunes account, so she buys a song, it
shows up on the phone, right? And that certainly starting to get to what all of us as computer
scientists have wanted to envision, but what this is about is about replicating experiences
across devices. So if I pick up my phone or I pick up my tablet I can have roughly the same
experience. The video is there, the song is there, the applications are there.
SkyDrive, I have to get a new screenshot, the Ministry of Truth has decided this is called
something else now, right? One drive. Okay. I apologize for that. I should’ve fixed that slide
before coming over. I figured it might change names again this morning though, but anyway.
So SkyDrive is a wonderful tool. I use this a lot. But it too is about replicating experiences,
right? I was really impressed that when I got my new PC and it backed up, restored from
Windows 8 it had all my passwords still. I mean that's great, but again it's about replicating
experiences across devices. Netflix, same thing. I can watch a movie on my tablet on the bus,
you get home, you walk in the living room and you resume and it plays from the same place.
Amazon, same thing. I'm reading a book on one device, I put it down, I pick up another device,
it knows what page I was on. Replication, replication, replication.
So what is it that we want to achieve? Well, this is a version of the cloud that we're starting to
see as a more popular thing where the applications start to live in the cloud and actually get
delivered to the devices. Adobe recently went to a subscription model for their software,
Microsoft has gone to a subscription model for their software, we have this vision of the
application living here and being sent down. Now we've built up before. A project that I did at
Harvard University, as Benko mentioned, looked at how it can we enable people to take pixels
and control signals and share them across devices. So I'm going to show you that project very
quickly. Here's an old video.
[video demo]
[inaudible] environment for collaborative research. Users bring their laptops to an interactive
table and connect to a server with a lightweight client and share their screen images on a high
resolution data wall. Each laptop screen on the table is rendered with a control bar with
buttons that allow users to switch the priority of the image. These images are automatically
laid out based on the priority of each display. Users are also free to manually manage the
layout above the table and wall surfaces. Gestural input on the table controls the magnification
and placement of the laptop images on both table and the wall. Double tapping on a laptop
image enters a full-screen mode with mouse simulation. In this mode the synchronized view
between the table and wall is severed. User actions on the table are interpreted as mouse
input and sent to the client laptop. After finishing the mouse commands this user taps on the
toolbar to switch back to the synchronized view.
>> Daniel Wigdor: So that was a tool that allowed astrophysicists, and of course Paul you
recognize this, right? This is the main room at Mural where we get a lot of this research. This
allowed astrophysicists to bring their research projects into a large room and do screen sharing
so that their application would show up on the table, and it's actually their laptop, and they
could go in and edit their content. It would also get mirrored up onto the wall. So this is very
popular. But this too is different from what we are trying to accomplish. What we want is
applications that automatically grow and shrink across all of the available devices.
So finally, a concrete example. Panelrama is the tool that I'm going to tell you about at the end
of the talk that allowed us to create these applications. So let me show you this app. So
imagine if instead of using PowerPoint to give this talk I was using this slide presentation tool.
So imagine this is up on the screen I'm giving the talk this way. You see of course the main
slide, you see the speaker notes, you see the list of slides that are available to come up next,
and if you look carefully you can see a timer in the bottom right corner that shows how long the
talk has been going.
Now, in PowerPoint I plug in a projector and I hit F5, it will make this full-screen. And there are
people who have written special applications where if I connect my phone into this I can
advance the slide. But what if I want something a little bit different? What I want is if I plug
into the screen I get this experience but I want to be able to give a more dynamic talk. I don't
want to have to be glued to the podium. So what I want to have happen is I connect my phone
into the Symphony and what it will do is it recognizes that the phone is a small private screen
with a good touchscreen, so it's connecting in, and this application doesn't know anything
about the phone except for those with physical properties. And you see the notes, the slides,
and the timer have all transitioned down to the phone and the current slide stayed on the big
screen.
Now this was not custom written for this phone. The developer of this application didn't know
that there would even be a phone involved. What they knew was that they wanted to be able
to have their application always keep the current slide on the biggest screen that was public
and move the list of slides, the notes, and the timer to something that was more private. Okay?
So let's say you want to give a more slightly more dynamic presentation. I've shown you that.
And let's say you want now to be able to walk around. Well, you can connect your Pebble into
the system and it gets recognized as a device that has time, so in a moment it will pull the
timers down onto the Pebble so you can see how long your talk has been, so instead of seeing a
clock you'll see contextual information. It also recognizes the presence of buttons and so the
user’s going to be able to push buttons on the side of the device and it will transition the slide
from one to the next. And here again the developer didn't know about Pebble, the developer
didn't know that there would even be a watch connected. What they knew was they wanted
the timer to be on something that could be very close to the user and they needed to be able to
push buttons to advance the slides and it recognized that that too was close.
There's a problem with this though. If I'm walking around with a Pebble on the stage and I'm
giving my talk, I've lost my speaker notes. I can't see them anymore. So I end up going back
over here. You don't really want speaker notes on this little screen, right? You don't want to be
going like this whole time you’re talking. So what do we do for that? Well, we connect in a
Google Glass and the system recognizes that this screen on the side of Google Glass is small and
private and so the speaker notes automatically move over to the Google Glass, and so now a
speaker gets a personal teleprompter right there in front of them. And yes, I see Paul sort of
making this sort of head gesture while you’re giving your talk, so you too can look like a zombie
while you’re giving your talk, right? The next version of Google Glass they put a little bit lower
and it’s a little less apparent.
Anyway, so this is the tool that we are trying to achieve, this automatic reallocation, and it
doesn't stop at one user. So if someone is connected with a different account into this
presentation what they see on their tablet, which is different from the speakers, is the list of
the slide that's currently being displayed. So you can follow along with the slides with it in your
lap, maybe take some notes, and in addition they can hit a button that shows them additional
information about a slide. So if someone just shows you a bar graph but you want the
underlying data you can see the publicly accessible content of the presentation. Let's think of
this is like a public version of the notes for each slide. This is a feature that doesn't exist in
PowerPoint yet, but if you added it to the application and you said this is public but I want it to
be on a private screen, on a small display, it would put it here automatically.
So this is what we’re trying to get to. And this application has been built. We built the tool kit.
Let me show you what we're going to build into it and why. So to achieve our Symphony of
Devices we underwent three steps to the work. The first was to understand how do people
currently use many devices? What are people doing in the world? Are there people who use
tablets and other devices in parallel? We then look at interaction designs. So what are the
things people want to do with these devices? How can we achieve the great functionality? And
then finally we built developer tools.
So, I know this is the show me building, so I'll go quickly through the ethnographic stuff. Mary
is not here, right? No. Okay. So what do we do? We went out into the world and we found
people who had distributed workspaces. We did this through advertising on Facebook and
Craigslist and we said, we want professionals who have what we refer to as distributed
workspaces. And the way we defined this in the call was you had to own a few devices, you had
to use them in different places, so you did work from home, you did work from the office, etc.
What did we get back from our call? Well, we got a whole bunch of people. These are just nine
of them, but a large variety of professions. These aren't just undergraduate students in
computer science between the ages of 17 and 19; we have design consultants, architects,
managers, physicians, etc. In fact, the population of the study is distributed across creative
endeavors, some engineering, healthcare, business and marketing, etc.
So what did we see when we went out to these people? We met with them in their workplace;
we interviewed them to understand what it was they were doing. We saw workplaces like this.
So this is one person's desk. And this is far from atypical. Jonathan will certainly appreciate the
use of multi-monitors here on the table. But in addition, of course, to the multiple monitors we
have the laptop that's over here on the side and when this person is at their office they plug the
laptop in and it’s driving all three of those monitors. They also have front and center an iPad
right where you would expect the keyboard to be. So what is the role that the iPad plays
because a lot of people have this vision that the iPad is the thing you use when you leave your
office, right? I know Ken and I have had many conversations about people actually use the iPad
at the same time. So how is that happening? And then of course just as interesting to all of us I
think is the presence of all this paper for hand notes and real artifacts, right? We haven't
reached the paperless office yet is no surprise to anyone.
Additional workplaces, this is a developer who does engineering work; we see a couple of
keywords and input devices, we see a bunch of screens etc. And here too, again, we see a
tablet sitting off to the side that they use simultaneously with their work. Same thing again,
this is an architect’s workplace. We see an iPad and a phone sitting and facing her while she's
doing her architectural work. And then this one I threw in just for Ken. We see a laptop and of
course a pen tablet off to the side here so that they can give different forms of input.
So what does all this, what do we do with all this information? We did a couple of things. We
built what we call the Artifact Analysis Matrix, and I promise I won't take you through all 10,000
or so cells of this thing, but essentially what it was was that for every piece of technology, and
by technology I include things like paper notebooks and cameras, we analyze what role does
that play in their work, how does it get used, and how does the information flow from that
device to another device? So this is more or less a classic technique of artifact analysis. Now,
come on Presenter View. Where have you put me? I love Presenter View 99 percent of the
time. There we go. Okay. And we understood what is their multi-device workflow, how do
they use all of these technologies, and then especially focused what are the things they want to
do that they can't?
So what did we find? Well, Stephanie developed these landscape diagrams which are actually
an incredibly useful tool. This is one person's technology and their workflow for one of their
tasks. So we see the things like the collaborator and the client sending information via
corporate e-mail into their Windows laptop. From the Windows laptop they used techniques
like getting information into Evernote so that it can then go to their Android phone because
there isn't a good way to get directly from the Windows computer into the Android phone. I'll
take you through a couple of these in a little bit more detail, but understand the arrows are
flows of information and the little pictures are people or artifacts and then we have services,
cloud services, and applications. We've got a couple dozen of these for each of the
participants.
Now, there are a couple sort of obvious things that emerge from this tool. Why does it keep
jumping around on me? I'll try the touchscreen. More touch friendly. Here's one. Does
anyone notice anything interesting about this graph?
>>: [inaudible]?
>> Daniel Wigdor: Split in half, right? Yes. Completely split in half. We have professional and
personal. What do you see, what are the technologies you when it's split in half? There's
always one of these. If you’ve got a Blackberry, and other people have noticed this in the
industry, if work makes you use a Blackberry, generally you erect a firewall and then you have
all your Mac stuff at home, right? And Windows laptop of course too.
So we're able to use this to understand things like what are people's workflows, but then also
what are the patterns that people follow when they're trying to use all of these technologies to
do their work? So I'll take you through a few. We have different information flow patterns, we
have the findings about the specializations of the devices, we have findings on data
fragmentation; and again, I'll get to do cool stuff, to the toys quickly for this crowd, but let me
give you a little bit of intuition why we care about this.
So first thing we talk about serial and parallel patterns. What we find when we say this is how
are people using these technologies one after the other or how are they using them
simultaneously? So an example of a serial pattern is what we call the Producer-Consumer. And
this is sort of the classic vision for how tablets get used, right? You use your laptop to write a
document in the first place and then you send it over to your tablet. And almost invariably this
is done by e-mailing it to yourself or by sending it through a cloud tool like SkyDrive or Dropbox.
So the Producer-Consumer pattern we found over and over and over again that people would
use these devices with better input technologies and then they would put it away so they could
fit more comfortably and use their mobile device, or they’d do that that way so they could use
it on the bus or they’d do it that way so they could take it to show someone else.
Also interesting to us was the frequency of the Performer-Informer pattern. So what that
means is we have the primary device like the laptop but simultaneously they would use a
second device, usually a tablet but sometimes a phone, to look up information. And I imagine
now that I'm showing this to you, you realize you do this too, right? You’ll be maybe writing
your program on one thing and looking up APIs on your tablet. Now this, although we all sort
of realized that we do this if you have a tablet, you stop and you realize this is actually a pretty
painful way to work in some ways, right? One, the input device sucks for this other device but
fine, they like having the portability, they like having this dedicated screen that they can use in
parallel; but the other thing is, if you're looking at the API documentation here and then
wanting to follow it in the program that you're running over here what’s the problem?
>>: Copy and paste.
>> Daniel Wigdor: Copy and paste, right? There’s no clipboard between these devices. These
are the sorts of really obvious findings that come out of this once you see the technique. So we
see things like, we asked people why is it you use all of these devices? Why don't you just have
the documentation open up another window on your laptop, or why don't you just have a
second monitor and put the information over there? But what we got over and over again are
people who say things like this, there's something about the geometry of one's desk, you can
have some notes sitting literally on the meatspace as opposed to the computer desktop even
with three screens, it's handy. They like the physicality. They like being able to have that API,
and only some of them were engineers, but I'm going to keep putting it in engineering terms;
they like having that API documentation right where they can reach and grab it. Alt tab isn't
fast enough for these people.
So, what else? Things like Performer-Informer-Helper is another design pattern. So this is
similar to Performer-Informer except we add this Helper device, I’ve got to stop using the
mouse to click on Presenter View; it jumps to different slide. Are there any office people in the
room? I’m going to put the mouse over here. Someone yell at me if I reach for it, okay?
Anyway, Performer-Informer-Helper, the only difference with this is they add yet another
device to use things like they’ll have a calculator up on their phone and they'll have this
designated tool you can always go to and find a calculator running on their phone. You think
why don't they just run the calculator app in Windows? But people like the physicality of this
other device despite the fact that it has the copy and paste problems.
All right. I'll let you read the paper for a much more detailed analysis of all these design
patterns. I think it's really interesting, but I know we want to get to the toys. Certainly we
found a lot of specialization of the devices where, just as we would expect, if you have a
desktop computer that gets used to do things like composing information, composing content,
if you have a smartphone that's used for things like collecting data out in the field, it might be
taking pictures of a site and bringing them into the computer etc., tablets used for reading and
having an extra display, exactly the sorts of specialization that we expect from all of this but the
surprising finding that we found was people much more quickly go to their specialized devices.
Even when they're sitting at their desk, often people will pull out their phone and run the
calculator app on their phone instead of running the one in Windows, even though there's no
copy and paste. So they end up retyping things and having transcription errors because they
like the physicality.
Last, oh good, so it's happening on the touch screen now too so at least it's consistent. Data
fragmentation. So this comes as no surprise to anyone, I think. Getting information from one
device to another sucks. What is the fastest ad hawking network technique that people use for
information sharing? Who thinks it's Dropbox?
>>: Email.
>> Daniel Wigdor: Everyone said it. Who thinks it's e-mail? Yes. We all do that, right? You'll email things to yourself just to get it onto your Windows tablet. So we have this is sort of a
workflow. You save your content, you open the e-mail up, navigate to the file, attach it, pick
your device, all the way back through. And of course what this does is it moves it off of a
shared file system, so now you have this extra version of the file hanging out in your e-mail.
And you save it there, it doesn't save back properly; and I should say I am completely in love
with the new Office for iPad because of its one drive integration is awesome because it solves
many of these problems.
All right. What else do people want? Over and over and over again we see people trying to
perform tasks together on devices. I mentioned the calculator model, someone's using a
calculator on their phone, I mentioned reading documentation from one device, people want
this. I want it, you want it, we want to be able to have all of our devices share information well.
But it isn't just about running an application on one device and moving it over to another app,
it's also about being able to take the information and divide it up, or the application itself and
divide it up and have specialization. So if you have an application that has all of this
functionality, we don't just want to have it running on one screen and then have this other
thing hanging on another screen, we actually want to be able to divide it up and use one
application broken up across whatever devices I have available to me at a given time and
critically, to be able to understand if that device is good for something, if it's good for data
entry, if it’s good for having a big screen, if it’s good for having a good touch input, that the
content that gets put there, the portion of the application is appropriate for that device.
All right. Let’s talk about technology. I'll take questions on the way through. Does anybody
have a question about the ethnography? No. We want the toys, right? Yes.
>>: Do you also explore the idea of public spaces and user devices in public spaces? I saw some
examples of Office space [inaudible] on settings-
>> Daniel Wigdor: Yes.
>>: But did you answer [inaudible] big spaces in museums or [inaudible]?
>> Daniel Wigdor: Yes. So the question was about public spaces. Did we look at how people
use devices in public? Some of our users work exclusively in public spaces. So their notion,
their distributed workspace is that they go to a coffee shop every morning and camp out. So
there are lots of examples of people using private devices in public spaces. In terms of public
devices, like being able to use a large screen that you can walk up to at the airport or
something, there wasn't, I don't think there are any examples of that. Maybe it's just that
Toronto isn’t high-tech enough to have large public displays that we can share information on
yet, although I keep wanting to be able to send info to the CN Tower because it's got this light
display that I want be able to send things to. Yes.
>>: [inaudible] ethnographic is that written up in Stephanie’s theses? Where is [inaudible]>> Daniel Wigdor: It's a UB Comp paper 2013.
>>: That's the most complete?
>> Daniel Wigdor: Her thesis is more complete. I'm happy to share it with you if you want to
see it.
>>: And then the other thing which maybe we can take offline so you can get onto the showing
stuff, but one key question here is you say that people prefer to have the stuff on their devices,
and this a possibility. Now the other possibility is that the way it’s so hard to arrange things and
access them conveniently on larger devices and I think that's a critical thing to sort out. So it
may actually be that they really prefer physically a way or may just be hard to, that may just be
the easiest way to access it and [inaudible] in that. Do you have a feeling on that?
>> Daniel Wigdor: Yeah. Certainly I agree with you that if, eventually it won’t just be like you
have one desktop monitor and then you’ve got this space down here and in order to get, so the
question is do they really want to have it on a device or is that they want to have it on the
desk? And if it were one operating system that stretched across all of that would they be happy
just to sort of send the window down to the desk or is it that they like the physicality of this
other device? Am I getting that right?
>>: Well, or I mean the third possibility actually it would be faster if it was all up in one place
where they can move around, but that may actually prefer to just have it in a separate place.
So I think there's three possibilities. I mean, I agree with you that the second is preferable to
what we have now, that's where you’re headed, but there's still-
>> Daniel Wigdor: To be clear, it's definitely faster. So if you want to use a calculator, it’s way
faster to hit the start button, type C-A-L-C, Enter, and then type versus pulling out your phone,
turning it on, entering your unlock code, scrolling to the application, it's definitely faster to have
it on the desktop.
>>: That’s also [inaudible] just your primary task, right? If I bring up something document on
top of the thing I'm working on maybe it’s faster to do it there but then I have to>>: That's what I'm getting at.
>> Daniel Wigdor: So we have a study that starts to scratch the surface of that that I'm going to
sneak in in the middle of the toy presentation. So let me show you that, and then I think that
will set context for some of this conversation. Yeah.
>>: So maybe I’m just one of the old guys in the room.
>> Daniel Wigdor: Well, you are, to be clear.
>>: Thanks for pointing that out. But I find that I will often pull up the calculator for my phone
because I forget that you can just hit Windows and type CALC.
>> Daniel Wigdor: Right.
>>: It’s not a question I prefer it on my phone, I actually don't, but it's just easier to remember
oh yeah, I have this on my phone. So it's not because I prefer it>> Daniel Wigdor: Yes.
>>: It’s just because in my mental model that was just easier.
>> Daniel Wigdor: It’s definitely it’s in the mental model that it's easier. And a lot of what
people said to us, and this will really come out in the study I'm going to show you sort of
halfway through what's coming next, is that having a physical token that is that object is very
helpful to people and when people have that option they like it. So, for example, what we
found with our participants was, sticking with the calculator example, it’s not that they want it
on their phone, they want a calculator, like a real physical calculator that is on their desk and
they can use it. And it's not about it's faster to use, it’s about they remember that it's there and
they have the physicality of that to sort of have this token.
>>: But what if you have a whole wall display, you had your calculator up in on corner and it
was always there, nothing went over it and it didn't go over anything. Would that be good
enough, or would you really still rather have a physical device up closer? I don't know.
>> Daniel Wigdor: It’s an excellent question, it’s one that has to be answered. I don't know the
answer yet either. If Window Managers were as painless as physical arrangement, eventually
degenerate case is really what it comes down to is do you prefer pixels or physicality? And I
think on that particular question there's a divide. A lot of people really prefer physicality, and it
does help you perform the task really well, but I don't know yet.
>>: Part of its [inaudible] in your hand because no matter where I hold my hand I know where
to look at to see that, right? If it's in some big wall display, even it stays fixed, I need to
remember where to look.
>> Daniel Wigdor: Yeah. I think let's all talk at lunch and we’ll figure out the answer to this
question. All right. So let's get into the toys that got built. So Peter has this idea, Peter is my
Master’s, he's now a PhD student, his idea is to target, I talked about watches and heads up
displays and wearables; his vision is this, his vision is when you're working with technology
you'll have a whole bunch of tablets that you can be able to use simultaneously. Are they
tablets? Maybe, maybe not, but they are physical devices that you can dedicate Windows to.
And the way to think about this work starting off is think about these as individual windows of
information. Instead of having a Window Manager you have these tablets. These are all
running Android, and he’s developed tools to start to solve this problem of how do you flow
information from one device to another. And to be very clear, neither he nor I is ideological
about whether or not there's a very large monitor front of all of this. But given that people are
excited to use all of these devices and to have the physical token, I think, then we started to
solve this problem with this system that he calls Conductor.
So to build Conductor he focused on creating six applications, and by using these applications
on individual devices and trying to solve the problem of how to flow information between
devices he was able to build his Conductor. So what does it look like? This is the application
that I'm going to be using throughout the example. He built this for CHI which was just in
Toronto, so the example we have is a tourist’s guide to Toronto. So you can imagine the single
device version of this application where you have a list of different things that are very
important to see, of course the building where my office is the most important, where our lab is
is important, and if you see something you like you can tap it and then you'll see it, right? And
you can imagine what the smartphone application looks like. Now he built it for a multi-device
environment. So sure, he can bring up information about the CN Tower, but when he adds a
second device like this now he wants to enable people to have in their hand, as Ken put it very
well, to have it dedicated to their hand, here are the list of things that I want to be able to see,
the tourist applications, but I want to be able to send content from the phone over onto the
screen so that I can see information about the tourist site on the screen. And by solving this for
a tourist application and for a few other applications he has a generalizable solution.
The question is how does he do it? So again, as we've gone through now together a couple of
times, right now what you might do is you try to e-mail yourself a link into the app and you
bring up the app on the tablet and you load it up. He developed this idea of targeted
transmissions. So what does that look like? Well, from the phone, from the first device, he can
perform a gesture on any item and from this pie menu to see a list of all the other devices in
the space. And it has the name of the device, just Nexus 7 because all the tablets he had were
Nexus 7, but they're also color-coded in a couple of ways. There’s a bar at the top, you can see
this is the orange device, and then he also colored them orange so it had a physical bumper.
So what does that look like? Well, so here is an arrangement of many devices, he's got his
application on the left side, and he’s going to send information from one to a different device.
And you can see as he goes through the list we get this little shutter on the other device that
says this is one you're pointing at right now. So if you let go of your thumb right now that's
where you're going to send the information from one device to the other. So think of this as
being sort of like copy and paste, but it’s not quite a copy and paste because it’s sort of a forced
copy and paste, right? As soon as you copy and then you select Paste it changes the application
that's running on the other device. So it's a little over the top. We have additional fidelity.
So the question I put to him was this doesn't seem physical enough. What we found was
people really like to be able to lay out their devices on the desk in particular places and they
wanted to be able to have that physicality mean something. There’s great work out of Calgary
and other places that look proxemics so can do things like if you're holding a phone you can
reach it towards another device and share information or affect that device. But we wanted
this to work outside of an icon instrumented lab.
So how do we achieve having the physicality matter? If you've got these two tablets, you want
to be able to send information from here to here without having to sort of go for a list and
target it, right? So what he does is an approach called broadcasting. Now what broadcasting
does is when he selects to broadcast it sends it to all of the devices in the Symphony
simultaneously. Now the key realization here was this is a single user application, or a single
user thing that he was trying to solve for multiple devices, if you're trying to send information
from device A to device B, if you look at device B it doesn't matter that the information is
arriving on your 14 other devices on the table, it only matters that it shows up at the one you're
looking at.
>>: [inaudible]?
>> Daniel Wigdor: Let me show you how it works. So he picks an item and he chooses to have
it broadcast, fine. What does that look like? When he broadcasts it, it shows up is what he calls
a queue over here on the side of the screen. Now, instead of forcing the device to go to a
different mode or whatever, it just shows up as this little icon on the left side and you just
ignore it. It will go away after a few seconds. The key features here are though we get the
color that shows where it came from, we get an icon that represents the application that it
came from, and we get a label that says what it is that this thing does. Now when you get the
queue you can just tap it and say, I want the default action. So if I send the CN Tower
information I tap it, it will load up a full-screen about the CN Tower on the tablet.
You can also choose to do what are called contextual actions. Let me take you through these.
So he taps it and it gets the default action, so here it's going to load the CN Tower information,
fine. Now what you’ll see here you can bring out old cues from the side of the screen, so if
they’ve timed out you can just get them back again, they live in a little tray on the side, and
more cues can show up, you can just keep ignoring them, and again you can tap it to get the
default action, but just as interesting is what we call contextual actions. This is sort of the paste
version of this thing.
So you've got your cue and instead of tapping it you drag and drop it, and when you do that it
pastes it into the current application. So a minute ago if you just tapped that it would've loaded
the tourist information application, brought up the page, here he dragged and dropped it into a
web browser. So what does it do? Well, it finds the URL of the thing that he dropped and it
goes to that website. If he had targeted it towards a text field it would've pasted it like text.
Now what Peter is going to show here is how to quickly get information from one device to
another. So on the very left we have the contact list. This is a list of people in his contact book.
Next he’s going to move from that into an e-mail application and he'll move from that into a
map which shows right now is just in a map app. But if he brings the cue into the map app and
he's asked for the contextual action it will show you where the person lives. So let's watch him
do that. So he chooses the individual, he broadcasts it, that goes out to all devices, he taps it so
it loads the default action, he then broadcasts out the contact information again, and when he
drags and drops it onto the map it performs the contextual action of loading it into the map
application. So very quickly moving information from one device to another and always having
the right context. You can either preserve the context of what was running on that device
before or you can choose and say I want to switch applications.
Now this doesn't quite get all of the multi device scenarios we want. This requires that you
continuously send these requests to affect another device and they have to get it sucked it over
and over and over again. What we've created here is the ability to temporarily form a link
between two devices, and we call this link a duet. And a duet is these two devices are going to
temporarily play together. Now the way that we procreate this connection is, so for example
let's say I’ve got a list of the videos here and I want it to be that every time I tap one of the
videos it loads it onto this tablet. Or if it's not a tablet imagine it's your living room television.
You want to be able to watch a movie when you tap it. So that's done by one of these
functionally bonded duets. So here's how it works.
We have on the left our tourist application, we have on the right the information with the CN
Tower, recall if I wanted to see a different one I’d have to broadcast it, come over here and
accept it over and over and over again, instead we are going to form our duet. So here's how.
You broadcast a cue and then instead of putting it in the usual place he’s going to put it over
into this link. And that says I want to create a connection between these two devices. So now
anytime he taps one of the list items on the phone it automatically brings it up on the tablet.
No need to over and over and over again set the same thing.
Now, duets are great, but how do you manage them all? And by manage I mean there's a
couple of things. One is there’s going to be an action that this will cause to reform. If I tap CN
Tower on one list it makes sense it would bring up the information with the CN Tower on
another devices, but what if instead I wanted to do something else? Can't you form other types
of connections?
So in the developer framework the developer of the application can choose what type of duet
they want to create. So, for example, here we've got two map views and he’s going to form
two different types of duets. First he’s going to create one that just synchronizes the view.
Then he'll change it and say I don't want to synchronize this view anymore, I want to see what
the other one is looking like a world in miniature, and I want to have information about the
viewport of the other screen. So let's watch that happen. So he brings it over, forms the duet,
and now any time he scrolls one map the other catches up complete with latency to make it
authentic, and then he's going to grab the duet and put it into the other socket which says I
want to create the other type. The user gets a little information that describes the duet that
will be formed. So now when he zooms in it doesn't zoom the map, it just shows what is the
viewport of the other map.
So pick your favorite application and think about what are the ways you might want screens to
get synced. If there's only one way that would just be the default duet. If there's more than
one then you can create them.
>>: I have a quick question.
>> Daniel Wigdor: Yes.
>>: So you made a duet look small like you have a master device and you have a slave device
and you can control your little slave device from your master? Is there a way to>> Daniel Wigdor: It goes both ways. So if you have the screen synced, for example, and you
grab it and move it here it will send it out to the other device as well. So it's bidirectional. And
the developer can also choose to make it unidirectional if you want to. But that's a very good
point. We really want to get away from this idea of master and slave because I think it's holding
back a lot of multi device computing. A lot of companies are thinking about it as the phone is
master, the TV is the slave, or, the phone is the master the watch is the slave, or the phone is
the master and the heads-up display is the slave. But it's always about having a master device.
We're trying to break away from that completely. This is a democracy in our Symphony.
We have here cross-application duets. So this is a map application running in parallel with the
tourist application. So now whenever he taps one of the tourist sites he sees the current
location on the map. And that happens because the duet defines this as a geographical point
and the map knows how to receive it and so it does it automatically.
There's a nice property that this brought out which is the ability to share peripheral devices
easily. We found this to be really painful. We had 20 tablets and we wanted to be able to pair
a keyboard with any of them. A Bluetooth keyboard. You have no idea how long it takes to pair
a Bluetooth keyboard until you try to do it 20 times in a row. Here's how you can handle a
Bluetooth connection in Symphony. This, in terms of the Bluetooth pairing, this one is paired
with of the devices in the Symphony. We don't even know which one anymore, okay? When
you type you get a cue that shows up and if you bond the cue with the device it sends the
keyboard over there, if you form a duet with the keyboard. And now what you see is you’ll
break that duet by throwing it in the trash and now it goes back to be on the previous device.
So much better than the, I watched him doing it.
All right. Last bit of functionality, being able to manage all of these devices. So there is a
delicate balance I argue, and we're going to talk a lot more about it, that the physicality of the
device matters. And what we found in a study I’m going to tell you about in just a second is
that over and over and over again people would dedicate particular physical devices to
particular tasks. This is my e-mail. This is the map. And they would put it in a particular
physical place on their desk. Now the corollary to that is, or the counterpoint to that is this is
all just digital information. So shouldn't I be able to, on the device that is currently my list of emails, shouldn't I instead be able to grab the screen from something else? Now, we provided
that functionality, but interestingly it would get used a little bit but not very often because they
like this direct physicality. So what you see here is if you hit the Home button your home view
is all of the devices that are running, not just your home view on your particular phone, and you
can clone a view by just tapping it and zooming in, so then he got the copy of what was on the
green tablet, and you're also able to grab a view and move it. So if you want to have the
session from the green device on the orange device you just zoom out to your Task Manager
and drag and drop it and then the orange device becomes the green device. So it completely
gets rid of this idea of an application running on a device. It just is running in your cloud of
applications. You can just zoom in. Yeah.
>>: I always imagined that hoping that I can, I have a duet tablet but to pull up the virtual
keyboard is so difficult. You only see a slide of maybe your website. Can I do like typing in my
phone and just transfer that?
>> Daniel Wigdor: Yeah. If you form a text entry duet between your phone and your tablet
your phone can be a keyboard for the tablet the same way. So I share your opinion that that's
painful. Now the study is not just about proving out the functionality. The study is about
looking at how do people really use this thing. So what we did was this replicates a technique
that was used for very large screens at CHI previously.
We used the VAST 2006 contest, this is from North and his research group that did this
originally for very large screens, and we said let's have the people try to solve this task. So what
it was was the following, you are a CIA analyst and you have 230 odd newspaper entries, it’s
mostly stuff that's in the press, you have a map so you know where this fictitious town is in
California, at least I think Alderwood is fictitious but it's set in California, and your job is to find
the 8 articles, excuse me, 10 articles that really do describe this funny business that's going on
in the town. You're trying to solve a crime. This apparently is a task; this is something that CIA
analysts have to do a lot. What we gave people was access to all 230 documents in a list. If
they wanted to they could just pick up one device and just go through the documents one at a
time, read them, they had the ability to take notes, etc. I don't know why Presenter View just
does not like me.
>>: CIA is not supposed to be investigating crimes.
>> Daniel Wigdor: I apologize. You're right. Domestic crime is FBI, yes. In Canada we don't
have any of this stuff.
>>: [inaudible].
>> Daniel Wigdor: Oh, that makes me nervous. They don't like me. So eight participants came
in and did this task. Most of them were computer science graduate students just to set myself
up the way I did others earlier. We gave them a whiteboard, we gave them a paper and pen so
if they just wanted to take handwritten notes they could, we give them five Nexus 10’s which is
a ten inch tablet, five Nexus 7’s, one Bluetooth keyboard and it was running our system. And
what we wanted to know was well; first, would they use all of these devices? Would they
actually make use of having multiple devices?
Now every user started off the same way. Every participant I mean to say started off the same
way. They had this stack. All of them were running the application that let them see the
contents but they could also switch to a note-taking application, the basic apps that are in
Android; and some of them would start off just reading through the list of documents. But
very, very quickly all eight participants started having a desk that looked like this. And what
they would do is they would scroll through and find a document that they thought was
interesting and then they would physically put that document aside. They’d say okay, I want to
save this one and put it over here. Now they could've used a flagging feature in the application,
put like a little check mark on the document so they could go back to it just like in your e-mail,
didn't use that. Instead they would use the physical piling to say this is one I want to
remember. So they used them. How did they use it? Well, I mentioned that physical piling
behavior before, and we see over and over and over again the participants using spatial
memory to keep track of these documents like they were physical documents.
So what we found in post-interviews, and I'm going to let you go to the paper if you want to see
all the details of the user study, but the point is most of the participants used all 10 tablets and
said they wished they'd have more. Almost no one took handwritten notes although that may
be a function of the fact that they were computer scientists. And people did over and over
again do this physical piling. So if we asked them questions about a document they would
know where it was on the desk. They didn’t even have to open their eyes, right? They wouldn't
even have to look at it. They’d say oh, that's over here.
>>: Did you have [inaudible] they were using [inaudible] desktop [inaudible]. Because I've seen
the same task in one the information [inaudible] and it was the same [inaudible], exactly the
same [inaudible] with so many documents in the other tool which analyzed things for us and
allowed us to bookmark it; and it seemed reasonable for us to do it on a desktop that was like
21 inches. So they didn't need as many tablets. If I feel that it is, this study is sort of like looks
biased towards having multiple devices in front of you and that's why you're using them. You
want more obviously [inaudible].
>> Daniel Wigdor: Because it's a small.
>>: Yeah.
>> Daniel Wigdor: Yeah. So we didn't, but you're right in saying that we replicated the
experiment. So North and his students, who did this experiment originally for very large
screens, gave people a desktop computer and a wall sized display and looked at the differences
in behavior. And we sort of latched onto that as doing another condition. So you want to see
what the baseline was. What North and his, I wish I remembered the name of the student who
was the first author, but Chris North is at Virginia Tech, his, their findings were you can do the
task on a single device, right? If forced to you can do single task on an individual tablet. But
what they found was however much space you gave people they would expand out to use it.
So what was interesting to us about the tablets was we give them more pixels, they want to use
more pixels. That's sort of interesting but I think to be expected. What we were really pleased
by was how they physically arranged things. The fact that they didn't just used more pixels.
They could’ve just put everything in a giant grid and created a larger screen and used it like a
big monitor. But instead they did this physical piling behavior and physical arranging behavior
where the physical position of the device was interesting.
>>: I wonder if the information study, the field study [inaudible]>> Daniel Wigdor: Yeah.
>>: You've found a task which was common enough that you could have replicated that task
with these multiple screens and your application helping them arrange the screens such that
the task would become easier than what they were actually doing. And we started with the
premise that the mental model. [inaudible] was using a device for calculator, [inaudible] device
for calculator and a device for something else. All of the functionality existed in the main
desktop and I could have [inaudible] access.
>> Daniel Wigdor: Sure.
>>: Now I wonder if taking one of those tasks you could have replicated this multiple screen
scenario and could've made that easier somehow and then could've commented saying that
our application made it easier for them to communicate between the device and then solve
that problem.
>> Daniel Wigdor: Sure. We could've done that, but it's trivially obvious that this makes it
easier to communicate information between devices, right? Like just by giving people a
clipboard you make it easier. I don’t need to run a lab site to do that. But there are all sorts of
lab studies that can be run next, and I'm happy to talk to you about it after the talk.
All right. Anthony, I'm sorry, I'm going to have to skip your talk. What this means is you guys
are going to have to ask Anthony to present his best paper and best talk winning presentation
from CHI at some point this summer.
So the last thing I want to talk to you about is how do you actually build these applications? So
if you're a developer I've talked about this vision of being able to write once and run anywhere
on all the available devices. And this guy promised that a long time ago. Java [inaudible] to a
certain degree but we talk about this problem. If you want to develop an application for
Android versus the IOS what is the first problem that you think confronts you and you see
complained about over and over and over again in creating Android applications? It’s one word
and starts with F, but it's not four letters.
>>: Fragmentation.
>> Daniel Wigdor: Fragmentation. You hear this all the time. And what does fragmentation
mean? You sit down with a developer and you say well what is it, Android is fragmented, what
does that mean? Well, it means sometimes the phone is the phone has a 4.3 inch screen and
sometimes it has a 4.6 inch screen. You think that's fragmentation? You want to see
fragmentation try making it run on a watch, glasses, and a phone or a tablet and writing it once.
That's the problem we are trying to solve, this fragmentation of the number of devices.
So how do we do it? Well, we built something that we call Panelrama. And what Panelrama
allows you to do is to write an application once and run it on all of the available devices
simultaneously. There’s a great video that goes through all of the technical details, I'm going to
give you the two-minute version now so we don't go much over time, but understand that what
it’s intended to do is you write the application and then every time a new device is connected
or a device disconnects it scans the devices that are connected to this Symphony and it
allocates the UI appropriately.
So what does the developer to have to do in order to accomplish this? Three things and then
we do the fourth. They define that the building blocks of the UI, which we call the panels, then
they define the attributes of the panels and the attributes of the devices they want them to
target towards and then it gets optimized. So let me quickly show you that. Here's an example
application. Everyone’s seen this one before. So there's work that's called distributed user
interfaces that has looked at this problem before of how you write an application that will span
devices. What the focus of the Panelrama is is in minimizing the pain of the developer
experience. So if you could write a normal HTML 5 application then you can write a Panelrama
application with very minimal modification.
So here's an existing one. And you say I want to divide this up into panels. So what are the
panels? Well, you look at it and you say well, the playback controls are a bunch of individual UI
elements but clearly they belong on the same device, right? The play and the pause button and
the full-screen button all that is going to be together. So you define that as a panel. Next we
would define the video as a panel. Say it's a separate piece. What are the other panels? Well,
this list of related videos. And the nice thing about HTML 5, and I imagine many of you know
how to write stuff in HTML 5, is that this is usually divided up in the DOM already. So we are
not talking about rejiggering your entire application but finding the right branch of the tree.
What are the other components? We've got a comments box and the text that goes in it.
What do we then do? We modeled the attributes. So what does that mean? Well, it means
you say this panel cares about physical size. So I want the video to play on whichever is the
biggest screen in the Symphony at that moment. Next, these controls I care about proximity to
the user, how ready to hands the device is. For this I care about having a good keyboard so that
I can enter text in the comments, and here I care about having a good touch input fine, mouse
input, whatever, but the point is you want to be able to point. And that developer gives a score
for all of these attributes. We did a study where we designer or redesigned existing Android
applications and determined that there were seven physical attributes that would matter the
most in our designs but the developer can define more, for any given panel you give a score to
the attribute that that panel cares about.
Next, the individual devices need to have those attributes modeled. Now fortunately there are
information services that you can subscribe to. They're pretty expensive as a developer, but if
you're writing an application it costs you about 5000 dollars a year to subscribe to this
database. And it can, from the user agent information and other attributes of the device, tell
you not just this is IOS but it can say this is an iPad mini and that it has all the physical
characteristics. So you can subscribe to that database. So using that database we get a score
for each of these physical attributes. So in this particular Symphony at this moment there's a
50 inch TV, a Dell laptop, an iPad, and a Nexus phone. You can see decreasing physical size,
how good is the keyboard, how good is the touch, etc., etc. And then we stick it into a linear
optimization and the linear optimization allocates the different panels to the different device so
you always get the right panel on the right thing.
The panel tag will be the last thing I show you, this is the code, some of the code for a drawing
application. We've got the drawing canvas here. This does not have the panel stuff in it yet,
there's just normal HTML 5. Drawing canvas up here is inside a div, we’ve got the buttons that
change the color palette, red, green, and blue. Pretty basic application. So the developer
would say well, I want to canvas to be in one panel and the controls would be in another panel.
How do they do that? Well, they just add some panel tags and they say this is the palette
panel, that’s the canvas panel, and a little bit of class information that ties it back to the panel
definition. And the panel definition which is here, this is new code that they would have to
write, all they have to provide in addition to sort of the obvious things like giving it a type and a
name are these infinity scores that I showed you before. This is where they would say I care
about big screens, I care about quality of touch input. And we get applications.
[video demo]
Global panel state need not be completely synchronized in this map application. We use the
global map panel to synchronize the local viewports of three tablets, but not the type of map
being displayed, allowing each map panel to provide different information on the same
location. Similarly, a street view application could synchronize the GPS coordinates but not the
viewports making it possible to achieve a panoramic view of the road. Panelrama also allows
this PDF reader to display consecutive pages on additional devices. Synchronization ensures
that all pages flip simultaneously while an unsynchronized device can be used to display a
helpful diagram or a list of citations. Unsynchronized local panels may access the global panel
on demand. In this video player a user uses the push function to broadcast the local video to
the global panel for group viewing. Other users may use the pull function to copy the global
panel contents to their local channels for private interactions.
>> Daniel Wigdor: Okay. The paper has a lot more details on the technical implementation. It
has a lot more details on a developer study that we ran; it was first time I ever had to pay
participants 150 dollars an hour to come be part of a study. That was fun getting that by the
grant people. Anyway, so the nice thing about Panelrama is that a team has spun it out and
they're actually building this as part of a startup operation led by someone named Robert
Levey[phonetic] who is a toolkit architect from Microsoft previously and soon will be available
at a store near you for further use. I don't know why the store would carry it. It will be
available online for you to use for free.
So that's the Symphony of Devices Project. As I’ve said, all of these are much more fleshed out
in the appropriate papers, and here are all the references, and again I apologize Anthony that I
didn't have time to show your work. We had good discussions instead. So thank you for that
contribution. Anyway, so thank you very much.
>>: We have time for a few more questions.
>>: So I didn’t ask before because I think it might be off topic, but very interesting that
experiment because most of us are raised from like, we are train to use paper and pencil,
calculator so that we kind of have the memories that using that way but the new kids may be
growing in the new century they might get used to all these new technologies. What do you
think, like if you replicated the same experiment in about 20 years. What do you think the
result?
>> Daniel Wigdor: Yeah. So there's sort of a nature versus nurture conversation to be had
here, right, of does spatial memory come about from learning and is the physicality that is
associated with it inherently joined with spatial memory, or can you have all of the same sense
but entirely virtually? So if a baby was born and you put a VR helmet on them and the way that
they point of things is with their eyes and they never use their arms would they be just as good
at being able to find things quickly? And to Ken's point not interrupt the task that they're
doing. My intuition, despite the fact that it’s the exact opposite thesis of the book that I wrote
while I worked here, is that there really are inherent properties in psychology that we have to
tap into. This is not an original idea in HCI. We borrow from psych all of the time and there's a
lot of really good work on spatial memory that we draw from.
I think the perennial project that I would think of when I think about what is the virtual version
of spatial memory is probably Data Mountain which was something that was done here a long
time ago. Not that long ago. 20 years ago, give or take? And it’s sort of the virtual version of
all of this. So would people be just as happy with the Data Mountain as they would be with all
of these physical devices? I don't know the answer to that question, but I think that's worth
answering.
>>: So following on that,I don't know the answer either>> Daniel Wigdor: Yes.
>>: But if, let's say that they developed a new device that would enable you to detect how far it
is to other planes that are flying near you. Would a pilot rather that on their phone or would
they rather have it as another panel on this physical control panel that’s one panel that doesn't
move? And I think we know that for that one they would rather have it up there. Now the pilot
may not control the entertainment system, but if they did then they might prefer to have the
entertainment system controls in their pocket.
>> Daniel Wigdor: Right.
>>: So I think that the point here is that I think it's pretty complex space and it's probably not all
or none and it’s going to be based on the different tasks involves in the context. So I think that
these are really interesting questions. And I think the Windows Management System clearly
pushes us in certain directions, and so if we did have a better one it could change sort of the
balance.
>> Daniel Wigdor: I think that's true. And I think one of the works that any student who comes
on the Symphony Project, they have a stack of papers they have to read, and one of is your
multi-monitor work. And one of the conclusions I'll tell you, in case you don't know, is that two
monitors is not the same as one monitor of the same size. And yes, it's about the Window
Manager and the way Windows treats that and when you hit the maximize button what does it
do to the different screens?
>>: 15 years ago we didn't have as many devices, but I did see cases people would have the first
smart phone or other devices on their desk just showing their calendar, for example, so>> Daniel Wigdor: I agree with you. I think it depends on the task. And I think physical,
physicality matters in a couple of ways. One is you want to always know where it is, and you go
into someone's office and you say where is this paper? I actually had to tell my assistant to go
cash a check that I had forgotten to deposit in my office, and she was poring through papers.
Wouldn’t it have been great if she could have just like typed search and hit where’s the check
or known it would be in the right place.
My favorite example of this now is a feature that apparently Land Rover is actually going to
come out with which is people drive these giant cars and the hood is in the way so you can’t see
if you're going to run over someone's dog. So they have the backup cameras because people
don't want to turn the necks; and you see the thing down here, but they've added, Land Rovers
added cameras to the front of the car so you think well, where is that display? They have
registered it and they do it as a heads-up display on the windshield where the hood is so it
looks like you're looking through the hood to the video display of the thing. And what I argue
there is it’s not just about the fact you always know where it is but the fact that it's in the right
place is helpful too and less disruptive to the task. So I think yes, tons of issues that come to
bear on all of this and ripe for plucking at.
>>: I have a technical part of the question.
>> Daniel Wigdor: Okay.
>>: So you some optimization program to determine which screen, which device you use for
certain tasks?
>> Daniel Wigdor: Yes.
>>: Is it running locally on some of the device or it’s on the cloud?
>> Daniel Wigdor: It's running in the cloud. So it's a cloud, so the question was about the linear
optimization function and we base our work on that, by the way, from a fellow who is now at
Harvard named Christophe[phonetic] whose last name I can't pronounce, who did linear
optimization for allocating individual elements and figuring out what type of button should be
shown or should be something else. Is it really that simple? So Christophe Gaios[phonetic].
Anyway so his, anyway backing up, is in the cloud. Yes, it's a cloud service. And then that begs
the question well, what if you're traveling to the US and you live in Canada. You don't have SIM
cards in all your devices. Does this just stop working? That's why I gave the talk as videos
instead of having tablets and actually showing you Panelrama dividing up my actual slide
presentation.
So taking a dependency on the cloud creates user problems that some of us sort of forget which
has become very apparent to me with my SkyDrive set up when I don't have Internet access on
in my tablet when I'm in the States, or on my laptop actually. Anyway, so it's in the cloud, we
need to fix that too.
>>: So I think [inaudible] example kind of along these lines is what's happened to electronic test
equipment, and it's probably not an area that you follow; but in my youth we had all these
analogue scopes [inaudible] generators and network analyzers and stuff like that. And each
separate pieces of equipment with an insane number of knobs and dials for setting everything.
And sometime around maybe the 90s or so all this stuff got converted to visual form. So when
the first digital instruments came out they basically looked like PCs. They had screens with
keywords and people hated them. It was a total failure in the market. And so people went
back to basically embedding the PC in these things and then connecting up knobs and dials and
switches and stuff so it would look like the old instrument.
Now at the same time you started see this market for virtual instruments where you could buy
modules that you would stick in your PC network, the entire scope minus the screen and the
keyboard and the interface, right? And that's caught on to some minor degree. If you walk
through almost any lab that does hardware Microsoft you're going to see physical equipment
and you still see scopes marketed as wow, this scope has a seven inch screen even though it
still has a VGA connector off the backs and it’s just running Android typically inside. So it’s just
a PC; and you can make the argument that wow, this is really dumb. We really should've gone
to this virtual instrument model a long time ago, but people don't like it. They find it much
easier to deal with these physical knobs and dials with separate pieces of equipment replicating
the screens over and over again even though a nice PC would do much better and be far
cheaper.
>> Daniel Wigdor: Right. Yeah, it's apparent to me. And in fact, just because I picked on you
earlier, I had an experience that made me feel very old when a new student came and joined
and wanted to do this, he wanted to extend the Conductor; and the Connector app that Peter
wrote just ran on tablets and other Android devices. He wanted to put it on the watch to start
to do some of the stuff Anthony had done while he was at Autodesk. And so we bought him a
watch, and I don't remember which one it was, and he starts wearing it around everywhere and
trying it out and just also having a smart watch, and then we asked him what do you like most
about the smart watch? And I asked him, do you play music on it? Yeah, kind of. Do you use
this, do you use that? You know what my favorite thing is is that it has the time on it, and I
know I can always just look at my wrist and know what time it is. I was like okay.
>>: Charge it or something.
>> Daniel Wigdor: That's right. I said that to him. I only have to replace the battery in this
every three years. Oh my God.
>>: How much did you have to pay for it?
>>: I feel like you pushed to heterogeneous spaces of the different devices. But it would be
more interesting to push it towards more heterogeneous interactions for [inaudible] sets
because I feel like current examples are mostly based on the pointing>> Daniel Wigdor: Yeah.
>>: So, for example, [inaudible] device [inaudible] then the way the countenance that has been
transmitted from there to here should be [inaudible] then. Maybe it's just for all the users,
developers because developers should care about how to make the countenance interaction
diagnostic [inaudible], and the users should [inaudible] adapt their mindset to different
[inaudible], and the researchers, some researchers are developing new interaction vocabulary.
They should care about the compatibility between the new one and the old one. Should that
be another line of [inaudible] of these devices?
>> Daniel Wigdor: Yes. So I absolutely agree. And so the point, where we started Panelrama
was by saying we're going to divide up the application and then intelligently send the panels to
the right devices. And then a clear natural next step is once the panel gets there what should it
do? Should it just be the same and or should be customized to the input capability? And I’ll
give you two pointers. One is Christophe Gaios[phonetic], whose last name I know how to
pronounce properly, who looked at some of this for mobile devices a long time ago; and then
the other is, in fairness, that was one of the key things from Anthony's project that I didn't have
time to show you, so you should see the paper, where he looked at if you have a watch and a
phone working together what are the right interactions to put on the watch, what are the right
things to do on the phone and how does the sensing capability of each complement each
other?
And so what I think of as the next step for Panelrama, which is the toolkit although the
company is called Conductor just to be really confusing, the next step is to say given this huge
number of interaction vocabularies and all of the great work people do all over the world of
what is the right way to interact with a touch screen when it's a phone, what is the right way to
do accelerometers on a device that has no screen, and having sort of a Rosetta Stone that helps
to translate all of those things sort of like the Google translate I guess of all of this to make the
panels do the right thing when they get there. And I think the choice that we made with
Panelrama which is to say we're going to use HTML 5. And so if you're using a tool like
Bootstrap which is the Twitter UI toolkit that’s become incredibly popular, whatever that can
do to adapt your UI to the different screen we get that for free because you can still use
Bootstrap, I’m using the right word, right? Bootstrap?
>>: Yeah, Bootstrap.
>> Daniel Wigdor: If you're using Bootstrap it will do the right thing when the panel gets there
but it's not enough. It doesn't say you need to point at this list but there isn't a touchscreen on
your watch, but there is an accelerometer so how do you do the right thing? So I one hundred
percent agree it’s the right next step for this project. I wish he would stay and do a PhD, but he
wants to go get a job instead.
>>: All right folks. Let's give another round of applause for Daniel.
>> Daniel Wigdor: Thank you.
Download