Enterprise Playability, Gamification, User Experience

Getting Lost in the Software: Context, Part 1

contextI’m a great driver. Well, I’m a pretty good driver. I’ve had some accidents, but they were all a long time ago. In the last millennium. And that’s like a thousand years.

But that’s not the point. I’m a pretty good driver, but I’m a bad navigator. I get lost. I rely heavily on GPS and Google Maps and Apple Maps and that weird navigation app in my car. I get turned around. I come up over the rise expecting to see the ocean in the distance, but I see downtown.

It seems to happen suddenly. I’m driving along, on streets I know, doing fine. I take a turn one block too early, and end up somewhere new. I don’t panic; I keep driving, looking for a new route back to familiar territory. Then suddenly I realize I have no idea where I am, or even which direction I’m headed.

The story gets boring fast: Google Maps saves the day, and I get back on track. But that’s not the point either.

This is, obviously, all about software. About user experience. About that point we have all gotten to in a UI where we suddenly don’t know where we are, which direction we are headed, or how to get where we want to go. But in software there’s no Mekhi Phifer Google Maps. Well, OK. There is. But that’s not the point.

The point is that people get lost in software. They lose track of where they are, how they got there, and how to get back on track. They push a button, submit a form, click on a menu, and suddenly things change from comfortably familiar to new and confusing. People hate that. I hate that.

It’s all about context. When I’m driving around town I am always — either consciously or unconsciously — looking for familiar things: streets, buildings, hills, lakes, oceans, mountains, Starbucks, whatever. These are my reference points. My context. I know where I am because I recognize that Starbucks. It’s the one without a drive-through. I hate that.

Context, that collection of familiar reference points that keep us from feeling lost, is sadly missing in a lot of software, especially enterprise software. It is often difficult to determine the following:

  • Where you are
  • Where you came from
  • Where you are going
  • How you get there from here

You know you’re lost in the software when you’ve just clicked on something, and suddenly everything familiar has gone away. Maybe a screen popped up in front of the screen you were on. Maybe something on screen disappeared. Or maybe you found your way into a new section of the software, but don’t know how to get back.

So you keep driving. You poke around, you hunt through menus, you even try right-clicking, because then you get what’s called a “context menu,” which should give you context, right? Yeah, no. You quit and restart the software. Sometimes it works, and you find your way. But all the while you’re wondering what happened, and you’re not sure exactly how to avoid it happening again (or what to do next time).

The problem is a lack of context. When there are not familiar reference points, and no indicators of which way to go next, getting lost is inevitable. Software lets you down by not giving you what you need, by not telling you what you need to know. Software could be so much better.

Let’s go off-road for a moment, and talk about video games (because that’s what we do; that’s all we do). Video games have a tendency to get context right. In most games it’s easy to find your way. The sign-posts are clear, the visual queues tell you exactly where you are, and often a game will actually push you in the right direction. Many games even talk you through the hard parts. They’re like Google Maps that way. I love that.

Think about it. How many times have you started a brand new video game, and within minutes or even seconds of starting the game, you can figure the following:

  • This is you
  • That’s your friend
  • You are here
  • Your friend is over there
  • You want to get over there
  • Here’s how you get there

And, while we’re at it, you quickly figure these out, too:

  • Here’s what you have
  • Here’s what you can do with it
  • Here’s what you want to get
  • Here’s what you’ll need to do to get it

In typical enterprise software there is no you, there is no friend (not even a co-worker), and there is rarely any indicator of where you want to go or what you want to do. There is only:

  • Here’s a menu
  • Here’s a widget

So we get lost. We all do, eventually. Not just the pretty good drivers, like me.

But it doesn’t have to be like that. Enterprise software could, in fact, get so much better. The solution is to learn from video games how to show your users where they are, where they want to go, and how to get there from here.

In the next few posts on Enterprise Playability we will discuss how to show your users where they are, where they want to go, and how to get there from here. Some of the ideas will include modern improvements on the breadcrumb trail, knowing where your users are going before they do, and literally installing Google Maps in your software.

Enterprise Playability, User Experience

The Metaphor: Sometimes a Desktop is not a Desktop

METAPHORSoftware is often (though not always) designed using some sort of metaphor to give users some context, something familiar to recognize early on. The idea is that a more familiar interface will lead users to a quicker understanding of the software and what it’s about. The metaphor may also give users the sense of comfort that familiarity is supposed to breed (it is comfort, right?). Examples include the Windows desktop, which is supposed to look and act like a desktop; Excel, which looks like a ledger, or maybe just a pad of graph paper; and the contacts app on my iPhone that looks like an address book (or at least it used to).

The choice a designer makes about how to represent context in software makes a significant difference in usability. A well represented metaphor can give a user a reference point, something to help make software more accessible. Early understanding will come easier. Users see an interface and quickly think “Oh, OK. I get it.”

But as soon as that metaphor breaks down, and the connection to the real world is lost, the user becomes disoriented, and gets lost in the software. Sometimes that happens immediately: the Windows desktop doesn’t look like a desktop, it doesn’t work like a desktop, and the metaphor doesn’t hold. The same can be said for the Mac desktop. Neither is anything like an actual desktop. The metaphor has very little value, and the functionality of these “desktops” is easiest to understand if you just ignore the metaphor altogether.

There are other options. One is to forget about metaphors altogether, and let the software explain itself in other ways. Just make things easy to use, without focusing on holding a possibly tenuous connection to the real world.

This is the approach that Jonathan Ive prefers at Apple, and apparently there was some disagreement between Ive and Steve Jobs about skeumorphism: designing apps to look just like their real-world counterparts. The iPhone contacts app looked like an address book, the notes app looked like lined paper, and the calendar app looked like an expensive, leather-bound, paper calendar. They used to be skeumorphic, but Jobs is gone, and Ive has made some changes.

Eschewing metaphor works well, especially for simple apps on a smartphone. The metaphor can be distracting, or act only as window dressing, without improving usability at all. App designers have no trouble keeping app interfaces simple and easy to understand, without need for a visual link to the outside world.

But honestly, where’s the fun in that? If software takes a more literal approach, and provides a visual representation of the real world, the reference point can be established more deeply. If the connection to the real world can be held, the understanding will hold, too. As long as visual context is consistently represented, software remains accessible, understandable, and ultimately more usable.

Video games balance this equation a bit differently than most enterprise software and productivity apps. Games are often fully representational: they put you in a world that looks and behaves just like the real world. It’s extreme skeumorphism. Actually, it’s just realism. In 3D games you’re fully immersed (or at least somewhat immersed, depending on the quality of the game) in an environment. You interact with representations of things that are designed to look just like those things do in the real (or imaginary or fantasy) world. The more those things look and act like their real or imagined counterparts, the better the experience.

But all the while, video games present players with an added layer of interface, using heads-up displays (HUDs) and menus and mouse, keyboard, and touch interactions. None of those need to be exact representations of the real world. In fact, because the illusion of immersion works better with fewer distractions, HUDs and menus and any other UI elements are often minimal, hidden, or even semi-transparent. They cloud the action, so we keep them out of the way. You see only what you need to see at any given moment.

In video game UI, metaphor doesn’t help. A good HUD is easy to understand, but it does not necessarily correspond to something you might see in the real world. Even the most exceptional HUD proves the rule: in some first-person shooters there is a HUD that looks just like the HUD a soldier might have built into a helmet or goggles. But that’s not a metaphor: it’s an extension of the immersive experience. It’s literal. It’s realism.

Where does this leave us? Skeumorphism is an option. Metaphor is an option. But good UI can be much more efficient, and much easier to learn and use without metaphor, because if there is no metaphor, the UI doesn’t require that the metaphor hold its connection to the real world. The connection doesn’t break down, because there isn’t one. An immersive experience builds the best connection between the user and software, but even in immersive worlds we need UI elements that are not representational and are not metaphorical.

Enterprise Playability, Gamification

Motivation: What Makes Us Feel Good About Our Work?

Dan Ariely’s TED talk is a good one. It’s very straightforward, and gives some good ideas about what motivates people. It can be especially helpful when considering a rewards system within enterprise software. It’s important to think beyond the money that workers (our users) are rewarded with. The challenge is to include things like meaning, creation, challenge, ownership, identity, and pride. That notion — that we need more than just payment as motivation — is at the heart of enterprise playability.

Enterprise Playability, User Experience

Visual Environment

Video games often present players with a very specific, stylized visualization of an environment. That environment gives players a context in which to relate to the game and all of the objects in it. Visual representation and interaction with in-game items keeps players engaged with the game, and draws their focus into the activities they are participating in within the game.

Enterprise software, on the other hand, tends toward the abstract and metaphorical. Enterprise software designers prefer that anything that needs to be presented on screen fit within one of the widgets that are standard in the industry: drop-down lists, text boxes, buttons, data grids, radio buttons, and check boxes. These components make software design easier and faster. Enterprise software is often presented within a loosely defined metaphorical context: the desktop, the document, the worksheet, or the window. The connections between the real-world object and the software are few and generally not helpful. Knowing how to use the real-world object doesn’t help with learning to use the in-software object at all.

To resolve this disconnect between the real world and the user experience, an enterprise software designer can use the same strategy that video games do: Create a world within the software for users to enter. Give users a set of surroundings that are both familiar and helpful. Show them a world like the world they are working in. Users will be far more engaged, and will quickly learn their way around the software. Users’ experience in the real world will help them understand the software.

Enterprise Playability

Your Progress So Far

Progress Indicators

Most games have a constant and clear indicator of how you’re doing so far. If you’re playing capture the flag, you look around at the number of players on your team that are running free vs. captured, and you know immediately which team is winning. If you’re playing Monopoly, you count your money, your properties (mortgaged and otherwise), and your houses and hotels, and you can compare the vastness of your wealth and prosperity to the poor saps around the board.

In video games, you’ve got points, coins, stars, gems, experience, and levels — all to tell you how you’re doing. In multiplayer games, the players are ranked an important score or measure, and they can usually see their progress on that measure in real time while they play.

Game Objectives

Progress indicators tell you how close you are to a goal. Games have goals that tend to be very clear, and very well agreed-upon by the players. The goals are written into the rules of the game. One can’t expect to make much progress in a game of draw poker by working hard to collect only even numbered cards. The goals are clear, and failing to meet them means losing the game.

Often there is room for choosing which goals to meet and what you’ll do to optimize for meeting those goals. In fact video games often offer many paths to reaching the ultimate goal, allowing players to focus on any number of short-term tasks to achieve milestones along the way to achieving higher-level goals. Sometimes those milestones come in the form of resources or items collected, buildings built, or quests completed. Each of the milestones move the player toward an ultimate goal.

Rewards and Achievements

The rewards that games provide to players for making progress vary from game to game. Points are common, and sometimes come in the form of experience points (XP). Other rewards include coins, dollars, stars, gems, chips, and others that fit the context of the game, but provide similar collectable rewards. Players who collect these rewards can use them as a measure of who is winning a game, as a measure of progress toward “leveling up” (reaching explicit measured milestones), or to trade in for valuable in-game items.

Many games feature in-game achievements, which work a whole lot like boy scout badges, and are given out for completing specific tasks during game play. They tend to be awarded for completion of relatively large tasks, and often games offer a way to show off to other game players which achievements a player has completed.

Team Goals

Games also have a built-in mechanism for aligning the goals of a team. Team sports are well suited to this task: players take different roles, but all with the same ultimate goal. Team-based games work the same way, encouraging players to take different roles — and perform them according to role-aligned goals — in support of an ultimate goal that is shared by the entire team.

The massively-multi-player online role-playing game genre has done some impressive work with the idea of team goals. In some games, teams are formed on an ad hoc basis, often to perform a specific task which would be too difficult to perform alone. Players who in general have no interest in helping players around them — and even tend to ignore them — will go out of their way to assist team members, even those who have just joined the team and are completely unfamiliar. Team members will take specialty roles, and rely on other team members to play their roles. And when one team member is struggling, others will immediately step in to help the struggling team member, in an effort to quickly get the team back to an optimal condition for meeting the team’s goal.

With players all working for the same goals, and with clear indicators of each individual’s progress toward those goals — through points, items, or achievements — games keep players  focused on the task at hand and the rewards for meeting goals.