Showing posts with label mobile. Show all posts
Showing posts with label mobile. Show all posts

Monday, November 7, 2011

Design for Every Screen

Ever since mobile became really, really cool when the iPhone came out and every designer could happily show off their mobile credentials by having the latest one, there has been an influx of great new ideas accompanied by pithy little catchphrases. I've been somewhere between suspicious and dismissive of many of them, sometimes fairly publicly.

For all the good it does. Here I am mentioned being perceived as agreeing with Mobile First alongside Luke Wroblewski and Scott Jenson, up on stage no less. I never really did.

But lately I've been presenting a bit, and otherwise talking to folks all over the place, and therefore thinking more about many of these topics. First is that I promise I've never just been deliberately contrary, but none of my specific arguments ever stuck that well. And second you should know that I do not just make assumptions, but try to get to root meanings in order to act on information and do my job better. Just check out my work or how long the book is for proof. You can't shut me up when I get on a topic.

I also get tangential. Back on topic, I think that I'm suspicious and not embracing of a lot of these catchprases largely because I have gotten into this field differently than some others. I did art and graphic design from the time I could pick up a pencil, but was engineering-focused from Jr. High onward. I did grant-funded aerospace research in High School. I was the first researcher in the water tunnel at Wichita State University. But when I got to college I sucked at statics & dynamics, and some of the math, so eventually had to leave the program and fell back to art. Learned a lot of good stuff about competitiveness, criticism and understanding design reasoning there, so it was good in the end. I did graphic design work before I even graduated, which immediately (1995) was followed by "can we make a website also" requests from clients. Over a couple jobs I moved from my previous understanding of holistic design to true interaction, human factors, HCI and the emerging fields of UX. I formed teams and we taught ourselves how to be good designers of interactive systems.

So, despite pretty much getting into mobile from the web design side, it always involved data being fed from old systems, terminals for customer care reps, or email, or mailers or magazines. Or often, several of these.

I've been designing for multiple devices forever, since at least the late 1990s. The same stuff in print, CD, TV, web. Envelopes to put the brochure into. Etc. For another currently-cool example, I've been doing little hacks to dynamically resize and reflow content to different browser windows for years – so much so I keep forgetting that it's now called "responsive design."

If you think any one screen, size or channel solves your problems, think again. Netflix has to have a TV UI, sure. But have you noticed the Wii has a browser? Or what if Google TV stops being terrible, or Apple does break into TV in a big way after all? You'll need a 10-foot UI version of your website, and it's no longer just a real big PC monitor; just Monday, a report that console games are the #1 way to get online content to the TV. You might need a TV UI version today. Or yet another app for yet another audience. Technology isn't done growing, and sticking to any one technology is as bad as any other.

I've started calling this – at first somewhat by accident – "design for every screen." As you read on you'll notice it's not quite true, so I admit it's my own clever phrase. But it's closer than a lot of others, so I'll stick with it.

Design for Every Screen

Devices and Channels

Another one of those marketable bits of phrasing from the past year or so was deciding that mobile context is no longer interesting. So I'll admit right off we're closing in on what I always called context. But "mobile context" has itself become saddled with improper assumptions of its meaning. Instead of throwing it away, I think we need to resurrect it.

Partly, because I cannot think of a better word. But also because I've been using the phrase for at least a decade. I went and looked a few weeks ago, and indeed have design documents from 2001 talking about the context of use. These were about the difference between consumers, several types of account managers, and call center employees, each of which had different levels of knowledge, training, etc. For a desktop web interfaces. And some had different use contexts, on the road, in an office, on specific hardware we knew about.

Mobile just added one more context when (around this same timeframe) I started tacking on mobile interfaces to the account management portals. But the then it added dozens. Doctors are not financial analysts, even if they both live by SMS and BBM. The growing variability in use of mobiles made them just like the desktop web. Meaning, lots of them.

Sure, there are some special contexts, because you use them wherever you are, instead of at a workstation of any sort.

And, the variability is bigger than you think. How many touchpoints do you have with a typical service, or company? Paper and ebills, other mailers, websites, and that's all supporting, before I get to the actual service which might be on the web or an app or a set top box. And more all the time: I watch TV on the website for my satellite provider more (when traveling at least) than through the set-top DVR.

Let me get back to some specifics, so we can talk about real products instead pure philosophical arguments. In the mid-2000s, I spent a long time doing a series of billing and account management projects, basically centered around some web portals. But only centered there; lots of other access points existed:

  • Desktop consumer web
  • Mobile web
  • Mobile app
  • Store terminals
  • Call center terminals
  • Call center logging
  • Call center voice communication to the customer (scripts, etc.)
  • Kiosks
  • Printed bills
  • Bill inserts
  • Envelope printing
  • Emails
  • SMS
  • IVR
  • And probably a couple more I forgot.

When I look back at my project files, it turns out most projects I work on are multi-channel, even if not multi-device. If you are just making an app, it's hard to not have a website, optimized for both desktop and mobile. And you better think of how it will look in app store, and how it installs. And... so on.

Design for Every Input

How about design for every input? I spend a lot of time reminding everyone that it's not just touchscreen, but also scroll & select; even lots of touch devices have keyboards and the very large category of messagephones are just 10-key scroll-and-select devices when folded. If you pretend everything is touch only, then your app looks stupid when it won't work right with the keyboard out.

But did you remember other inputs? Take a video sharing service (like some I have worked on). Why make users go to the desktop web or download an app, just to upload? We added MMS and Email services. Send to a specific address, and it goes into your account. And, this worked great. These are popular services. Do I need to remind everyone that Twitter is an SMS-based service? How can you leverage other channels to allow user input?

If you are not following my logic here, it's just an extension of the previous thoughts that everything is slightly more complex than it appears at first. Even if you stick to the desktop, web is just one input/output channel. You send customers emails, and then they can respond. They can call you. They send back bills in paper, no matter how much you wish they wouldn't. This is all part of the experience and you better address it all at the same time.

Design for Every Screen

Generally, when I talk about these principles, everyone agrees. I come away from client meetings with a task to show some multi-channel scenarios, or permission to architect the system with device agnosticism, so we can discover the right channels organically. And that works fine.

But like a lot of my processes, it doesn't work so well when I task others to do the same thing in my stead. I'll even make those basic deliverables, and then move on to another project while just supervising further design development. And it still falls down. So, we need to come up with some methods by which design for every screen can be carried out.

Well, not really. Because they already exist. Pretty much every design methodology will work just fine. Process I have published work fine, but let's go more generic. How about some basic tenents of UCD. If you can find a definition that doesn't get all hung up on a channel (really, Usability.gov only websites need to be designed?) you will find some of the same principles I've been talking about:

  • Audience – Personas, and anything else you can use to determine
  • Purpose – Use scenarios and use cases to understand how the product will be used, what tasks and goals exist, and what features will be helpful to get there.
  • Context – Yup, we're back to contexts of use again. And, you'll see again that context is a fundamental to understanding the use of using any system, not just mobile.

The difference between a lot of practice with these processes, and what I want you to do is two-fold:

  1. All answers are valid – Do not set constraints, or make false assumptions. Let the process lead you to audiences, purposes and contexts you might not have thought of.
  2. Actually follow a design process – This is key. No one does a design process anymore. Even people who gather at monthly meetings to talk about how great process is, read books and chat about it, end up just sketching ideas immediately. And the sketches are in their domain; if you are a web designer you make a desktop website, if you are a mobile designer, you make an iPhone app. Always.

To reiterate: cut it out. Pop open books if you need to, but gather information, answer your basic questions and develop whatever else will help you. Even if quick and dirty I say you should always be putting problem statements, principles of design and personas up on the wall. At the least. And you can do this in about two hours if you need to. It's not something that has to take six weeks, or six months.

Design for Target Experiences:

There's a third facet you'll need to stick to also, but it's less about principles than communicating to clients, so I didn't include it in the list. You may have already figured it out, and are sneering at my rainbows-and-unicorns world where everything we want gets built. In reality, of course, there are time/people/money budgets, and only a few things get built. So, you are still only getting a website

At first. You, as the designer, need to keep saying "the first release will..." and then keep putting up IA diagrams of the target experience. This is a great phrase. Unlike "problem statement" or some other things that cause grief and need euphemisms, "target experience" goes over great for all levels of IT and business folks. We want to be here, but we also know that pragmatically, we can only go this far... today. Keep saying it like that. Be and act realistic about the whole thing and you'll be surprised how much you get snuck in.

And not in an evil sneaky way. "Sneak in" would be one of those phrases you do not use in front of the clients. What I mean is, go back and look at some of those inputs and channels above. Your product will have email, SMS, printed bills, customer care. Or at least a few of these. Nothing is a pure website. So when you design for every screen, you are not surprised by a sudden request to make the email messages not terrible, 3 months after launch. You designed that, along with all the right error messages, and an easy upload scheme, right from the start. If it's getting built anyway (like outbound email), then your design goes in on the first phase.

That is because this also works very well with a lot of product development and software development processes. They like plans. Agile, for example, actually has a backlog of features. You can simply fill up the next 18 months with features, immediately. You are not perceived as annoying and overbearing, but as a go-getter, trying to make the product as good as it can be. The first person to show up with a list of functional requirements (or Stories, or Features, or whatever) has more influence over the final output than is immediately obvious.

Design for Change

Of course, you will learn as you go along. And you will learn you were wrong. User tests, analytics, customer-satisfaction scores, close rates, will all tell the real picture. Your second phase will become less important, and something else pops up, for example. But you will look okay, as you've got a target experience. Which is just a target, you must be willing to shift to the data, and say that out loud.

And, you will not be surprised by this – at least not entirely. Because your multi-channel, IA-based target experience looked at everything. You've at least got a sketch and a set of bullet points. When research comes back with a recommendation that you are years behind the times, and you better do something better than Usable.net for your mobile site, you can pull that out and be helpful and speedy.

As long as you are not "told you" and all arrogant about that. There's a limit to how much you can trust my client-relationship advice.

Implement for Every Screen:

A key gap to getting a good, holistic experience still exists: the gulf of execution. No, not Don Norman’s gap between stimulus and understanding, but the difference between what you give design and what comes out of the development team. I'll come up with a good phrase to replace that, someday.

I know some of you develop their own code, already has a terrific relationship with their developers, or believes your process solves all. I’ve been there and say: Some day it won’t. Even if everything is wonderful, can it be better? Usually. Even if not enough to mess with, find out why it works so you can fix your next company.

For everyone else, there's hope. And not the passive hope that this next development process or corporate reorg fixes everything. They will embrace your principles, which for this stage we can define as:

  • Design holistically – Systems, not pages, not widgets, not buttons. Just like I've been saying, design extensible, system-agnostic architectures, and end-to-end experiences.
  • Develop good objectives – Tie to the enterprise, and the product owner, but develop objectives for the team to embrace, and which can be achieved by them, and by the product you are building today, and tomorrow.
  • Own your design – You can't just put a target design on the wall. You have to believe in what you give to them (without changing your mind halfway through the release), and you have to keep reminding everyone to implement the existing plan with each future release.
  • Get everyone to buy into it – You can't do it alone. Even if it means adjusting or even collaborating get a plan and design everyone can get behind. Not just live with, but actually believe in.

I've developed a few tactics over the years to help with this. Actually, a lot more than this, but these are the key ones. And they aren't a trick or a stretch. The design process I've been talking about, the process you have worked through to get the the implementation stage is very much in line with good software development. All this makes sense to implementation teams.

  • Don’t walk away – Always stick with the project through development, at least making yourself available for questions, rework, changes and testing. Ideally, become integrated into the team, and attend daily meetings, test planning, and so on. Plan on this from the start so your schedule and budget accounts for it.
  • Set goals for everyone – Those business and user goals you should have developed at the beginning of the project must be translated into actual, measurable metrics. Then, try to make sure they get measured. Push for these to be the project level measure of success for the whole organization, instead of cost savings, efficiency of developers, or other internal measures.
  • Make object-oriented designs – Sometimes this is just called “modular re-use,” or other things, as “object oriented” is a larger set of principles (it all originated in development) and might confuse development. But I like the sound of it. The core concept is the same: Instead of designing every detail for every state, and building by state or building hundreds of items to bolt together, a few dozen modules are built and re-used over and over in common templates. Easier on you, and easier on development if they work that way.
  • Practice polymorphism – Sorry, it's another of my troublesome words; this time, not bad, just meaningless to many people. But developers tend to love it. Essentially, variations of objects are still the same object. If there are several variations of an on-screen module you design, make sure you express them as variations of each other so these are clear. This is a polymorphic item. Of course, if there is only one variant (omnimorphism) then that should be explicitly stated as well. Always keep in mind efficiency and re-use.
  • One IA for all – As discussed at great length above, a single IA diagram will give everyone a single, simple concept to hang onto. Enough, that developers will stick it on the wall of their cube. This is the best you can hope for; most developers won't put design objectives or personas on the wall, but this isn't bad.

As I said, there are other tactics and facets to remember, but they start getting pretty detailed again, so are almost a side conversation. Don't forget branding, and to communicate in a single voice. Good design will automatically be accessible, multi-platform and easier to manage and implement. And so on. I suspect if you have a design/implementation tactic, I believe in it also, and just say: don't forget to add it to your checklist, and start thinking about it as early as possible.


I have used a lot of my own experiences above. But those, and the long time I have been in mobile (or doing these other things) is not even important. I have worked with others who had their first mobile experience while I watched, well into the everything-is-a-smartphone era. And if they have a similarly technical background, or a systems-thinking approach, they do just fine approaching the design not as mobile first, but appropriately, bottom-up, and with every interface and interaction the end user needs.

Anyone can, and should be designing for every screen, every input, every device, and every context.

Monday, October 24, 2011

Carnival #253

Carnival!
This week's Carnival of the Mobilists is hosted by global mobile strategist and author Tomi T Ahonen at Communities Dominate Brands. I'm happy to be included again with all the other smart designers, developers and mobile thinkers. The Carnival is a now-monthly collection of the Web’s best writing on mobile and wireless, hosted and collected by a different site each week. If you are already reading our blog, or anything else mobile, you should add this collection to your subscription list as well.
Talking about tracing... Steve and Alison Hoober on their blog have a very useful guide to showing smartphone-related hand gestures in guidebooks and tutorials. They have really put some thinking into it, to make the gestures intuitive and consistent.
Well, in all fairness, the best of these gesture libraries are not ours, but a collection of many others folks'. Be sure to check out the whole list of them, as well as many other Drawing Tools & Templates at the Wiki in support of Designing Mobile Interfaces, which should come out in just the next few weeks. Next week the Carnival has no scheduled host. If you would like to host an upcoming Carnival of the Mobilists, drop Peggy Anne Salz a line.

Saturday, October 22, 2011

Stop that desktop thinking

Since all my employers are east coast, about six months ago I stopped changing my watch every time the plane landed (or took off... I never could decide which) and just leave it on Eastern Time. And I am comfortable with this. I just have a part of me always out there, and then adjust the time in my brain. Not a big deal, really, as I do lots of stuff on 24 hour clocks and am adjusting the readout in my brain anyway.

I also asked a friend who was formerly Air Force special operations, and he said when flying about the world, you just leave your watch to UTC, and know where you are. But that's a watch. It's deliberately an old, mechanical item. Mine is specifically one of those that winds itself as you move about, so as cool as an iPod Shuffle watch would be, I don't have to worry about it failing to synch, running out of batteries, etc.

Okay, now, tell me why my laptop is always set to Eastern Time. Better, why should I have to change it myself through a control panel? Why, if I do change it, do a series of applications yell at me to find out if I want to change the time zone within themselves, separately? I think it's because of something I think I'll declare Desktop Thinking. Desktops are dumb. They are shiny and "easy to use" but are just a few generations from terminals, used to access the unfriendly mainframe, and there's still this same mentality. The user will perform operations, the machine will respond when it feels like it. The user requests information, or to begin a process, and the machine starts doing it. But not a moment beforehand.

Embracing mobile, on the other hand, means you think about information the user needs, you don't ask for information you already have, and you don't throw away anything the customer entered or might need later on (within the constraints of privacy). Google Calendar is one of those tools that (at least on the website) incredulously asks if you want to change the time zone. Apparently, they are of the mindset that changing time zones only accompanies selling your house and moving across the country. Whereas even this typical desktop website, just for one example, takes a stab at determining my position, and defaults the information to that region.

Which brings up, believe it or not, some thoughts on location I touch on in Designing Mobile Interfaces. How do I set my watch, or make sure that my laptop is in the right time zone (or that it's set right with Daylight Saving changes)? More often than not, I consult the clock on my mobile handset, of course. Location only needs to be as accurate as it needs to be. If you want a weather report – or to know what time your meeting starts – there's no reason to turn on the GPS to find out where you are. Very rough location, often just to within a few dozen miles, is just fine. But it needs to be there. Don't disable functions in favor of only offering the highest precision. If an approximation is good enough, or faster, use that.

This is some of the stuff I am talking about when I say that context matters. And when I say that it's not the same as user intent, or user goals, the physical environment, or whatever else you might want to use to replace the notion of "context." I mean that the device should be intelligent. And as much as I like – say – Siri's way of being aware what you just did so the next task is more useful, I want it to do more. Something as simple as knowing what time zone I am in, and reacting appropriately to that is what you might call pre-emptively contextual. And now that I write it, that sounds great. Mobile tends to do this. Sure. But only at the most surface level still.

I think a lot of apps do this just because they get the time from the handset. But I still see Desktop Thinking during web and app development, even on mobile. The user will sign on. The user will pick a link. Even just: once the user clicks our icon and launches the app. And often I ask, why? Why can't we make a widget, or a notification that lets them launch the app when we tell them something neat has happened, or... anything that predicts and offers information at a glance, or helps the user when they didn't even know they needed it? Think about not just your assigned silo, but how your user can get real benefit from the information, intelligence and processing you have available.

Thursday, October 6, 2011

4ourth Mobile is a Thing Now

Long before I had a day job, I freelanced. I did design work when I was in Junior High. Actually, I recall that first paid job (sure, my dad worked there) they weren't happy with the results. Probably worth thinking about more and writing a whole post about how early failures made me the type of conscientious designer I am today. Later. I've made over half my income some years from freelance or contact work, and while it petered out in the past few years, when we all lost our jobs a year ago, making a virtual agency seemed a natural. I've been sorta calling the freelance work I do since then part of the 4ourth Mobile brand, and the Designing Mobile Interfaces book Eric and I are writing has a strong online presence at a wiki under that same site. But I haven't really marketed it in any particular way. Well, now I probably should get on that. Yeah, maybe this is old hat for everyone else, but I've never actually bothered to incorporate anything before. I just faked it, filed a Schedule C and made do. Accountant friends forced my hand here for tax reasons, but really it's a good idea. So, consider this the official announcement: 4ourth Mobile is a thing. Call it a virtual mobile design agency. If you think well of one of our tweets, or blog post, or The Big Book of Mobile Design, contact us. We can do training, or design, or user research, or just chat about your needs and see if our concept of a mobile strategy is the same as yours. We're even multi-national, and can travel, so whatever your needs, ask and we'll talk about it.

Thursday, September 29, 2011

Sample page from Designing Mobile Interfaces

We're all the way to QC1, which means Quality Check, as I get it. I think there's a QC2 in a couple more weeks. It's tedious work, but also thrilling to see it not in Word, or on the web, but actually in a book format. Enjoy: And don't forget to pre-order before it comes out in November. Now 560 pages, but Amazon shows much less than that. I suspect you will not be able to get it for $30 when it comes out.

Wednesday, September 28, 2011

The most interesting thing about the Kindle announcements

I found Amazon's announcement Wednesday to be very interesting. Almost unexpected. And I don't mean the Fire or Silk parts. Or the pricing of the Fire. What I found really interesting was this: Yeah, just the line of new products. But that's it. A whole line of products. A new low-end, improvements to the e-Ink, removal of the keyboard (more on that later). Not just retaining the old models, and maybe lowering the price, just to appeal to cheapskates. You'd think that based on rumor, and pretty much every other review or comment coming up to this, or today.
A key reason I like seeing stuff like this is that it continues to vindicate the scope of Designing Mobile Interfaces. A year ago, when Eric and I started writing it, there was lots of discussion about how much we'd focus on iOS. "Um, not really at all." So, also Android... And Blackberry? No, there are plenty of those sorts of books. We made a mobile design book. For all of mobile. Check out this pattern on Keyboards & Keypads for one example. In there we talk not just about the best way to make a touchscreen keyboard (and we don't just say "do what iOS does" but also hardware keyboards, also keypads and triple tap, and even scroll-and-select virtual keyboards. Wait, why does that sound familiar? Look close. Scroll-and-select keyboard. Really. On a top tech story. Not just because my PVR does it, or my GPS, or I examined a lot of products and it's just a way to do it, not that... Oh, yeah. Because the new low-end Kindle uses that exact system. And why? Hell if I know. I don't work there. I'd guess that they found people don't type as much as expected. And it helps make the price point, and so on. They don't do this stuff randomly.
And that brings up the point you actually care about. If your mobile strategy is to make an iOS app, or you are updating your product to have a color touchscreen, and you abandoned the old way, you are probably doing it wrong. Amazon is not good at everything, but they are pretty good at some stuff. And selling eReaders is one of those. I am not the sort of designer who takes everything Amazon (or Apple) does, and slavishly copies it. But Amazon is a mass-market success story, and with the Kindle they had amazing success with a pretty new class of product, which they are clearly trying to make available to everyone possible. New technology doesn't always have to be expensive, new versions don't have to be cutting edge, and the low-end is a huge market. Are you focusing on the bigger market, or just what you think is cool? If you like everything I said, and think your product needs some thinking like this, maybe we can work together. Go ahead and contact me about it.

Thursday, September 22, 2011

Tiles, Widgets and Icons

Ever since I read Itai Vonshak's tweet about John Dvorak's article on "the serious flaw" with Windows 8, I've been vaguely annoyed by this misunderstanding of how an interface should or could work. Windows 8. Like five of these are icons. The rest are little bits of data. Sorry they are squares, but they are not icons. Windows 8 is, conceptually, at the presentation level, an offshoot of concepts we've first seen in Windows Phone. And Windows Phone (like everything else in the world) has been evaluated (by tech columnists) as a straight-up iPhone competitor. I gather that Dvorak thinks some people sat in a room in Redmond and went "I've got it! We'll make all our icons square, and blue! That'll differentiate it from that darned iPhone. We'll show those meddling kids!" I don't work for Microsoft, and didn't do any work on any of this UI. In fact, before we go further, I don't own one of these, and don't particularly have a warm place in my heart for Microsoft. But fair is fair, and I'm judging this on it's merits, as I see them. As soon as Windows Phone was announced (as I recall, even before we saw images) it was pretty clear that they were taking a quite different, not just putting their spin or skin on the "compete with Apple." I think it's a rather good approach. If you design the system (any system, of any size) to be entirely about running applications, then your application discovery method better be solid. When Dvorak talks about how he recognizes icons, or accuses Microsoft of all but switching to a DOS CLI, this reveals his misunderstanding of how mobile (and some other clever systems) can work. Instead of finding and running apps, you can be served information immediately and contextually. Skipping the bigger discussions of push messaging and contextual surfacing, Windows Phone (and I presume from the images, Windows 8) tiles are widgets (ask me later why this links to "icon"). Widgets, in this context, present little snippets of data, or even useful bits of data next to other bits of data. Immediately. Without having to explicitly launch them. This is Dan's Windows Phone, just as he normally uses it. I asked. He didn't mind me taking a photo, but this data is always in front of him. A life ticker. Aside from generally observing everything I can about mobile, I have a Windows Phone user right next to me at work. I asked him today to demonstrate, and he demonstrated exactly this use of it.
I can just open it up, and look at it, and scroll to get more information. If I need to know who did that, I look to the side and there they are.
And no, he's not a designer, or particularly a mobile guy, and I didn't set his phone up for him. I've never even touched it. Based on many other observations I have made of all sorts of mobile users, a lot of them use their devices this way. You don't drill into the app, or even launch it. You just un-sleep the screen and glance at it. Maybe, just maybe, you have to scroll a little ways. Or, I claim from all these, they want to. I still feel the same way I did about Widgets in 2007 , and increasingly think they are not just a good thing to have available, but a key attribute, and may become (like Windows is now pushing towards) the one best way to get to information. There are other platforms that have widgets. My Android handset is almost entirely widgets, using icons only when there is no good widget. There are related ways to work in this sort of mentality, like WebOS which leaves the application as a sort of widget/tile on the desktop; the set of them changes moment to moment, but they aren't just launched and then disappear when you go to launch another application. Not perfect (or even much alive) but another approach, certainly. I'd talk about Symbian, but that would stretch my "near-death OS examples" to the breaking point. My Droid2Global, with a frankly pretty boring screen of widgets. But still, I can swipe, glance and tell time in a couple places when brain addled. Why swipe, find, click, wait then read? WebOS -- Here, the TouchPad -- minimizes everything running to the desktop as readable tiles. No icon with a marker, then long-press to see what's running... Just glance, and go straight to the one you want. Forcing users to scan a grid of icons is, to me, not just a failure on mobile, but is a demonstrably secondary action in desktop systems. Think of the Applications folder on OSX, or the All Programs link in Windows. This is not the high use case, and is a simple fallback for when you need to get to something obscure, or which you cannot find otherwise. And how to get around this? Search, launch bars, recently-used application lists, and other methods to allow the user to find the most likely applications. With a distinct move towards doing this automatically for users, instead of assuming they will set it up for themselves (because they won't). Someone will probably see this as an assault on iOS. And I am fine with that. Aside from being comfortable with fanbois interpreting everything non-glowing as villainous, this is behavior I have observed; satisfaction does not always correspond to task completion, much less efficiency. And it's not evolutionary. This is a twisting path. A lot of stuff much older than this let you prioritize better than just "what is on the first page of the app listing," like say S60: S60e3 (an N95) with quick access icons, and a quick access button to access an on-screen widget! Darn it, I did mention Symbian after all. Oh, well. But since we're comparing to Apple, let's talk about another common refrain against Windows Phone – that it's over-designed. In the sense that it's designed to look good to executives approving it, to focus groups, or is just a misguided visual designer's wet dream. There are a number of ways in which I disagree with this, and find it to clearly have been well thought out by some pretty clever UX designers and IxDs. The first has even been pointed out by some who dislike it. The device has pretty notable, integrated teasers of additional function or content. Tiles are partly displayed on the edges, animations help communicate what the interface can do. Even that big dead space to the side is about leading you to change panels to the right. Another key one (there is lots of hate) is about the density of information. Those big words bug everyone, because they are not efficient. Compare the number of characters, lines of info or anything else you want to almost any other device and it comes out behind. Or does it? When I think of a lot of the use of mobile, even though context doesn't matter anymore, I see a lot of glanceable use. My co-worker, for example, will regularly use his phone on the way to a meeting. Large text and images as iconic representations helps him use this on the go. I have noted, a lot more than any of the devices I am using. I sometimes have to stop to read where the room is, on my high-density information display. While we're at it, those giant, wasteful black gutters between tiles, they seem to help reduce click errors (and improve confidence of clicking) in all environments. I have seen the design of Windows Phone disparagingly described as being like poster art. Which I say is a good thing. Posters work.
A question I assume many of you will ask is: Why isn't Windows Phone the market share winner? Well, lots of the usual reasons. Marketing, price, distribution, hardware, networks and operators, and so on. By no means does the best device win. Everyone seems to now be comfortable with OSX devices selling in their non-dominant market, so think about that. I'll tell you that a lot of these relatively niche devices (like WebOS or Windows Phone) are beloved by most users of them that I know, or have interviewed for research. They give them up due to unavailability, or lack of key apps or some other aspect outside the core interactive design paradigm. But also, we may be getting there. Android is doing rather well, and if you were inclined to, you could say it's because they support widgets, and this flexibility of layout is at least part of the success. I actually cannot find a useful "reason I chose Android" study to say that, and it's possibly untrue, but everyone else lies about statistics to prove their point. So I say that Android wins because the idle screen is more flexible and can be more mobile-optimized (I actually /do/ talk to end users who say this is why they chose it). And even more importantly, tomorrow is the future. Mobile, more than other technologies, changes all the time. And often in unexpected ways. On Thursday, a new head for HP. Is WebOS on the way back? Or this recent InfoWeek survey of mobile OSs (available at their site, but thru a subscription wall so the link may or may not be good) that shows Windows Phone perceived as just a tidge less useful to the IT professional than iOS. The future doesn't even have to be a variation on what we have today. There are OSs on the market off in other corners of the world you might not have heard of. Speaking of Itai, his Else phone prototype was a shockingly amazing piece of design in every way; I see no reason something that radical cannot make it to market sometime and surprise us all. Or maybe the web will take over, and the device OS won't matter. Or… something else. I have no idea what tomorrow will really bring. But it won't be more grids of icons.
For more on designing widgets, or just making those bog-standard lists and grids the best they can be, check out our forthcoming book Designing Mobile Interfaces. Pre-order from Amazon for a significant discount, or read the content online right now.

Monday, September 12, 2011

Context always matters

It has become fashionable for a few months now to say that mobile is so ubiquitous context doesn't matter. I've even gotten comments from technical editors for the book Designing Mobile Interfaces to this effect. So, I've put some thought into it lately. And it's true, people use their mobile devices at home, in the office, and other "not on the go" types of situations," an awful lot of the time (some surveys: 60%). However, there are a couple problems with saying "context doesn't matter." Because the manner in which people use things /always/ matters. And in fairness, at least few of these folks are in fact referring to the way users always matter, but I argue that this is the exact same thing, and there's no reason to change the way we talk about things. More importantly, the old mobile context discussions never meant just "on the go" in the sense of "on the bus" or "walking down the street" to the exclusion of "in front of the TV."
A key reason I think context is still a good and important thing is that it's not just good and important for mobile. Personas are often the closest we tend to get for desktop design, but if you think hard about these, you'll find that some of yours include contextually-useful information. Library computers are different from laptops, which are different from the desktop at the office. Often, these are critically different in technical manners (work computers often do not allow installing plugins), but very often it's as simple as thinking about the degree of focus someone can pay to the task at hand. I've designed a fair number of desktop apps or websites for Customer Care representatives, or Telecom Managers, or others in specific work environments. Long before I thought about mobile context, I put a lot of thought into context of use in this regard. So, why do we spend so much time talking about context for mobile devices? Because they are even more portable than laptops, they can be carried to crazy places. But mostly because they are full of sensors. You can get a lot more information about individual use of a mobile than a desktop if you have access, and try. Trying is a problem. A lot of mobile sites and apps just do their desktop thing, but smaller. Even if you have made a great game or app or site and it's perfectly usable by tapping on a tiny screen, does it work for the context of use. Sure, sometimes I refer to context the traditional way: does it work in glare or darkness. But think about the Desktops (and if you haven't figured that out, laptops are the same) demand attention. If a common use of mobile handsets and tablets is "in front of the TV," then you probably don't want to be totally sucked into the mobile device. You might even need to be able to interact with others, and react at a reasonable speed to the conversation, or the action on the TV. Same for the dinner table, general chit-chat around the house, gardening, or anything else. When I say mobile must be designed with context in mind, I mean that it has to work with people's lives. In that same introduction section where I refer to context explicitly, I also say:
Lives take precedence Mobiles are contextual, here meaning they are used alongside people's actual lives. Desktops (and some and other devices) can suck people in so you can go ahead and issue alerts that blink in the corner of the screen, and they will be noticed. Mobiles are glanced at, used in gaps between conversation and driving and watching TV. They are even used to enhance these other experiences. So make sure they don't interrupt unless they have to. And if they have to, interrupt in a manner they will notice. A blinking LED, for example, is easily missed when a device is glanced at for a fraction of a second.
Sure, sure, you might still say I focused too much on distraction and driving. But have you see the task switching studies? Even when just on their mobile, users are interrupted by others, by new updates and by new thoughts of their own all the time (this link has some other great context of use numbers as well). Just because the user is not walking down the street or at dinner, doesn't mean they cannot be distracted. If you are not designing to account for distraction and social context, you are putting up do not enter signs for your users. All that said, context of use is only one facet of design. Check out my other seven Principles of Mobile Design. If you like them, or any of the other content up there you can pre-order the book Designing Mobile Interfaces from Amazon, for a pretty significant discount right now.

Wednesday, August 17, 2011

Admissibility & Mobile Networks: Security is a Lot More Than Passwords

I am writing this because of the recent attention to mobile network "security" in the wake of the several phone "hacking" scandals. It probably should have been one of those topics in the appendix of the Designing Mobile Interfaces book, but it's been delivered and O'Reilly is actually asking us to cut the appendix down so the thing is only good for holding doors open, instead of anchoring boats. For now, a blog post will do. Before we get into the details, some basics of security. First of all, security is not about preventing access, because straight-up, 100% prevention of pretty much anything is impossible. Any analogy will do, so take fire safety. You cannot build a fire-proof house. But you follow building codes, put in proper-sized breakers, replace worn power cords, don't keep piles of gasoline-soaked rags in the corner, put the family photos in a firesafe, and everyone is aware of where the exits are. You install smoke detectors. If you don't live in a reasonably dense area, you may want to have a remote alarm system. Together, these provide:
  • Reduction of risk - Do what is reasonable to prevent things catching on fire.
  • Reduction of exposure - If a fire starts, it should not spread too quickly; key systems are hardened or have backups and people can escape.
  • Reduced reaction time to incidents - You or your neighbors notice the screeching and smoke, or the fire department gets notified automatically, so arrives to stop the fire before it is too severe.
This is not just an analogy but is formally considered like this for fire safety, and things like it. The burn-through time for a wall, or fire door is considered in the context of the structure, it's risk of fire, the type of fire, the response of the fire department, etc. Similar actions occur for physical security. Bank vaults are shiny to impress customers but really are only so strong, as they have alarms, guards, are often designed to be seen from the street, and drilling or cutting will be heard. All you have to do is make sure the vault is hard enough to break into that someone will notice, and can react quickly enough to stop the bad guys. Similar things for technical security, for the same reasons. Cost, and ease of day-to-day use. Reasonable locks, storing things in ways that cannot be exploited once the front door is broken (don't store passwords in plaintext), and baking in ways to be aware of breaches so you can fix them. A common one that I like is the out-of-channel notification. You make a liability-inducing (money changes hand) transaction, or access control (change your password) change via the website,and an email is sent out. The website is more likely to have been breached from several thousand miles away, and they probably don't have access to your email account, so you have a chance to notice, and react before much damage is done.
Moving closer to the topic, as I talked about several years ago there's a standard four tier security model that's been used for years and years:
  • Authentication: Who are you?
  • Authorization: What are you allowed to do?
  • Availability: Is the data accessible?
  • Authenticity: Is the data intact?
Which is very nice, and breaks things down well. You can already see that even conflating authentication and authorization is wrong and bad (we won't go into why, but if you are: look it up), and there's more it. That's the key to this post, btw. Security is more than just turning on the password by default, or reducing the session timeout so you enter the (you guessed it) password again. Anyway, Dave Piscitello (an ICANN fellow, security consultant, and generally clever guy) asserts we need a fifth layer. I agree completely, though not everyone does and accepting it at face value has pitfalls, but let's not talk about that yet. Therefore, the kind of thing I do is print this, and stick it on the wall of my cubicle so I don't forget it:
  • Admissibility: Is the host device/channel valid and safe?
  • Authentication: Who are you?
  • Authorization: What are you allowed to do?
  • Availability: Is the data accessible?
  • Authenticity: Is the data intact?
For the most part, admissibility (well, good admissibility) means SSL or something similar. But mobile networks trump everything else. If you are a mobile operator, and the customer is using service on your network (not roaming, etc.) then you (more or less) own the whole experience. Ignore privacy concerns. Say that you are a mobile operator, and the customer wants to check their minutes. They go to your website via their phone. As far as the customer is concerned, full internet connection, go to the world and check a website. But it's not. In fact, your network has to hand off to the internet at some point, and there's a lot of good reasons to check the DNS requests, and send them down different pipes. When a request for your webserver comes in, you just send it across the hall to that box. So far, all that you get from this is reduced network traffic, and reduced latency to the user. But what else you can do is realize that you own the packet from the webserver to the pixels on the screen. You can, for example, identify the user and show basic information without authentication. No cookies required, first time they go there, the MEID (or other handset identifier) is used as the only key (authentication) to give this information (authorization). Sure, sure, someone can gain physical control of the customer's device, maybe temporarily, so you might want to ask for a passcode for liability-inducing actions, like purchases or password changes. But for lower-priority items, for non-sensitive but personalized data, or when out-of-channel notifications can reduce the risk, identification by network and reasonable degrees of authorization are a good and useful thing.
So, let's bring it back to the security of voicemail systems. Voicemail is one of those that's provided by you, the mobile network operator. Since you own the whole chain, front-to-back, a pretty reasonable solution is to require a password (a good one, but that's a different article) for access from the home phone, while roaming or whatever, but just let the user in when they are dialing from inside your network. Exposure seems minimal. It's voicemail, so is a bit cumbersome to use. You have to listen to it, it takes a certain amount of time to do this, or figure out the prompts to forward it, and there's a tiny bit of a trail. If your boyfriend takes a very long shower so you have time to listen to his voicemail, he's still maybe going to notice the MWI (message waiting indicator, indicating new voicemail) has been cleared, and there's no good way to reset it. I see no serious pitfalls here, for /reasonable/ security. Remember, be reasonable. The service has to be easy to use, and most people provide decent physical access control of their devices. I am so confident in this assertion that I'll even admit I have been part of the decisionmaking for an operator to keep doing exactly this.
But we screwed up. No, not in retrospect, or because we mis-weighed the severity of getting into vmail systems. Nope, much more basic. It was an admissibility problem. See, voicemail systems are provided by third parties. And not the same third party that installs the rest of the mobile switchgear. Don't ask why (because I don't know) but they are. Always, as far as I know, but I could be wrong. In at least some cases, maybe most and maybe all, they are also not particularly well integrated. To the point where they might not be housed at the giant corporate data center. And how do they determine when the call comes from inside the network? Well, at least sometimes, by caller ID. I'll let that soak in for anyone who at all is sad they missed the phone phreaking days. Yes, it's trivially easy to spoof caller ID... There, I just took 90 seconds out of writing this, googled some terms, and sent myself an SMS via a spoofing service (cause it was free; I would have had to pay to use the voice calling services). Anyway, huge breakdown in the security chain. The only lesson being: keep asking questions, and get to the people who know how systems really work. Because using your network the right way is among the more neat things that mobiles can do. If you are just some other web or app provider, you can even get agreements with the operators (or others who broker such deals for you) to get some of this same behavior out of your service. The lesson is not: more and longer passwords, as those are eminently crackable, and are pretty unfriendly to enter (more so on mobiles). Use the right security, but use it the right way.

Monday, June 20, 2011

This has all happened before, and it will all happen again

Pretty regularly, I read or read a discussion of how technology is forging new ground, either for good or ill. But either way, it's all new and therefore we have no idea how it will turn out, etc. Except far too often that's not true. Maybe I look at things too broadly (e.g. I think bound paper things are relatively interactive), but I see lots and lots and lots of parallels throughout history. One example that has stuck with me is the development of the spreadsheet (like Excel, but it very much wasn't the first one). There are a number of pundits that say not just that VisiCalc was the first killer app, but that it was developed from whole cloth. Nothing existed like it before. Except it did. Go look up how to use a ledger book. They're not even like slide rules or abacuses (abacaii?) and are still sold at, based on the variety, a pretty good clip. Another is the ongoing discussion of the future of news media. The old-school reporting staff and well-curated model is, well, old and traditional. What ever will happen to us when this all new world of information gathered from anyone who wants to write up their version of events, from eyewitnesses, and so on? Well, maybe the same thing that happened in the early days of papers, when that's just where the content came from. They'd just print letters on the front page, and often multiple conflicting accounts with no overview or attempt to rectify it. What will the whole world be like when it's nothing but aggregators of individual articles like this?
And I'm not even just being a naysayer here. You can learn valuable lessons from these history lessons. Spreadsheets were designed to be computerized ledgers, adding a few shortcuts to increase accuracy and efficiency like calculation. But that has empowered them to be even more capable, in ways that could not have been predicted. News in the old days More recently, I've been reading this history of the development of the Mac and considering how they came to these decisions on UI which we now see as being fundamental truths. And I often like to re-visit the early history of computing (later chapters are not as good) to remind myself of the difficulties they had in creating computers in the face of tabulating machines. You did know tabulating machines were not computers, right? If not, get out and read some more. There's all sorts of good history out there, that tells you why things are the way they are, and which you can put to use when making design decisions about contemporary interactive products.
Now, back to writing my own -- hopefully sufficiently short and comprehendible -- history and explanation of the basics of mobile telephony as an appendix to the forthcoming book on Designing Mobile Interfaces.

Monday, May 30, 2011

Learning user-centric behaviors from appliances

Our new dryer is quite new-fangled. Full of buttons and lights and displays and, so it says, sensors. It seems to be true. It dries the clothes to the proper moisture level, then stops. And, of course, beeps at us. A bit unpleasantly, I must say. But what's really interesting is that this is not the end of what it does. If you don't pay attention to it, it'll start spinning periodically again. So the clothes stay all fluffy and any residual dampness is not sitting there festering. And yes, it reminds you occasionally (by beeping) that it's still done, and please why won't you come get the clothes out? Sensors? Reminders? Even without the excessively-ubiquitous touchscreen, this reminds me a lot about interaction in the way I am always thinking about it. While there's no exact equivalent, let's compare to generalized reminders. Alarm clocks are the dumbest of dumb. I have a really nice Sony one with quite sensible controls to set it, and have had hotel rooms with the giant LCD versions of the same. Still dumb as a box of rocks. They will beep all day if you let them, which seems clearly stupid. Anyone who doesn't wake up in a minute or two isn't going to. If you come up with cases where you're in another room briefly, and have to be reminded that the alarm has gone off, sure that's true. But constant beeping? Mobiles try a little harder. They (generally) use network time servers to know what time it is, for starters, including daylight saving and time zone adjustments. Alarms of most any sort (and this is all for dumbphones, and not even very new) beep, but not constantly. They do keep beeping, and all too often they beep the same way as new emails, new SMS, etc. Alarm fatigue is common, so you run the risk of missing that it's time to go to the airport and fly home. Dismissing alarms is too easy, so often becomes the default "silence" behavior, and by the time any other activity is completed, you have forgotten about that reminder. Desktops are generally worse than this. They are mostly not even aware if the sound is muted, and certainly have no control, so do a terrible job alerting. Most reminders I see require you to set a snooze time, so just sit there as a little window, minding themselves, and not doing a good job reminding you. It's easy to walk away from them.
Mobile, especially, can improve a lot. Their sensors, and control over the hardware, can be used in a much more user-centric manner. For all applications, and services, but notifications serves as a nice exemplar. Alarm Fatigue - Don't use the same beep or buzz for every alarm. And don't just leave that up to the end user; most will leave the device in factory configuration, so it needs to come all set up with this sort of useful customization. Often, you can get away with simply "different" instead of worrying about specifically emotive tones. High priority items can use a rarely-made sound, as long as it can be localized to the user's device well, to attract attention when it might otherwise be dismissed. In some cases, a voice notification is better than a simple tone, though be conscious of privacy concerns. Dismiss or Silence - And alerts will be dismissed. Between messages, emails and alarms, handsets demand attention dozens of times an hour. Often, you just want it to be quiet for a bit. Alarm silencing, and traditional (one click) sooze functions should be at least as easy as dismissing the alarm entirely. Key-only functions (or locked-screen gestures) should silence, not dismiss. Then when you can look at the device again, you will be reminded of the notification. Reminding of Reminders - Other sorts of solutions can -- and should -- be developed to solve these sorts of problems, not just by applying patterns and heuristics, but by thinking entirely outside the box. Myself, I think about solutions like using accelerometers and checking your calendar. If you dismissed an alarm while in a scheduled meeting, then the phone was set down for a while, the device could easily surmise that you may have forgotten about that alarm you dismissed. It could then remind you a few minutes after you get up and start moving again.
While many of my appliances and consumer electronics are stupid, I am regularly surprised at how good the results of a well-focused effort can be. While systems of design, holistic views, principles and patterns are needed, remember that each app, service or bit of functionality is it's own little entity also. Satisfaction, and even delight can come from anywhere, even boring little things like an alarm. For more on getting to new design, and not just falling into the heuristic solution, see me next week at the Float Mobile Learning Symposium.

Friday, May 20, 2011

This is what I sound like griping about pixels vs. boxes

For those few who have forgotten to remove me from your feed list, the absence has been totally worth it. Writing (half of) a 460 page book on mobile design was very interesting, and hopefully will be something important and helpful to you all. Buy a copy when it comes out, presumably in a few months. Last year I was on a panel with, among other people, Luke Wroblewski. He was "defending" his then-new concept of mobile first. I was supposed to be the naysayer. But it takes me a while to warm up to people and be abrasive, harsh and disagreeable, so I ended up looking like I agreed with him. Everyone else did, so it was a rather boring panel. We're sorry it wasn't exciting. I did agree with the principles – which I'll get to eventually – but I didn't fully understand how much, or even really why I disagreed with the practice at the time. At the time, I thought I had a nice cynicism baked in, but in fact I'd worked in or with organizations that more or less bought into the concept of UX practitioners and let us do our jobs. Some encouraged it. Since then, I've had to leave that job, and as it turns out that whole world. Not the design world, but the happy design world. Before I go further, I should mention to anyone who works with me, you may or may not know what I am talking about. I have a day job which is separate from my freelance clients, who don't know each other. Though it probably decreases my ability to network and sell, I respect client wishes and do not generally even imply who I am working for. I also have friends, and keep track of former co-workers, and talk to others about their new jobs. And with the writing I have been very much keeping up on the world of mobile (and other interactive) design. So if this sounds like you, and you are offended, there's probably someone worse, or at least it's a composite. Don't get in a huff about it.

It's like I never left

I'll hope we can all agree that the end goal is good, useful design for the end-user, and the way they work. But from there it all falls apart. Let's get right to the heart of the matter. A lot of people use this as the basic unit of design, for all interactive work: a pixel I see it used by those who distribute involved raster PSD templates for designing on a specific device, or write up long explanations of how to use Fireworks for mobile design, or who push or promulgate pithy catchphrases like "mobile first," (or "CLI first") really. They often routinely conflate interaction and interface design, or just call themselves "designers" without distinction. Many work at companies who hire designer/developers, or cannot fathom what a designer does if not also writing code, or at least prototyping everything, as soon as possible. Yes, I am enough of a taxonomist to know that generalizing results in generalizations. I don't much care about individual cases. But if you want to talk specifics, I have seen at least three well-meaning, otherwise mostly-useful repositories of information refer to 44 px as the right touch target size this year. If you are not horrified by that, turn in your HCI credentials. You may have noticed that people cannot be measured in pixels. So it was dumb a couple years ago when there were too many Apple fanboi designers. But now even iOS has multiple resolutions. Saying "44 px" without caveat, in 2011, should be tried in the International Criminal Courts at the Hague. It all reminds me of 1999. That's when I started seriously – in front of clients – rejecting the concept of the "page fold" in web design. By way back then even the desktop was becoming too fluid or fragmented to pick a screen size for everyone that was the same. Anyone who starts with a single resolution for mobile is fooling themselves, and wasting opportunities. Without over-emphasizing the point, designing in pixels is dumb. Anything that reinforces or just trys to improve designing in pixels is also dumb. Note that I didn't say we don't need Photoshop. It's open alongside InDesign all day, every day. And I in no way said we don't need visual or graphic designers; I have an art degree, and have won awards for digital art and illustration, but it's not my day job today, and I need that sort of designer to collaborate with. I said "designing in pixels" is bad. Don't over-reach and miss the point.

So, what's your point?

My basic element of design is this: a box I like words also. If I can get them, well-formatted bullet lists are nice, but if I have to just boxes and words will do nicely. Two pixels together are two pixels. But two boxes together are nested. or adjacent, or overlapping. They interact. They can move. One can conditionally disappear. two boxes Don't even get me started on the possibilities offer up by three boxes. The mind boggles. What size are they? It doesn't matter. Or: it depends. On rules we don't just assume, or constrain by declaring a resolution, but by determining some what size and what items stay on each page in which position as the design progresses into addressing different platforms, different devices, and different aspect ratios. This is all based on every other type of design or drawing or illustration I have done or learned. You start with basics and move into details. You start with sketches and settle on aspect ratios, orientations and sizes. Details get filled in as it evolves. So few artists start their work at full detail in one corner that it's generally studied as a condition. Whereas I have seen an awful lot of interface designers start by laying down a gradient bar at the top of the page, pick the color and type the title in, then proceed from there.

What catchy phrase can I use to remember this?

My mantra would be something like "do your job first." Yeah. I am not that great at catchphrases. But I still believe in it. Don't jump to final designs, and don't jump to even wireframing of any one platform and resolution. Let the process unfold. Analyze existing products. Ask clients and customers, then build goals and objectives. Put Post-Its on the wall, then start drawing. With whiteboard markers, and sharpies. Eventually you get to make boxes and they evolve, and branch to the needed interfaces. Doing it all like this might even help you identify which devices and modes in which it should operate. And remember to design for people first. I once was in a meeting at a Fortune 50, who had hired a respected and well-known design firm to do some interactive design. They brought some "mood boards." That's what they called them, but they were single images just ripped from magazines and blown up. Starting your design by copying the last thing you did, the standard OS template, or the coolest new thing, locks you into that first pretty picture in the same way, and everything will be a variant of it, instead of your own design. Let IAs do IA, let Information Designers design the information, let IxDs design the interaction, and yes let the VizDs do everything they do to assure it's all tied together as a cohesive interface. Respect all the jobs, and don't fall for shortcuts, but do your job first, last, and always.

I wish we had a manifesto

If this strikes you as totally the opposite of the way you work, rest assured I am not just some nutjob screaming in the wilderness. I've worked with or for plenty of others who believe in this. There are whole, large, respected organizations who work like this. Ones you've heard of, and who are too cool to hire me. But we all spend more time doing our work, or arguing with each other to get together and realize our similarities and write up a public, non-proprietary process to get noticed. You, no matter who you are, probably believe at some level also. Ever done a whole design session with just sharpies and Post-Its? Ha! I caught you. Try that for a few more layers of design and see what happens.

You probably shouldn't listen to me

I mentioned up front that I can be abrasive and disagreeable. If you don't think so now, you haven't been reading closely enough. I get along with a lot of people well, but (I have been recently told) not always, not with everyone. Don Draper (and his ilk on every TV show) gets away with a lot more than I can, or you probably can either when selling to the client/patient/judge/etc. The right idea doesn't always win out in the real world, so even if you are ready to join the revolution and start that manifesto, you need your day job still. Be ready to lie to keep the clients. I do this all the time. They want to see the home page, so we make one up, with gradients and icons and banner ads that are better integrated than they'll ever be in reality. Then we ignore it (rarely does anyone keep them around) and get back to developing the design the right way. I am sure some people are bugged by the morality of this, but I certainly think the end user and the end deliverable is still more important than a short-term deliverable. I am willing to stretch the truth a little bit. It's in everyone's best interest.

Sunday, April 17, 2011

Fresh mobile design elements, just in time for Spring!

I almost can't believe it's been almost six months since my last update. I use this file almost every day. Which maybe is why I haven't gotten around to updating. I've been working a lot, working more (freelance in my "spare" time), writing a book for O'Reilly, and editing an entirely other book. When that comes out, I'll also be sharing the file I've used to make all those illustrations. But for now, I've got a few updates all throughout the old, well-used Mobile Design Elements document itself. As always, you can grab these from the same wiki where I'm writing the book, on the Drawing Tools & Templates page, where I also put up every other template, stencil and UI guideline document or link I can find. Remember, it's a wiki, so add your own if you find one. So, like I said, there are little changes all over. Mostly in the small components. But a few highlights: I've added an iPhone 4. Keeping to the resolution scaling didn't work for the doc size, so I had to make it different. Keep in mind. Just noticed I didn't get an annunicator row into the 4... Oh well. Sure, there are lots of places that have iOS device stencils, but if you like mine, now you have one. Compared to the smartphone fanbois, not everyone has this one. A featurephone. Specifically, a convertible one with 10-key one way, and a slide out keyboard. This is in outline mode only right now, but I will probably shade it someday, and will post that as well of course. Speaking of annunciators, I am trying to not just add items, but to organize them. So, all the system status items I could think of (actually, which resulted from research for the relevant section of the book) are now ordered like a typical annunciator row, and options have been added as I encounter them. Be sure to wander around and check out the rest. Pen input bits and pieces. More unscaled handsets for illustration. Lots of little icons and other pieces. A wholly new and fairly complete keyboard section, so you don't have to draw your own for quick comps. And more. Enjoy! Now, off to more writing and drawing.

Tuesday, February 1, 2011

What the iPad is not quite doing (yet)

Every designer I work with seems to think that the iPad is ubiquitous. It's not. No one in my neighborhood has one. My doctor does, but they keep it at home, as the living room convenience device. Of course, something like half the people in the department I work in (as well as my previous co-workers, who I still keep in touch with) have an iPad, Galaxy Tab and/or eReader. Traveling through airports and spending time on planes, I see a lot more of them. And I've started seeing trends.
When the iPad was first rumored in it's final guise, there were numerous comparisons to the Star Trek PADD, or Alan Kay's Dynabook for the more learned and differently-nerdy. These comparisons seemed apt at the time, and I still see them. But watching the use of the various tablety devices, Media Tablets and especially the iPad is not a paper notepad replacement. And it's not apparently even about to be.
Earlier last week, I was in an all hands meeting. About 200 people (and seriously at least 50 have tablets of some sort). Those that were even brought, were in bags, or under chairs. They were with the laptops, as something unsuitable to be used in a meeting. And don't think this means that everyone was paying attention. Most people took notes. They just did it by pulling out a paper notebook or notepad, and writing with pen and paper. Over the rest of the week I kept my head up more, and looked for other behaviors. Indeed, tablets are used in spare moments alone, or in small rooms. They are used a bit as ambient devices, are used to consume content or look things up when the main computer is occupied. A few people here use them as their primary email computer when they come to visit our team room. But they are never kept out during a meeting when the laptops go away. I asked a few people why. Frankly, most of these people are /huge/ Apple fanbois. You can't ask them anything about the device and get a useful response. The first good one was from the person on our team with a Galaxy Tab. She was using it in the meeting... and she was just doing email. She said that typing with the virtual keyboard is too slow to take notes. I reluctantly got a few iPad owners to say the same thing. I had been pulled into that meeting with minimal warning, so didn't have my tablet, or even a notepad. So I took notes on my phone. The hardware keyboard was the killer app here; I have failed to use my previous mobile handset, with an on-screen-only keyboard to do this. But in other meetings I have used my clunky tablet PC to great effect. Handwriting recognition is approaching handwriting speeds, and if you don't live-convert, it's even faster. There's no page flipping, etc. and you just write and draw what you want.
Apple might agree with this assessment. Over the weekend, a patent was found for a stylus for iPads and presumably other capacitive devices they come out with. I think the implementation looks dumb, and maybe is just to get the patent fairy on their side; an inductive tablet pickup (from Wacom could be easily fit behind the screen, and add pressure sensitivity to boot. But I digress. Even Apple has, at least in the back of their head, a concern that the iPad can reach a broader customer base, and be a creation tool, not just the oft-argued consumption tool it seems to be, despite arguments to the contrary.
There also seems to be something about the size and glowing-ness of the iPad that discourages use as attention of the outside world goes up. A fun observation I've made is waiting to board the airplane. There are a lot of people for any single flight, and pretty much all of them have computers, and a lot have tablets. What I'm seeing is:
ConditionIn use or in-hand
No employees at the gateHeadsetsLaptopiPadeReaderMobile-
Gate agent arrives-LaptopiPadeReaderMobile-
Gate agent announces boarding soon--iPadeReaderMobile-
Previous flight is unloading---eReaderMobile-
Waiting for your zone----MobileBoarding pass
Waiting to get your boarding pass scanned-----Boarding pass
No. No one uses paper books or magazines, except on the plane itself. Anyway, there seems to be a general worry that the iPad is too distracting, and too fragile. It gets put away not much after laptops. The relatively fewer Galaxy Tabs and Archos things I see are not much better. They last only another minute and a half. There also /seems/ to be something about the standby nature of eReaders. I never see the idle screens on those; they are pulled out of bags with a page displayed, the people read them, flip pages, continue reading and just shove them away. Not enough data here, but I suspect there's something to be learned with this as well.
So, lest you say I am just anti-Apple (and I do get accused of that when I ask these question), I am not really. I just don't think that any device is perfect, cannot be improved upon, and cannot be competed with. Were I hired to build a media tablet, or software for one, my competition would be Moleskine, and other trendy notebooks. Everything traditional converges to mobile, which then steals it's market share. Everything else is converging into mobile devices, one way or another, so I find it hard to believe that paper is not on our near horizon. The iPad, or Playbook or Xoom or anything else that's not just me-too can easily do a lot of this. I eagerly away the near future.

Wednesday, December 1, 2010

Working Agilely... With Agile? Whatever...

I talk a lot about working with other teams, satisfying the business owners and making sure your work as a designer is consumable by implementation and test. But when I started typing a response to this question on a LinkedIn group, I realized I hadn't really gotten tactical enough in some of it.

The basic question is a good one, I have answered many times internally. "How should UX work within Agile development processes?"

The common refrain from other UXers is to follow Jakob Nielsen's suggestions on the matter. But I find that doesn't work well at all, actually.

I've worked on several dozen (large scale) serious Agile projects and have developed ways to make UX work within them.

First: The IT process gurus they hire are, not to put to fine a point on it, idiots. I have asked such pointed questions of them in kickoffs they were fired and never came back. (Yes, there are also good process guys, and I have actually worked with some to develop the processes below. But process consulting has grown too much in the past 10 years or so and will put anyone through a 2 week course. If you are a process guy who is offended by this you are not a good one, or you'd be annoyed at your many awful colleagues.)

The key problem is that everyone who loves Agile likes to conflate "iterative" and "incremental." Look it up. It's scary. What it means is that a LOT of projects are Agile in name only. They break up development into Sprints, they have their daily Scrum, etc. but the end result and the day to day work is the same as it always was: developers go off, write a piece of code for as long as it takes them, never come back and add to it again, and just toss everything over the wall to the next team. Waterfall in all but name.

But let's assume the process is practiced correctly and is not a bad choice. By the way Agile is practiced even correctly, design is rather left behind. The best that can usually be hoped for is something like this:

You can see Design phase, but they are for software design, and are far too late and constrained for user experience teams to influence the course of the work.

A common retort is to have UX help in the planning phases, and be deeply involved in the iterative design phases, but spend at least half their design time each week working on the next iteration (if iterations are longer than a week, just replace the word “week” as needed).

This is the version where UX gets to do their work 1 iteration ahead. It is clearly wrong. It never works in practice because you end up working on the current and next iteration. Not only is there not nearly enough time to do the work, but it leads to methods (by PM, IT, and you) of solving today's problems, and having no holistic view.

Really its... okay. I’ve done it, with measured success, but it’s not truly satisfactory.

In fact, when I worked previous model and evaluated success (when I talk about whether process works, I mean it; I actually do AARs and run stats on my projects so know when things work or don't), I eventually realized I had a bug in the data. The best part of the results were from the early planning I helped with.

In Agile, two things are pretty solid, from the original planning: the timeline, and the original plan itself. The list of features is completed in week zero, during that planning phase. Many software design documents are completed here, and are almost completely stuck to throughout the process. So, what’s wrong with just adding UX deliverables to this?

As it turns out, a few things. Even there, IT definition processes can get ahead of design and business needs. UX design needs to make their basic plan during the phase before this when business requirements are being developed (and even help make them). Then, additional details of interaction design, fixes, and guidance can be offered throughout the rest of the process.

So I added time to the process! No. I didn't. Agile is not a project plan, it's a development process. There's other work before Agile exists, and I just say you need to get involved up here. Yes, I reframed the question. Tricky, aren't I? Anyway, months earlier is ideal, but I'll take a week if that's all I can get.

Note that I’ve make UXD (and IxD) a whole new bar in the chart. That’s because the holistic view and the work on multiple tracks mean they work more at the PM or business owner level, and work with – but not within – several individual phases, all at the same time.

If you think this will be hard to sell, read up on the process again. If you approach it right, and use their terminology, and offer to help with Sprint 0 deliverable development, you can sneak this in, effectively. You aren't adding anything to the process, but are complying with the original Agile intent much more than by trying to shoehorn UX into each iteration. Process guys will sigh when you introduce yourself as the UX guy, then love that you are just gonna work in their process and not insist they add time or phases.

What about user testing?

Okay, one more thing is that you can still do iterative evaluations and fixes. But not as much as Nielsen's article would have you believe. Agile projects rarely push something usable with every iteration. If you attend the planning meetings, you can figure out which ones are big, can make friends with test and get access to the test site to run people, and try to get some feedback during the project.

What can you do with it? Well, I say not much. If it's more than minor, then you will want to change stuff that is architectural and that's planning or featureset stuff. That's hard to change on a dime (maybe XP can do it, but we're talking Agile). Usually, I just gather the data, analyze it, and only raise issues if they are critical enough I think it's worth arguing for more time. Otherwise, I go to the product owner and make sure we can have a second phase.

The closest this gets to ideal is that there are a handful of phases with unassigned features at the end, and whether it's after the initial launch or not, you can go off, make your revisions, and get them slotted into these last phases with the same team as a rapid maintenance release. This can work, but you have to know the process, and be able to talk the language to make it happen.

And in case you haven't figured that out, if you get in early enough, you can do the normal design process stuff, and take months to do competitive analysis, do needs research, come up with paper designs and A/B test them, or whatever makes you happy.


Regardless of the development process, I say the greatest benefit UX can provide is the moment after the project is a glimmer in the program manager's eye, or when the data comes in that implies a revision/improvement is needed. If integrated well, or engaged at the right time, UX has done a lot of it's work before any IT Dev process has even begun.

And I have successfully done this many, many times.

If those diagrams above are too small, you can get a PDF of them if you'd like.

Thursday, November 25, 2010

The Worst Idea I've Heard of This Year

I've seen some dumb apps, but replacing rarely-used, possibly-emergency paper has got to take the cake:
"It just might be the world's first paperless car: Hyundai Motor America will include an iPad - loaded with a digital version of the thick owner's manual - with the luxury sedan it plans to launch this fall..."
Read the rest of the rather short story. The story continues to say this is "aimed to tap into the hype" over iPads, but wouldn't an actually useful solution be a good idea? Now, I like PDFs, for example. I have several hundred manuals (my hobbies are technical) on my computer. But when I need to make sure I know how to use one in the dark and snow at 1am, I bring a paper copy. Many cars, and I am sure this one, have digital displays built in. Many have mobile links. Providing the manual on this screen (when stopped, or only visible to the passenger) is totally reasonable. I can think of more interesting things than scheduling service appointments, but the concept of connecting to the home office, or otherwise tying to the outside world is solid. This makes me insane, though. It looks precarious as hell, and tell me why on-screen help isn't a better solution? Or, maybe just fixing the interface so you don't need so much help. I wonder how many fatalities this will cause. (Yeah, I noticed they are such boneheads they couldn't even load up a screenshot of the app for the promo shots, either. Just pretend). I'd be fine with going so far as to just dock the hype machine to the car and using COTS hardware like an iPad as the in-car screen. But three years from now, when the car breaks down, and you are trying to figure out the fuse panel in the middle of the night, what are the chances your iPad is charged? Is even in the car? After an accident (when, yes, tow truck operators sometimes need information on how to unlock the transmission) what are the chances that the screen is not smashed? Etc. An owners manual is, apparently, perceived as an extension of the purchase process, and something every person will sit and happily read when they get home. In fact, this is a massive failure of understanding users, use cases and context. In the US, owners manuals are help lines. Referred to like you call customer care when your bill is confusing. And that doesn't exactly scream "free iPad for everyone" to me.

Tuesday, November 16, 2010

21% of the Phones I See Are iPhones

For some time now I've been hearing "everyone I see has an iPhone" from all sorts of folks in the mobile industry. I presume it's some sort of self select error from fanbois. And sadly, it seems almost everyone in the mobile industry is an overbearing fan of the iPhone. To the point that they are constantly surprised by baseline features of pretty much any other phone when I pull one out of my box of phones. And they spend all their time with one iPhone people, marry other iPhone people, and seem to think it's a really simple world. A month ago, an example of those comments that annoyed me was:
"If you watch the phones people display in public, you really see only two in large numbers: iPhone and BlackBerry."
I am sure that can be parsed to be technically true, but I hear a lot of comments along these lines. And with a popular developer mentality of making products for yourself, then your friends, and users who matter will come as they may, I am saddened by this. I have even heard non-technical (not mobile designers or developers, I mean) folks being given crap by their non-technical friends (same definition) for having an "old scool" phone, when it does perfectly good internet, email, etc. It's just not the latest favorite smartphone.
So, I was looking around one day exactly a month ago, and realized I am looking at all sorts of phones in people's hands. So, it's that simple. I started recording them. Every handset I even sorta could identify, I recorded. The methodology I used was:
  • It has to be already visible. No asking everyone in the room to pull out their phones. This gives the observed weighting that everyone seems interested in. There's some "that's what they use" thing that implies everyone else's phones are unimportant. I have actually had conversations where people dismissed sales numbers.
  • I discounted my family, and all work friends. And their immediate families.
  • If it's clearly a phone, it gets recorded. This makes for some vague labels on some of them. I can recognize a half dozen handsets at 100 paces. Others are "flip phone" at all but contact range. So, you'll see some oddly vague data. But this is to avoid my own bias on recognizing phones I have or use or read about all the time.
  • I started to record cameras, music players, etc. It got out of hand. Just let it be known that convergence is not as far as I would have thought. A LOT of people carry other devices, and almost everyone who wants to take photos brings dedicated cameras to events they know are gonna happen. Very, very little cameraphone use at school concerts. A few Kindles observed also, but no other readers, no iPads.
  • No demographics. Partly, to make it easy. I was typing these into my phone while doing other things. Partly because I don't have the capability to bother everyone to fill out a survey. I would worry about my own bias therefore, so didn't gather any.
  • Yes, it's local. Kansas City and nearby areas. If you think we're all rubes, blow me. Go ahead and design for your friends in the bay area, and stop reading now.
  • This is only 72 total devices. Take that as you will.
Some other observations I made, but which were not as well recorded: Every type of phone was seen being approximately equally used for everything. SMS, email, games, video playback, internet searches. On iPhone, Android, Blackberry and every stupid little message phone. More study of this would be nice, but it's even harder to tell what people are doing. This is based on when I could tell. Oh, and fairly few people talking. Less than 10% of the observed phones were seen because someone was talking on them. I didn't record it, but more like under 5%. Very few. Mobiles are typing and looking devices now. The most common type of device is now, by far, the message phone. A cheap, featurephone OS with a QWERTY keyboard. Most slide out. Does this bode anything for the smartphone market or is it a niche? All those smartphones add up, and touch is only slightly behind QWERTY as the most common input method. However, it's more common than anything else by a good margin as the only input method (disregarding a few buttons here and there). Android and iPhone tie for most observed mobile OS devices, but are trounced by featurephones. A lot of people use their flip phones and keyboard message phones, all the time. All the data I used is available for you to mock and laugh at. Or, I guess, add to. If anyone likes this, go ahead and continue the experiment. Vector versions of the charts above can be downloaded as well. I think most of this is clear, but one definition is sort of mine alone. The Message Phone the stupendously common QWERTY device, usually with a slide-out keyboard, and some controls (usually a full 10-key pad) when closed. Sure, other devices and even many smartphones share these features, but for here, I am calling it only featurephones. Note that these are not counting as touch, since it's impossible to tell that at a glance, but some huge percentage of them are indeed touch devices as well. They often are pretty neat, with nice keyboards, good haptic feedback, perfectly good screens, multi-day battery life, etc. Note that iPhone and Android are neck and neck. And message phones slightly outsell those. Hmm... Oh, and check out that last one. Other devices outsells all others. Sure, it's a mishmash, but don't say any one thing is dominant when it's easy to make charts like this. Anyway, as far as validity, I always say that crappy, cheaply-done research that broadly backs serious, heavy research is trustworthy. Nothing here is totally surprising and much hews exactly to known sales or use ratios, so I do tend to believe it. So, what's this all mean? Simple. There are a LOT of devices out there, and people use them. Look at the data and see what is really going on. More importantly, look at real data and make sure you look at your own users, and your analytics the right way. But what if 96% of your traffic is coming from iPhone? Well, I'd be suspicious of the analytics first of all. Seriously, I've seen this way more than once. If you sell anything but iPhone apps and get that sort of traffic, then first be suspicious and make sure you are getting the right information.