Designing Smart and Clever Applications

Post on 27-Jan-2015

107 views 1 download

Tags:

description

Talk given at Voices That Matter: Web Design in 2009. Although the examples are from web, it is equally (if not more) applicable to desktop, device, and mobile applications as well.

Transcript of Designing Smart and Clever Applications

Average 1999 PCCPU Speed: 200mhzRAM: 32mb (max 256mb)Storage: 3.5gb

Average 2009 PCCPU Speed: 2.3ghzRAM: 1gb (max 4gb)Storage: 160gb

Average 2009 ServerCPU Speed: 2ghzRAM: 8gb (max 128gb)Storage: 73gb (max 1tb)

Our response:K size of websites triple!Layout now 1024 x 768!Ajax! Flash! Flex!

Designing Smart and Clever Applications

Dan Saffer Kicker Studio

Smart (adj.):1. Prevent users from making mistakes.2. Prevent users from working harder

than they need to.3. Do things that are easy for computers

but hard for humans.

1. Prevent mistakes

Poka-YokeEnsure that proper conditions exist before a process begins, preventing problems before they happen.

Error messagesThe system should never present an error message to a user unless the user has done everything right but the system itself cannot respond correctly.

Give users info or tools to fix problems

2. Prevent users from working harder than they need toTake over some (if not all) of the complexity of the task.

Tesler’s Law of the Conservation of Complexity1. In every process, there is some

inherent complexity.2. There is a point beyond which you

cannot simplify a process any further.3. At that point, you can only move the

complexity from place to place.

Find the complexity the system should handle1. Figure out what the core complexity is.2. Figure out what parts of that complexity

users might want control over, and when.

3. Put in those controls (out of the way if possible).

3. Do what humans have trouble doing but computers can do easily:1. Rapidly performing computation.2. Doing several tasks simultaneously.3. Infallibly remembering things.4. Detecting complicated patterns.

Several tasks simultaneously

Clever (adj.):1. Predict the needs of users and then

fulfill those needs in unexpected, but pleasant ways.

2. Create the “Long Wow.”3. Release delight via adaptation.

1. Predicting and fulfilling needs

1. User research2. Product testing3. Data4. Be a really good designer

(heuristic evaluation)

User research

Product/prototype testing

Data

Fixing pain points1. Too many clicks/actions/steps.2. Huh? Why am I doing this?3. What just happened?4. Did anything just happen?5. I can’t find what I’m looking for.6. I don’t know where I am.7. You just did what to my data?8. If I click this, what happens?9. I didn’t see that button.10. What do I do now?

2. The Long WowA means to achieving long-term customer loyalty through systematically impressing your customers again and again.Brandon Schauer

3. Release delight via adaptation

The Glass Wall (BBC)

The rules of adaptation1. Appropriate for context.2. Nothing dumb (meaning un-Smart).3. Value subtlety. 4. Evolve over long periods of time.5. Use what the user is already doing.6. Use what the userS are already doing.7. Look for places to use system memory.8. Do more than is required.

XML, Copy, Graphics

APIs, Functionality, Middleware

Servers, Databases

CSS, AJAX, Controls

RSS, SOAP

What changes?

Use existing user behaviorSettings suck.Forms suck.Beware The Last Mile of Data!

Smart (adj.):1. Prevent users from making mistakes.2. Prevent users from working harder

than they need to.3. Do things that are easy for computers

but hard for humans.

Clever (adj.):1. Predict the needs of users and then

fulfill those needs in unexpected, but pleasant ways.

2. Create the “Long Wow.”3. Release delight via adaptation.

Thanks.dan@kickerstudio.com@odannyboy