38
1 DESIGN PATTERNS DEFINING AND SHARING WEB DESIGN LANGUAGES LUKE WROBLEWSKI SOUTH BY SOUTHWEST, 2007

Design Patterns Lw

Embed Size (px)

DESCRIPTION

Good introduction to the idea of a design pattern language by Luke Wroblewski.

Citation preview

Page 1: Design Patterns Lw

1

DESIGN PATTERNSDEFINING AND SHARING WEB DESIGNLANGUAGES

LUKE WROBLEWSKISOUTH BY SOUTHWEST, 2007

Page 2: Design Patterns Lw

2

Luke Wroblewski

Yahoo! Inc.• Principal Designer, Social Media

LukeW Interface Designs• Principal & Founder• Product design & strategy services

Author• Site-Seeing: A Visual Approach to Web Usability

(Wiley & Sons)• Functioning Form: Web applications, product

strategy, & interface design articlesPreviously

• eBay Inc., Lead Designer• University of Illinois, Instructor• NCSA, Senior Designer

http://www.lukew.com

Page 3: Design Patterns Lw

3

WHY DESIGNPATTERNS?

SHARED LANGUAGE

PATTERNRECOGNITION

Page 4: Design Patterns Lw

4

Design Patterns Conversation

Bill ScottFormer Curator, Yahoo!Design Pattern Library

Jenifer TidwellAuthor, Designing InterfacesCurator, UI Patterns andTechniques

Martijn van WelieCurator, Patterns inInteraction Design

James ReffellFormer Curator, eBayPattern Engine

http://www.lukew.com/ff/entry.asp?347

Luke WroblewskiArchitect, eBay PatternEngine

Page 5: Design Patterns Lw

5

http://developer.yahoo.com/ypatterns/

Page 6: Design Patterns Lw

6

http://designinginterfaces.com/

Page 7: Design Patterns Lw

7

http://www.welie.com/patterns/

Page 8: Design Patterns Lw

8

eBay Pattern Engine

Page 9: Design Patterns Lw

9

• Repeatable design solutionsto common problems

• Work “positively” forspecific problems in specificcontexts

• Capture best practices thatsolve real user needs

• Between principles &guidelines

• A design vocabulary

WHAT ARE DESIGNPATTERNS?

Page 10: Design Patterns Lw

10

Drag and Drop. Drag and Drop Modules. In Page Editing. In PageCustom Editing. Direct State Editing. Grid Cell Editing. Inline CustomEditing. Inline Tag Editing. Popup Custom Editing. Slide-out Custom

Editing. Inline Text Editing. Persistent Portals. Inline Reordering.Indication. Busy Indication. Cursor Busy. In Context Busy. In ContextProgress. Inline Status. Auto Complete. Balloon Error Tip. Deferred

Content Loading. Dynamic Goal. Narrowing Choices. Refining Search.Live Search. Dynamic Filter. Invitation. Cursor Invitation. Drop

Invitation. Tool Tip Invitation. Hover Invitation. Detail Zoom. OpacityFocus. Configurable Module - Faceplate. Configurable Module - Flip It.

Configurable Module - Inline Configure. Configurable Module - SlideOut Drawer. Slide Out. Flip. Opacity Fade. Endless Scrolling.

Expandable Paging Boundary. Fresh Content. Hover Detail. In PlaceDrill Down. Inline Assistant. Inline Validation. Validate Then Suggest.On Demand Refresh. Periodic Refresh. Resizable Modules. Scrolling

Modules. Auto Save. In Context Tools. Remembered Collection.Remembered Preferences. Auto Form Fill. Rating an Object.

Transition. Brighten Transition. Cross Fade Transition. Dim Transition.Expand Transition. Fade In Transition. Fade Out Transition. Flip

Transition. Move Transition. Self-Healing Transition. CollapseTransition. Slide Transition. Rich Internet Object. Available. Selected.

BILL SCOTT, DESIGNING FOR AJAX

Page 11: Design Patterns Lw

11BILL SCOTT, DESIGNING FOR AJAX

Page 12: Design Patterns Lw

12BILL SCOTT, DESIGNING FOR AJAX

Page 13: Design Patterns Lw

13BILL SCOTT, DESIGNING FOR AJAX

Page 14: Design Patterns Lw

14BILL SCOTT, DESIGNING FOR AJAX

Page 15: Design Patterns Lw

15

SCOPE OF DESIGN PATTERNS

Page 16: Design Patterns Lw

16

SAP PATTERN CONCEPT

http://www.sapdesignguild.org/editions/edition8/patterns.asp

Page 17: Design Patterns Lw

17

Page 18: Design Patterns Lw

18

• Title• Problem (situation)• Use When (constraints)• Solution• Why (rationale)• How (to apply)• Examples• Related Patterns• Accessibility• Code Samples

WHAT’S IN ADESIGN PATTERN?

Gathered from a survey of popular Web design pattern resources: VanDuyne, Landay, Welie, Tidwell, Lasko

Page 19: Design Patterns Lw

19

HOW ARE DESIGNPATTERNS USED?

STYLE GUIDEREPLACEMENTS

SHARING BESTPRACTICES

Page 20: Design Patterns Lw

20

WEB STYLE GUIDES

Page 21: Design Patterns Lw

21

PATTERN LIBRARIES

Page 22: Design Patterns Lw

22

TOO MUCH?

Page 23: Design Patterns Lw

23

DOES IT WORKFOR CLIENTS?

FOCUS ONSOLUTIONS NOTRULES

ENCOURAGES GOODBEHAVIOR

REUSABLE

Page 24: Design Patterns Lw

24

SHARING BEST PRACTICES

Page 25: Design Patterns Lw

25

USER-CENTEREDGOALS

DESIGNCONSTRAINTS

RELATED PATTERNS

FINDING THERIGHT PATTERN…

Page 26: Design Patterns Lw

26

USER-CENTEREDGOALS

DESIGNCONSTRAINTS

RELATED PATTERNS

BILL SCOTT, MIND MAPPING PATTERNS

Page 27: Design Patterns Lw

27

TOP, RIGHT or LEFT ALIGNEDFORM LABELS?

Page 28: Design Patterns Lw

28

Top Aligned Labels

• When data beingcollected is familiar

• Minimize time tocompletion

• Require more verticalspace

• Spacing or contrast isvital to enableefficient scanning

• Flexibility forlocalization andcomplex inputs

Page 29: Design Patterns Lw

29

Top-aligned Labels

eBay Express

Page 30: Design Patterns Lw

30

Right Aligned Labels

• Clear associationbetween label andfield

• Requires less verticalspace

• More difficult to justscan labels due toleft rag

• Fast completiontimes

Page 31: Design Patterns Lw

31

Right-aligned labels

Basecamp, 37Signals

Page 32: Design Patterns Lw

32

Left Aligned Labels

• When data required isunfamiliar

• Enables labelscanning

• Less clear associationbetween label andfield

• Requires less verticalspace

• Changing label lengthmay impair layout

Page 33: Design Patterns Lw

33

Left-aligned labels

Ad Connections

Page 34: Design Patterns Lw

34

Eye-tracking Data

• July 2006 study by MatteoPenzo

• Left-aligned labels• Easily associated labels with

the proper input fields• Excessive distances between

labels inputs forced users totake more time

• Right-aligned labels• Reduced overall number of

fixations by nearly half• Form completion times were

cut nearly in half• Top-aligned labels

• Permitted users to captureboth labels & inputs with asingle eye movement’

• Fastest completion times

Page 35: Design Patterns Lw

35

• For reducedcompletion times &familiar data input: topaligned

• When vertical screenspace is a constraint:right aligned

• For unfamiliar, oradvanced data entry:left aligned

BEST PRACTICE

Page 36: Design Patterns Lw

36

USER• Provide Information:

want to register,make a purchase,etc.

• Finish Quickly:no one likes filling informs

DESIGNER• Maximize completion

rates• Gather known data:

name, address,credit card

• Use a minimumamount of verticalscreen real estate

CONSIDER: RIGHT-ALIGNED LABELS

Page 37: Design Patterns Lw

37

• Design Patterns asWeb Services

• Design Patternsintegrated into toolkits

• Design Pattern LibraryIntegration

IN THE FUTURE…

Page 38: Design Patterns Lw

38

For more information…

• Functioning Form• www.lukew.com/ff/

• Yahoo! Design Patterns• developer.yahoo.com/ypatterns

• Drop me a note• [email protected]