form design - challenges and solutions

20
Form Design – Challenges & Solutions ProjectEric.com Copyright 2009. ProjectEric / Eric E. Ellis. All rights strictly reserved.

Upload: fnkdumplin

Post on 16-May-2015

3.709 views

Category:

Technology


1 download

DESCRIPTION

Online forms suck. Here are a few best practices in 'cookbook' style to make them less sucky. Part of this presentation was used during the 'Designing Our Way Through Web Forms Panel' at SXSW 2009 in Austin, TX.

TRANSCRIPT

Page 1: Form design - challenges and solutions

Form Design – Challenges & Solutions

ProjectEric.com

Copyright 2009. ProjectEric / Eric E. Ellis. All rights strictly reserved.

Page 2: Form design - challenges and solutions

Contents‘Forms suck’ Luke W. – Web Form Design: Filling in the Blanks

Flow, Noise, Expectation, OrderCreate a conversationEngage progressively

Page 3: Form design - challenges and solutions

Expectation

[Managed] Noise

Order

Flow

Page 4: Form design - challenges and solutions

ChallengeWhat should I consider when developing form content?

Conversation, voice. People before pixelsContext

http://patterntap.com/usersets/set/136http://www.huffduffer.com/signup/

Page 5: Form design - challenges and solutions

ChallengeHow do I show users exactly what they need, when they need it?

Form guidanceShow/hide (progressive engagement)Modal layersModeless layers

Page 6: Form design - challenges and solutions

SolutionShow/Hide (progressive engagement)

Page 7: Form design - challenges and solutions

SolutionShow/Hide (progressive engagement) – cont’d.

Page 8: Form design - challenges and solutions

SolutionModeless layers

http://plugins.jquery.com/project/dyndatetimehttp://www.mechanicalmarksy.com/hosted/toolman/dyndatetime/example.html

Page 9: Form design - challenges and solutions

SolutionModal layers

Page 10: Form design - challenges and solutions

SolutionModal layers (cont’d).

http://plugins.jquery.com/project/modaldialoghttp://tautologistics.com/projects/jquery.modaldialog/doc/1.0.0/

Page 11: Form design - challenges and solutions

ChallengeHow do I design forms to better manage ‘choice’?

Ask:What works for most

people?Will the default selection be

clear(er)?Can the choices be

personally relevant?

Page 12: Form design - challenges and solutions

ChallengeHow can I create user-focused form layout?

FlowNoiseExpectationOrder

Page 13: Form design - challenges and solutions

ChallengeHow do I design user-focused validation?

Plan for errors, but don’t forget successes

Inline validationInline

suggestion

Page 14: Form design - challenges and solutions

Try thisPassword strength meter by Daren Mason

Easy to change the validation that the users would see(function($){ $.fn.shortPass = 'Too short';$.fn.badPass = 'Weak';$.fn.goodPass = 'Good';$.fn.strongPass = 'Strong';$.fn.samePassword = 'Username and Password identical.’;$.fn.resultStyle = "";

The math is configurable//password has 3 numbers if (password.match(/(.*[0-9].*[0-9].*[0-9])/)){ score += 5;}

http://plugins.jquery.com/project/pass_strengthhttp://mypocket-technologies.com/jquery/password_strength/ http://edevil.wordpress.com/2005/11/14/javascript-libraries-roundup/ (good comprehensive list of JS libraries)

Page 15: Form design - challenges and solutions

And this tooClient-side validation

<form method="get" class="cmxform" id="form1" action="">

<!-- The form section title --><fieldset><legend>Login Form</legend>

<!-- The username --><p><label>Username</label><input name="user" title="Please enter your username (at least 3 characters)" class="{required:true,minlength:3}" /></p>

<!-- The password --><p><label>Password</label><input type="password" maxlength="12" name="password" title="Please enter your password, between 5 and 12 characters" class="{required:true,minlength:5}" /></p>

<!-- The inline error messaging --><div class="error"></div>

<p><input class="submit" type="submit" value="Login"/></p>

</fieldset></form>

http://plugins.jquery.com/project/validate http://bassistance.de/jquery-plugins/jquery-plugin-validation/

Page 16: Form design - challenges and solutions

QuestionMust I trove through plug-ins to find all my validation solutions?

You don’t have to:qForms JavaScript API

http://www.devx.com/webdev/Article/31695http://www.pengoworks.com/index.cfm?

action=qForms JSValidate (beta)

Strong browser testinghttp://www.jsvalidate.com/demo/

Page 17: Form design - challenges and solutions

QuestionWhy not use client-side validation only?

Security, that’s why notADA ‘back-up’

Page 18: Form design - challenges and solutions

SolutionCombine server-side checks with client-side best practices

Page 19: Form design - challenges and solutions

ChallengeHow do I make JS-based layers, like for bubble help, accessible?

This is especially tricky when using JS-based inline validationARIA standards through the W3C‘WAI-ARIA, the Accessible Rich Internet

Applications Suite, defines a way to make Web content and Web applications more accessible to people with disabilities.’

http://sourceforge.net/projects/fangs/

Page 20: Form design - challenges and solutions

QuestionWhat are common elements in form-building that deserve more attention?

<fieldset>, <legend>, <label>

<fieldset><legend>The name section</legend>

<label for=“firstname”>First name</label><input id=“firstname” type=“text” />

<label for=“lastname”>Last name</label><input id=“lastname” type=“text” />

</fieldset>