|
|
-
This is cool - streaming audio and slides (and video from demos) is up for anyone
to peruse. It's weird hearing my voice, of course (and a bit humbling), but it is
pretty cool to be able to basically review any of the PDC sessions. You can check
it out here.
It takes some time to load a session (I thought it had hung or simply given up) but
it does work! So, give it a try (and some patience).
I know it's been some time (rapidly closing in on a month) since I've posted, but
this is not because I don't care! In fact, I fully expect to think up something worthwhile
to say in the near future. Gotta keep up my reputation and all...
|
-
So, it's been lights out here for the last week - the PDC hit us hard - from meeting
with tons of people, to doing talks and demos, to just trying to find a restaurant,
it was a whirlwind of... well, something. Basically, so much happened and there are
so many stories to tell I simply don't know where to begin.
I did want to update and say, "Hey, I'm still alive!" I'll try and write something
interesting and detailed soon (as is my particular style, with rambling involved).
Feel free to ping me with requests. ;)
That said, I heartily recommend watching the vast blogscape, the news articles and
the many many comments people have made about Longhorn (as well as Whidbey and Yukon)
- it's pretty staggering, and I think over the comings months we'll start to hear
a lot more about what works well, what doesn't, and what we need to do to make you
all very happy. Phew!
|
-
I'm blogging from the Birds of a Feather blogging discussion.
I just wanted to say that.
|
-
I think tonight I'll be going to the Birds of a Feather session, Weblogging:
The Future of Conversational Software. Not sure what it holds in store, but it
looks interesting. If you are blogging the PDC, it's worth attending, I'm sure.
Other random tidbits: Network access got way better later in the
day. Seems they sorted out the kinks. Also, traffic started to improve to the UX Lounge,
but it's clear that we're a) undiscoverable, b) hard to get around and in to talk
to people. That's terrible for user experience, and several folks have been working
to 're-shape' the area. The other thing is we've got a little stand that identifies
the area as "Client." We'll get that fixed tomorrow (we're the Aero folks!).
The sessions were packed today - I spent some time walking around the hallways and
I'm simply impressed. Every single room was packed beyond belief, people standing
inside, people standing outside holding the doors in to watch, and people standing,
sitting, laying around the big screen TVs outside each talk to follow along.
That probably means we've got your attention.
|
-
We're all here, packed into the UX Lounge - somewhere off the main concourse to the
big keynote hall. We've got a big sign that says "Client" - just assume that means
"Aero" and come on down! I should be around the rest of the day, wearing a Longhorn
cap.
So far from the media reports, it looks like the keynotes and demos this morning went
off well - the message is being received, we've got something to talk about - and
now I think everyone is trying to figure out this WinFX thing and what do Avalon,
Indigo and WinFS mean for me? A lot.
I'll post about some other interesting things you may have seen in Bill's talk this
morning - stacks, filters, and so on (this is my particular area of expertise). We'll
see what people have to say.
|
-
We just made it through BillG's keynote and things seem to have come off smoothly.
The team is pretty exhausted - including myself. I'm actually back at the hotel, reading
some blogs about what we just showed - we'll see what people have to say by the end
of the day!
Early comments (such as from Scott Hanselman)
seem to be fairly positive. Maybe we've got something people want. :)
Nap time.
|
-
Of course, there's always a catch. Apparently, the pretty horrendous fires happening
near Los Angeles have caused visibility to basically be zero for the local airports
- making it dangerous for planes to land safely.
I'm sure the attendees on their way or currently on the way are a bit upset by this
setback. We've even got some of our demo folks in the air or on the way - and we're
currently routing around, finding alternate airports, etc... We're hoping all the
attendees will make it, and that we will clear up stuff soon.
In the course of typing this (and calling and answering, IMing and emailing) we've
found some hope - sounds like the FAA is moving folks around and will make stuff fit
together to get the afternoon flights all in on time. Phew! We'll see how things go.
|
-
While we were out with developers for drinks, we ran into Pat
Morita, aka Mr. Miyagi. Not sure
why I thought that was worth mentioning, but I'm taking it as a sign we're going to
have a good week.
|
-
Since I was able to post, it should be clear I made it to LA. Already got some dinner
planned, then meeting some developers later for drinks (let me know if you're interested!).
Supposedly we're even gonna go start setting up tonight - at the very least, spending
all day tomorrow on it. Oh boy.
|
-
I’m writing this entry some 30,000 feet above sea level, having just crossed the border
into
California
. In a little while (well, somewhere around an hour and a half) we’ll descend into
the
Los Angeles
area, where the pilot tells me I can expect 90 degree weather.
Fantastic.
If my battery holds out, I can write a proper entry that may be of further interest
to you folks. I mentioned a while back a post about video gaming and UX, and I think
it’s appropriate to dig into here now. The following is a bit of a rambling set of
thoughts, but it should provide an interesting discussion nonetheless. There’s a lot
more to say, but this will help get the ball rolling.
At the most basic level, videogames are like any other piece of software. They construct
a specific experience for users, have a set of goals and needs, and are built up by
bits of code that have things like semi-colons, parentheses and the odd dollar sign.
They also share a large heritage with the world of Entertainment – movies, books,
and the like. In straddling between the two, videogames give us a great opportunity
to recognize that in fact, what makes them entertaining is part of what makes software
usable and even enjoyable. That’s right: your software experience shares a bunch of
things in common with the latest rap album, art-house flick, or novel.
Now, clearly, that’s not a generality I am going to apply to the networking stack
in Longhorn – but it is something that applies to all my experiences, including the
ones networking exposes. That’s a bit abstract, let’s get to some examples.
I’ve been recently playing my way through the game Splinter
Cell again. One of the things I noticed as I took on the role of Sam Fischer,
super-spy extraordinaire, was how I became physically affected
by my experience. My hands got a little sweaty and my attention was completely on
the game (I missed my wife calling my name!). This is just a bit of software, running
on a bit of hardware, and yet I’m actually having these subconscious reactions to
it. That’s a pretty neat trick.
This isn’t any different than the moment you hold your breath in the big action flick
(“oh my gosh is he going to make it!”) or bust out into tears (“But he loves her!”).
In those cases, it’s all visual and aural (let’s leave the context of theatre out
of the discussion for now, but it matters as well), and in the videogame case we added
in a controller which adds another tactile level of immersion (and in my lucky case,
with force feedback).
The take away is: it’s possible to engage people on an emotional level without having
to actually put them into situations or have it be “real.” I am not actually a super-spy
(as far as you know), yet when I pick up the controller, I am literally playing in
Sam’s world. With software in general, we have this ability. In fact, we already do
affect people in emotional way today.
A simple example should suffice to explain. Ever tried to find some function or feature
in a piece of software you use? You know it’s
there, but you just can’t seem to find it. Maybe they named it something else? Maybe
there’s some system to it you haven’t figured out (“What if I hold down the Control
key?”). It’s frustrating, it’s annoying, and it produces cases of “computer rage.”
People scream at their computer, they make not-so-friendly gestures at it, and generally
unleash their emotions on it (or worse, on someone else – we’re human after all).
That’s software producing an emotional response. It’s not a good response
of course, but it is one, and powerful at that. This alone points out just how much
we can have an affect on users. The challenge is to make that an intentionally produced
reaction (much like reducing an audience to peals of laughter with well-timed comedy)
and a positive one at that.
Ok, so how do videogames fit into this? Videogames help bridge a lot of our understanding
between the world of Entertainment and what we do in software. Let’s take the Splinter
Cell example again. Clearly, as made-up entertainment, it puts you in highly unlikely
and highly unreal situations. At the same time, it creates an atmosphere of tension,
making every move seem meaningful, of drawing the user in and really making them react
to the situation, rather than sit back and think about it critically as some bits
running. (Users typically don’t do this, even when they are working on something and
thinking critically about it).
I believe a big part of this comes from the sandbox model of game play used successfully
in many games – think Splinter Cell and Knights of the
Old
Republic
recently, or Mario64 and its predecessors (even Doom). At a basic level, the model
here is: create an environment for the user where the rules are easy to grasp, failure
is a learning experience and not a dead end, and the environment provides enough interesting
challenges to captivate the player. For those who’ve ever played Mario64, you can
certainly appreciate the first hour you spend jumping and running around before actually
completing any stages – it was that eye-opening and fun.
This applies to software equally. In Windows, we have an environment for users. Putting
aside how successful it is at these things, it is designed to easy to grasp, to have
failure not be an entire dead end, and to provide interesting things to do. Examples
are the task model to help users find tasks and do them (and it’s consistent across
the experience for the most part), the Recycle Bin provides one aspect of making failure
not be a dead end (deleted the file? Just get it back), and those same tasks provide
a set of interesting things to perform (same for the Start Menu).
In each of your applications, you do the same thing. Now, it is a little more complex
obviously than a game with 3 buttons. In fact, the challenge we have in modern software
on PCs is managing the 157 buttons – and balancing that with the sandbox above. But
when I’m in a given application, I have the context of the sandbox that is Windows,
as well as the context of the application itself. This can change depending on the
type of application I’m in and how effective it is. For example, in an editor app,
it tends to be sets of controls around one thing I’m working with – and I generally
expect most of those controls to work the same. When I’m in a navigation-based application,
or perhaps surfing the Web, I have a different set of expectations. The Web, in fact,
is absolutely fantastic at following these rules and applying them – and it’s one
of the reasons, I believe, for it’s continued success – easy to pick up and keep going.
Imagine if every website I went to had 100% different conventions or did not obey
the basic rules about things like links. (Just to digress a minute: this happens a
lot more than I’d like actually. Ever gone to a site then hit the back button and
it doesn’t take you back far enough and so you just reload the same page? How annoying).
So that turned into a bit more on other things we can learn from videogames, but I
want to bring it back to the emotion point. Emotion is a powerful part of who and
what we are as individuals. It’s also a lens through which all experiences we have
are filtered. For example, if you are already in a bad mood and something goes awry
on your computer, you are not going to be a happy camper. At the same time, when you succeed at
doing something on your computer (particularly if it was something you thought might
be difficult), you will be quite pleased with yourself – even proud.
This is nothing new of course. Emotional design in products is a relatively old concept
(if it’s had a few names over the years) and is well practiced by those most experienced
at supporting a particular brand. (We’ll talk another day about how emotional design
can be financially rewarding). But it’s something we generally do poorly in software
– either not recognizing it or not knowing what to do with it.
Videogames come in here. While not all videogames are useful to look at (let’s be
honest, a lot of games suck – but it has nothing to do with the genre), they do generally
show us where software has been used to tell a story (and I mean more than just text
here). This continuum, of piecing together the actions a user does in front of a computer
(or game device) is critical in the general software world as well – it’s how we maintain
and protect the experiences we want to build (and thus the emotions we want to evoke).
Plane has started to descend and they’ve asked me to put all my electronic devices
away – we’ll have to end this for now.
I’ll try and post within the next couple of days some ideas on how to make good experiences
happen, and evoke good emotions. For those at the PDC, I recommend you start by attending
Hillel Cooperman
’s talk, “The
New Windows “Longhorn” User Experience: Get Users to Fall in Love with Your Software”
and visiting the UX Lounge.
I’ll see you there.
|
-
Well, it’s just about time to head to
Los Angeles
. I’m flying out tomorrow, spending Sunday setting up, and getting excited to meet
each and every one of you. Once that happens, the information flow will go from slow,
slow trickle to incredibly fast, rushing river.
My primary goal, aside from getting to meet folks, chatting about user experience
and storage in Longhorn is to get feedback on what we show and talk about – literally,
what are we going to do differently based
on what we hear?
A big part of the PDC is to learn
what is going right. We’re super jazzed
about that and obviously we expect a lot of it is going to be well received. But beyond
that, I really want to know what it is we need to do to belt it out of the park. And
that can mean changing plans – doing something different, doing something new, or
even doing something less. This helps to keep us honest, but also serves to
simply make sure we’re building the absolute best product we can. Therefore I invite
you to make sure we know not only what you think is right about what we
are doing, but also what's wrong!
I promise the blog will get to some more interesting UX-focused posts soon. Maybe
I’ll write something on the plane.
|
-
Jeremy recently blogged about a
discussion we've had that relates to Longhorn, the new storage system, and what my
team has been up to. Of course, since he's so willing to rip me off, feel free
to go read
his post, then come back and report here and we'll just steal all his comments
away. :) I think the topic is worthy of further discussion, so I'll try and put that
into written word at some point. Right now, as you can see from my updates, I'm clearly
very busy.
That said, while Jeremy refers you to CLI323,
make sure you also hit up his PDC
Panel on Thursday (it's worth it - seriously, I'm missing it and I'm a bit annoyed
about that), and even make it to our UX Lounge.
Apparently I'm also at some Ask
the Experts function, something I find highly amusing due to the fact that I am
clearly no expert. I'll be playing at one at the PDC, I guess - but secretly, I hope
to learn just as much from all of you. That is supposed to sound cheesy, really.
Back to the mad rush...
|
-
This will sound incredibly newbie-ish for bloggers out there, but for the first time
I really realized what it meant to have people commenting on my blog - and it compelled
me to reply (and even kicked off some thinking for future posts).
In the immortal words of Neo, "Woa."
|
-
PDC preparation continues to move
into high gear, and the excitement is building. The hype machine, of course, cannot
help but go into overdrive – people are simply so jazzed about this show
(internally and externally) that it’s good we’re going to get it done and over with
soon. I’ve never seen us so jazzed internally about this – the real issue is going
to be the reception we get – will we have enough information, will we get everyone
excited, will people see the basic value of the platform we are building for the industry?
Time will tell, and I’m nervous as heck about it.
Work also continues on preparing slides – the usual you might expect – and we keep
getting asked the same thing: “What 3 points do you want people to walk away with?”
We then have to put that in perspective of each day – “Ok, and how does that stand
out, or resonate with, the other 5 sessions they attend that day” – working out to
some roughly 18 “must-get” bullet points.
Of course, internally we also talk about the different profiles of developers out
there and how we make sure to get on each level (for example, you focus on different
things provided to the hardcore C++ girl versus the VB.NET guy). As a UX person, I
find this incredibly comfortable – I basically get to understand our developers much
better, and then think deeply about how they will perceive what we are doing, and
what’s most valuable. Obviously, that VB.NET guy isn’t going to care much about some
low-level APIs – he’s going to be much more interested in the higher level capabilities
– that help him do his job better, faster and easier. And so on and so forth. What’s
really interesting is then bridging the gap – because we’re all multifaceted, you
even have the developer who’s real strong on networking and likes to dig in deep,
but fundamentally wants the simplest way to build UI – how do we make that happen,
and how do we not just dump them in one silo (i.e., “You are a C++ developer, don’t
look at that other thing.”). The .NET Framework helps us a ton here (with all the
language support) but a key point will be making sure we can intelligently talk to
all these points…
And the best part is, we’ll surely know in real-time as we get feedback in L.A. from
people there, and very likely, the blogs that will be happening daily (even hourly!)
like mine.
I’m very anxious for that in particular, as my blog can become less vague and speculative
(i.e. “gosh I hope you like the PDC”) and much more concrete. I’m also genuinely interested
in talking to the folks who will be there, and posting more discussion based on that.
Time to get back to work.
|
-
I'm such a slacker. I haven't posted in days!
I actually was writing up a post about video games and user experience, but I failed
to post it because of the overall level of pretentiousness. If I can clean that up
to make an actual point I may post it soon.
Paolo Marcucci's session browser for
the PDC seems to have gone RTM over
the weekend (or technically, RTW). He's been dealing with performance issues,
and then made some tradeoffs of footprint vs. load times. I think he's gone the right
way (at least with what he has to work with). Check it out.
Looks like we're coming into the homestretch leading to PDC. Lots of work remaining
to be done on the slides (and lots of scratching of heads and asking, "Well, what
3 things will people take away from this?" and so on) as well as getting demos up
and running to show off. I'm particularly giddy on that point, and I'll actually be
doing one of the demos in the CLI323 talk.
I'm starting to drink the Kool-aid myself - in fact, the only thing I'm not excited
about is Los Angeles, but I'm sure it'll have it's moments too. But here I'll get
to meet tons of developers, talk with folk about our work in Longhorn, and very likely
get a ton of feedback on it. Now, if I can only get some sleep before we get there...
|
|
|
|