Designing Smart and Clever Applications

45

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

Page 1: Designing Smart and Clever Applications
Page 2: Designing Smart and Clever Applications

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

Page 3: Designing Smart and Clever Applications

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

Page 4: Designing Smart and Clever Applications

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

Page 5: Designing Smart and Clever Applications

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

Page 6: Designing Smart and Clever Applications

Designing Smart and Clever Applications

Dan Saffer Kicker Studio

Page 7: Designing Smart and Clever Applications
Page 8: Designing Smart and Clever Applications
Page 9: Designing Smart and Clever Applications
Page 10: Designing Smart and Clever Applications
Page 11: Designing Smart and Clever Applications

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.

Page 12: Designing Smart and Clever Applications

1. Prevent mistakes

Page 13: Designing Smart and Clever Applications

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

Page 14: Designing Smart and Clever Applications

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.

Page 15: Designing Smart and Clever Applications

Give users info or tools to fix problems

Page 16: Designing Smart and Clever Applications

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

Page 17: Designing Smart and Clever Applications

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.

Page 18: Designing Smart and Clever Applications

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).

Page 19: Designing Smart and Clever Applications

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.

Page 20: Designing Smart and Clever Applications
Page 21: Designing Smart and Clever Applications

Several tasks simultaneously

Page 22: Designing Smart and Clever Applications
Page 23: Designing Smart and Clever Applications
Page 24: Designing Smart and Clever Applications

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.

Page 25: Designing Smart and Clever Applications
Page 26: Designing Smart and Clever Applications

1. Predicting and fulfilling needs

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

(heuristic evaluation)

Page 27: Designing Smart and Clever Applications

User research

Page 28: Designing Smart and Clever Applications

Product/prototype testing

Page 29: Designing Smart and Clever Applications

Data

Page 30: Designing Smart and Clever Applications

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?

Page 31: Designing Smart and Clever Applications

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

Page 32: Designing Smart and Clever Applications

3. Release delight via adaptation

Page 33: Designing Smart and Clever Applications

The Glass Wall (BBC)

Page 34: Designing Smart and Clever Applications
Page 35: Designing Smart and Clever Applications

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.

Page 36: Designing Smart and Clever Applications
Page 37: Designing Smart and Clever Applications
Page 38: Designing Smart and Clever Applications

XML, Copy, Graphics

APIs, Functionality, Middleware

Servers, Databases

CSS, AJAX, Controls

RSS, SOAP

What changes?

Page 39: Designing Smart and Clever Applications

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

Page 40: Designing Smart and Clever Applications
Page 41: Designing Smart and Clever Applications
Page 42: Designing Smart and Clever Applications

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.

Page 43: Designing Smart and Clever Applications

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.

Page 44: Designing Smart and Clever Applications
Page 45: Designing Smart and Clever Applications

[email protected]@odannyboy