aboutsummaryrefslogtreecommitdiff
path: root/build/cut-your-forms-in-half/index.html
diff options
context:
space:
mode:
authorBradley Taunt <bt@btxx.org>2024-06-08 13:43:37 -0400
committerBradley Taunt <bt@btxx.org>2024-06-08 13:43:37 -0400
commit16d28628aca9b2d356de31c319f5e7bc0f5b2b02 (patch)
tree11947abb71e38cbe75116871694a44c33d257763 /build/cut-your-forms-in-half/index.html
parentdcfb172704f3afb68a30425029ec834be2883274 (diff)
Remove incorrectly generated files, fix up markdown articles
Diffstat (limited to 'build/cut-your-forms-in-half/index.html')
-rw-r--r--build/cut-your-forms-in-half/index.html19
1 files changed, 2 insertions, 17 deletions
diff --git a/build/cut-your-forms-in-half/index.html b/build/cut-your-forms-in-half/index.html
index 018a6f1..ad04d94 100644
--- a/build/cut-your-forms-in-half/index.html
+++ b/build/cut-your-forms-in-half/index.html
@@ -3,11 +3,12 @@
<head>
<meta charset="utf-8">
<meta name="viewport" content="width=device-width, initial-scale=1">
+ <meta name="color-scheme" content="dark light">
<link rel="icon" href="data:,">
<title>Cut Your Forms in Half</title>
<link href="/atom.xml" type="application/atom+xml" rel="alternate" title="Atom feed for blog posts" />
<link href="/rss.xml" type="application/rss+xml" rel="alternate" title="RSS feed for blog posts" />
-<style>*{box-sizing:border-box;}body{font-family:sans-serif;line-height:1.33;margin:0 auto;max-width:650px;padding:1rem;}img{max-width:100%;}pre{border:1px solid;overflow:auto;padding:5px;}table{text-align:left;width:100%;}.footnotes{font-size:90%;}</style>
+<style>*{box-sizing:border-box;}body{font-family:sans-serif;line-height:1.33;margin:0 auto;max-width:650px;padding:1rem;}blockquote{background:rgba(0,0,0,0.1);border-left:4px solid;padding-left:5px;}img{max-width:100%;}pre{border:1px solid;overflow:auto;padding:5px;}table{text-align:left;width:100%;}.footnotes{font-size:90%;}</style>
</head>
<nav>
@@ -16,51 +17,35 @@
<main>
<h1 id="cut-your-forms-in-half">Cut Your Forms in Half</h1>
-
<p>2019-05-09</p>
-
<p><em>Building web forms can sometimes feel like a boring or daunting task</em>. Don&#8217;t pass this dread on to your users - rip out as many of your form fields as possible.</p>
-
<p>Web forms tend to get a bad rep, mainly because so many horrible design choices are made without the user experience set at the forefront. Often times clients demand that they <strong>need</strong> those twenty input fields or else how will they collect critical information from their users? Normally when I&#8217;m approached with such a statement I simply ask them:</p>
-
<blockquote>
<p>&#8220;How many form fields would you be willing to fill out for an emergency situation?&#8221;</p>
</blockquote>
-
<p>&#8220;My form isn&#8217;t for emergencies though&#8221;, they might reply. In that case ask them why they feel it acceptable to waste their users&#8217; time just because it isn&#8217;t urgent. Time is valuable.</p>
-
<h2 id="fixing-a-form-in-the-wild">Fixing a form in the wild</h2>
-
<p>Let&#8217;s use a real-world form off the <a href="https://www.greatwestlife.com">Great West Life Insurance</a> website as an example (left is original, right is updated):</p>
-
<h3 id="breaking-things-down">Breaking things down</h3>
-
<p>So what exactly have we changed?</p>
-
<ul>
<li>Combined first and last name fields into a single input</li>
<li>Removed the overkill &#8220;retype&#8221; email &#38; password field (with the optional <code>show password</code> this becomes redundant)</li>
<li>Minor position changes for optional subscription sign up and input field descriptions</li>
<li>Removed <code>recovery email</code>
-
<ul>
<li>This is something that should be prompted to the user after successful registration - don&#8217;t bog them down before they even sign up</li>
</ul></li>
</ul>
-
<h2 id="helpful-micro-improvements">Helpful Micro improvements</h2>
-
<p>You don&#8217;t need to be extreme when gutting form fields - just be practical.</p>
-
<ul>
<li>Don&#8217;t use &#8220;first&#8221; and &#8220;last&#8221; names as separate inputs, instead use something like &#8220;Full Name&#8221;</li>
<li>Make complex questions use preset answers via <code>checkbox</code> or <code>radio</code> inputs</li>
<li>Avoid <code>select</code> items whenever possible (these are clunky and most times unnecessary)</li>
<li>Include easy to understand, real-time error prompts</li>
</ul>
-
<h2 id="further-reading">Further reading</h2>
-
<ul>
<li>Great place to deep-dive into UX form design: <a href="https://uxmovement.com/category/forms/">UX Movement</a></li>
</ul>