<?xml version="1.0" encoding="UTF-8"?>
<rss version="2.0"
	xmlns:content="http://purl.org/rss/1.0/modules/content/"
	xmlns:wfw="http://wellformedweb.org/CommentAPI/"
	xmlns:dc="http://purl.org/dc/elements/1.1/"
	xmlns:atom="http://www.w3.org/2005/Atom"
	xmlns:sy="http://purl.org/rss/1.0/modules/syndication/"
	xmlns:slash="http://purl.org/rss/1.0/modules/slash/"
	>

<channel>
	<title>engfer(s) &#187; Usability</title>
	<atom:link href="http://www.engfers.com/category/usability/feed/" rel="self" type="application/rss+xml" />
	<link>http://www.engfers.com</link>
	<description>» scrumptions blog &#038; code » nothing more, nothing less</description>
	<lastBuildDate>Tue, 06 Oct 2009 21:52:32 +0000</lastBuildDate>
	<language>en</language>
	<sy:updatePeriod>hourly</sy:updatePeriod>
	<sy:updateFrequency>1</sy:updateFrequency>
	<generator>http://wordpress.org/?v=3.0</generator>
		<item>
		<title>On Web Usability: Mouse Cursors and Actionable Page Elements</title>
		<link>http://www.engfers.com/2008/10/09/on-web-usability-mouse-cursors-and-actionable-page-elements/</link>
		<comments>http://www.engfers.com/2008/10/09/on-web-usability-mouse-cursors-and-actionable-page-elements/#comments</comments>
		<pubDate>Thu, 09 Oct 2008 14:51:21 +0000</pubDate>
		<dc:creator>engfer</dc:creator>
				<category><![CDATA[Usability]]></category>

		<guid isPermaLink="false">http://www.engfers.com/?p=505</guid>
		<description><![CDATA[Whether we realize it or not, the displayed cursor image tells us about the area of the screen below our mouse cursor; it tells us whether or not we need to click, drag, move, resize, or even wait.  Now, I know that we all know this, but I believe that sometimes as developers (especially web [...]]]></description>
			<content:encoded><![CDATA[<p style="text-align: center;"><img class="size-full wp-image-509 aligncenter" title="Different cursors mean different things..." src="http://www.engfers.com/wp-content/uploads/2008/09/actions.png" alt="" width="413" height="102" /></p>
<p>Whether we realize it or not, the displayed cursor image tells us about the area of the screen below our mouse cursor; it tells us whether or not we need to <em>click</em>, <em>drag</em>, <em>move</em>, <em>resize</em>, or even <em>wait</em>.  Now, I know that we all know this, but I believe that sometimes as developers (<em>especially web developers</em>) we forget that not all items in an application have the correct default cursor for the action that is assigned for that item.<span id="more-505"></span><br />
<div align="center"><script type="text/javascript"><!--
google_ad_client = "pub-9461422058527053";
google_ad_slot = "5057152483";
google_ad_width = 468;
google_ad_height = 60;
//--></script>
<script type="text/javascript" src="http://pagead2.googlesyndication.com/pagead/show_ads.js"></script>
</div></p>
<h3 class="hrule"><span style="color: #3366ff;">The Web Standard<br />
</span></h3>
<p>For years we lived without JavaScript in our browsers; it wasn&#8217;t used by developers, or it was turned off or disabled by the user because there were so many security flaws with the JavaScript engine; however, as those security flaws are fixed and JavaScript&#8217;s functionality increases, the age of no-script is quickly coming to a close.</p>
<p>One of the <strong>side-effects</strong> from living without JavaScript for so long is that <span style="color: #ff0000;"><strong>users are now used to relying on the <em>mouse pointer</em> to signal whether or not something on the page is clickable or actionable</strong></span>.</p>
<p><img class="size-medium wp-image-514 alignleft" title="Default cursor" src="http://www.engfers.com/wp-content/uploads/2008/09/cursor-default1.gif" alt="" width="25" height="29" /> In the web world, the <strong>default cursor</strong> (without any background movement) means that there is no current actionable item beneath the mouse at that time.  Once your mouse moves over something actionable, the cursor will either change (page links), or the background will change to so show a possible action (form buttons).</p>
<p><img class="alignleft size-medium wp-image-515" title="Hand cursor" src="http://www.engfers.com/wp-content/uploads/2008/09/cursor-hand2.gif" alt="" width="25" height="29" />When the mouse hovers over something like a <em>link </em>or an <em>image used for a form submission</em>, the <strong>hand cursor </strong>would show to indicate that an action will be executed by clicking on that item (whether it be submitting a form or going to a new page).</p>
<p>Furthermore, there are <a href="http://www.javascriptkit.com/dhtmltutors/csscursors.shtml">many other cursors</a> that have different meanings (both actionable and not) when hovering over different elements, both actionable and not.</p>
<h3 class="hrule"><span style="color: #3366ff;">Taken For Granted</span></h3>
<p>With the advent of JavaScript, more items than just anchor tags and submit buttons became actionable. We can now execute actions based on <em>hovering</em>, <em>clicking</em>, <em>moving</em>, <em>button </em>pressing and other user input actions on any other type of visible elements: <em>span</em>&#8216;s, <em>div</em>&#8216;s, <em>tables</em>, etc.  Moreover, we can even execute actions on browser events that the <em>user has no control over</em> (XMLHttpRequest, onLoad, etc).</p>
<p>People now use JavaScript very freely and frequently on their pages to <strong>simulate </strong>actionable elements that at one time could only be implemented with anchor tags, img+anchor tag combos, and form buttons.</p>
<p>However, I think that sometimes we believe that the user will <strong>automatically or inherently know</strong> to click on the span or div (or any other random element that has <strong><em>no innate way of communicating required user input</em></strong>) to begin some action without giving them at least one or more of the most possible types of action signaling.</p>
<p>Although the course of action may seem very clear to us as developers, it may be unclear to the user without the <strong>proper signals and directors</strong> to drive the user to click on an actionable item.</p>
<p>As an example of how things might seem unclear, look at <strong>problem 4</strong> in the following article about Sourceforge.net&#8217;s landing page:</p>
<ul>
<li><strong><a href="http://www.engfers.com/2008/10/07/case-study-poor-web-usability-and-design/">Case Study: Poor Web Usability and Design</a></strong></li>
</ul>
<h3 class="hrule"><span style="color: #3366ff;">Moral of the Story</span></h3>
<blockquote><p><span style="color: #ff0000;">If you are going to make some page element an actionable item (especially those with raised surfaces), <strong>at least</strong> make the cursor seem like it&#8217;s about to execute an action. If you can&#8217;t do that, then use the <strong>title attribute</strong> to show a tooltip about the action to be executed.</span></p></blockquote>
<h3 class="hrule"><span style="color: #3366ff;">Counter Arguments</span></h3>
<p>Now, there are the counter-arguments that I do agree with on a <em>certain </em>level:</p>
<ul>
<li><strong>The hand cursor is reserved for the anchor tag, and the user knows that when they click the anchor they will be taken to a new page</strong>.
<ul>
<li>This is true; however, the latter supporting part of the argument fails because when a non-JavaScript actionable page element is clicked, it usually either <strong>removes</strong>, <strong>adds </strong>or <strong>modifies</strong> the page content.<strong> </strong><strong>Before the advent of JavaScript</strong>, this could only be done with forms and anchor tags to make <strong>separate HTTP requests</strong>; however, with JavaScript we can do the same things without having to waste a request to the server<strong>**</strong>. Therefore, since the effect is the same, why shouldn&#8217;t their signals (mouse cursor) be the same?<strong>** Note:</strong> Look forward to a <em>future article</em> on the &lt;noscript/&gt; block. In proper usability, you shouldn&#8217;t put the blinders on to <strong>non</strong>-JavaScript enabled browsers and mobile phones.</li>
</ul>
</li>
<li><strong>This is all bogus because desktop applications and operating systems, which the users are used to, don&#8217;t use the hand cursor for actionable.</strong>
<ul>
<li>This is a <em>weak </em>argument because of one the reasons that I listed above; inside of a web browser, people are used to anchors and buttons being the only way to execute actions. Since the hand cursor is used on hovering over anchors and buttons, it would be <strong>fair </strong>to say that most actionable items inside of a web browser should follow that <strong>same pattern</strong>.There are circumstances when not using the hand cursor might be okay; an example might be the +/- tree expansion and collapse (treeview).It&#8217;s contextual; you make the call on when you need to use the hand cursor, but err on the side of using it too much.</li>
</ul>
</li>
</ul>
<h3 class="hrule"><span style="color: #3366ff;">Final Tip</span></h3>
<p>All it takes is adding the following CSS style to your element to make the cursor change:</p>
<ul>
<li><span style="color: #ff0000;"><strong>cursor: pointer</strong></span></li>
</ul>
<p><div align="center"><script type="text/javascript"><!--
google_ad_client = "pub-9461422058527053";
google_ad_slot = "5057152483";
google_ad_width = 468;
google_ad_height = 60;
//--></script>
<script type="text/javascript" src="http://pagead2.googlesyndication.com/pagead/show_ads.js"></script>
</div></p>
]]></content:encoded>
			<wfw:commentRss>http://www.engfers.com/2008/10/09/on-web-usability-mouse-cursors-and-actionable-page-elements/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Case Study: Poor Web Usability and Design</title>
		<link>http://www.engfers.com/2008/10/07/case-study-poor-web-usability-and-design/</link>
		<comments>http://www.engfers.com/2008/10/07/case-study-poor-web-usability-and-design/#comments</comments>
		<pubDate>Tue, 07 Oct 2008 22:06:12 +0000</pubDate>
		<dc:creator>engfer</dc:creator>
				<category><![CDATA[Usability]]></category>
		<category><![CDATA[case study]]></category>

		<guid isPermaLink="false">http://www.engfers.com/?p=552</guid>
		<description><![CDATA[At the time of writing this article, I couldn&#8217;t find a more perfect example than the landing page of the open source software distribution web site, Sourceforge.net. Now, I&#8217;m not really sure what web usability and design standards (if they even used any) their designers/developers were using when they made this page, but I am [...]]]></description>
			<content:encoded><![CDATA[<p><div style="float: left; padding: 0px 5px 5px 0px;"><script type="text/javascript"><!--
google_ad_client = "pub-9461422058527053";
google_ad_slot = "3901277195";
google_ad_width = 300;
google_ad_height = 250;
//--></script>
<script type="text/javascript" src="http://pagead2.googlesyndication.com/pagead/show_ads.js"></script>
</div>At the time of writing this article, I couldn&#8217;t find a more perfect example than the landing page of the open source software distribution web site, <a href="http://sourceforge.net/"><strong>Sourceforge.net</strong></a>. Now, I&#8217;m not really sure what web usability and design standards (if they even used any) their designers/developers were using when they made this page, but I am going to pick apart and explain some of the problems that I see as <strong>poor selections and decisions</strong> for the landing page.<span id="more-552"></span></p>
<h3 class="hrule"><span style="color: #3366ff;"><strong>Sourceforge.net Landing Page</strong></span></h3>
<p style="text-align: center;"><a href="http://www.engfers.com/wp-content/uploads/2008/10/sfg.png"><img class="size-medium wp-image-524 aligncenter" title="Sourceforge.net Home Page" src="http://www.engfers.com/wp-content/uploads/2008/10/sfg-300x246.png" alt="" width="300" height="246" /></a></p>
<p>The first question we must ask is: <strong>why</strong>?</p>
<p>What possessed this elite software distribution organization to make this unappealing front page with poor usability? I digress.</p>
<h4><span style="color: #ff0000;"><strong>Problem 1:</strong></span></h4>
<p>The large header at the top is really nice&#8230; for <em>blogs or pure search engines</em>; however, to waste <strong>259 pixels</strong> on the landing page of an open source software distribution web site is a sin.</p>
<p>How many people do you think <em>really </em><strong>search </strong>for software on Sourceforge?</p>
<p>If I think about it, the only way I get around when I&#8217;m on that site is to drill-down by category.</p>
<p>However, most often I follow a series of links to a hosted project web page on Sourceforge via Google or some other referring site/resource.</p>
<p><em>To be honest</em>, I don&#8217;t know if I have <strong>ever </strong>searched for anything on Sourceforge.</p>
<p style="padding-left: 30px;"><span style="color: #ff0000;"><em>I don&#8217;t think that they have enough people using search to <strong>warrant a landing page</strong> that has such a <strong>large</strong> section of page focused on search. </em></span></p>
<p>I believe that they could have accomplished the same goals <strong>without </strong>such a large area at the top (considering the top nav area on the rest of the site is only 102 pixels).</p>
<p><strong>» </strong><strong>SIDE NOTE</strong>: if you are going to center your page around a search box, <strong>at least focus() the mouse pointer on the search input!</strong></p>
<h4><span style="color: #ff0000;"><strong>Problem 2:</strong></span></h4>
<p>As described in problem one, we again hit on the abuse of negative space, but this time it&#8217;s the <strong>main navigation bar</strong>.</p>
<p>The three so-called &#8220;buttons&#8221; that they have placed there <strong>don&#8217;t really act like buttons</strong>! They have a <strong>huge </strong>selection area with a raised three dimension effect, and when you hover over any area of the &#8220;button&#8221;, the &#8220;button&#8221; image doesn&#8217;t change <strong>at all</strong>.</p>
<p style="text-align: center;"><img class="size-full wp-image-537 aligncenter" title="sfg_nav_button" src="http://www.engfers.com/wp-content/uploads/2008/10/sfg_nav_button.png" alt="" width="346" height="221" /></p>
<p style="text-align: left;">Moreover, as you can see in the third figure in the picture below, the actual <em>actionable area</em> covered by the anchor is <strong><em>tiny</em> </strong>in comparison to the area it should cover.</p>
<p style="text-align: center;"><img class="size-full wp-image-538 aligncenter" title="sfg_bad_nav" src="http://www.engfers.com/wp-content/uploads/2008/10/sfg_bad_nav.png" alt="" width="346" height="587" /></p>
<p>If you do the math on the pixel areas covered, only <strong>11.7% of the &#8220;button&#8221; area is actually clickable</strong>!</p>
<p>Moreover, the only thing that changes on the anchor on hover is the removal of the underline and the usual hand cursor appears; this is not very noticeable.</p>
<p><strong>What should they have done?</strong> Just to name a few&#8230;</p>
<ul>
<li>Make the <strong>anchor a block level (&#8220;style: block&#8221;) element</strong> so the whole h2 is filled</li>
<li>Do something <strong>on hover</strong> with the anchor element <strong>besides </strong>remove the underline; use bold, color, font-size, italics or something else to show it changes</li>
<li><strong>Increase </strong>the anchor <strong>font size </strong>or <strong>boldness </strong>to make it pop a bit more</li>
<li>Change the background<strong> button image to a hover image</strong> when the mouse hovers over the area. (Make the button act like a button)</li>
<li><strong>Reduce the size of the button</strong>. Instead of having the same background span all three anchors without a visual break <em>like a big friggin space bar</em>, break it up into <strong>discrete visual chunks</strong>.</li>
<li>Add a<strong> title=&#8221;&#8230;&#8221;</strong> attribute to the anchor to create a <strong>tooltip</strong>, which describes the action to be executed, on mouse hover.</li>
</ul>
<h4><span style="color: #ff0000;"><strong>Problem 3:</strong></span></h4>
<p>I believe I don&#8217;t need to even go over their crappy use of the<strong> slideIn() and slideOut() for the navigation content</strong>; it explains itself.</p>
<h4><span style="color: #ff0000;"><strong>» Problem 4 (the main problem and article impetus) «</strong></span></h4>
<p>The main problem on the Sourceforge.net&#8217;s landing page that actually spawned the need for me to &#8220;bring this to light&#8221; was their quirky little button at the bottom of the page&#8230;</p>
<p style="text-align: center;"><img class="size-full wp-image-526 aligncenter" title="sfg_button" src="http://www.engfers.com/wp-content/uploads/2008/10/sfg_button.png" alt="" width="431" height="298" /></p>
<p>This button, when clicked, extends some additional information at the bottom of the screen&#8230;</p>
<p style="text-align: center;"><a href="http://www.engfers.com/wp-content/uploads/2008/10/sfg_exp.png"><img class="size-medium wp-image-523 aligncenter" title="Sourceforge.net Home Page with Bottom Expanded" src="http://www.engfers.com/wp-content/uploads/2008/10/sfg_exp-300x294.png" alt="" width="300" height="294" /></a></p>
<p><span style="color: #ff0000;"><strong>1st Issue:</strong></span></p>
<p>Why in the world did they make a button for displaying <em>only </em><strong>127 pixels</strong> worth of footer content?</p>
<p>The button and useless bar-thingy take up ~40 pixels itself; was it <strong>really </strong>necessary to save 75% on what would have been the initial browser paint?</p>
<p>I could understand a <em>little</em> more if an AJAX request was made because it would save 1KB or so uncompressed; however, the content is just <strong>hidden</strong> from display!</p>
<p><strong>» </strong><strong>SIDE NOTE</strong>: what the heck is that useless bar-thingy doing there? The space inside that bar made me feel like when I pressed the &#8220;button&#8221;, I was supposed to see the hidden content appear inside that 10 pixel high useless space; however, I was disappointed.</p>
<p><strong><span style="color: #ff0000;">2nd Issue:</span><br />
</strong></p>
<p>When you hover over the &#8220;button&#8221;, your <strong>mouse (nor does the button image for that matter) gives no indication that the area below the mouse will execute any action or event by clicking on that element</strong></p>
<p>It <em>really </em>bothers me when you click an element in a web page, where the regular mouse pointer is being shown, and an event or action occurs to my surprise.</p>
<p>What did I expect to see? Something more along the lines of this&#8230;</p>
<p style="text-align: center;"><img class="size-full wp-image-564 aligncenter" title="Correct way to signal action with the mouse..." src="http://www.engfers.com/wp-content/uploads/2008/10/sfg_correct.png" alt="" width="267" height="120" /></p>
<p style="text-align: left;">As compared to the method currently used on Sourceforge&#8217;s landing page, the above alternative makes the action clearer by doing two simple things:</p>
<ol>
<li>Apply <strong>&#8220;cursor: pointer&#8221;</strong> to the enclosing element to show the hand cursor on mouse hover.</li>
<li>Add a <strong>title=&#8221;&#8230;&#8221;</strong> attribute onto the enclosing element so that a tooltip describing the action to be executed appears when the mouse hovers.</li>
</ol>
<p><div align="center"><script type="text/javascript"><!--
google_ad_client = "pub-9461422058527053";
google_ad_slot = "5057152483";
google_ad_width = 468;
google_ad_height = 60;
//--></script>
<script type="text/javascript" src="http://pagead2.googlesyndication.com/pagead/show_ads.js"></script>
</div></p>
<h3 class="hrule"><span style="color: #3366ff;">The Reasons for their Haphazard Page Design &amp; Development</span></h3>
<p><strong>Who knows?</strong> <strong></strong></p>
<p>What do I think?</p>
<ul>
<li><strong>I think someone or some team at Sourceforge.net stumbled across the <a href="http://jquery.com/blog/2008/05/05/jquery-ui-15b4-featuring-effects-and-a-new-home/">revamped jQuery UI home page</a> a few months ago and decided to go buck wild with integrating as many jQuery UI components as possible.</strong></li>
</ul>
<p>I have seen this happen so many times; <span style="color: #ff0000;"><strong>just because an object has the <em>capability </em>to do something, doesn&#8217;t mean that it is <em>right</em> to use it.<br />
</strong></span></p>
<h3 class="hrule"><span style="color: #3366ff;">What Do You Think?</span></h3>
<p>Please leave a comment below and rate it!</p>
]]></content:encoded>
			<wfw:commentRss>http://www.engfers.com/2008/10/07/case-study-poor-web-usability-and-design/feed/</wfw:commentRss>
		<slash:comments>5</slash:comments>
		</item>
	</channel>
</rss>
