<?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>eDesign.nl &#187; Usability</title>
	<atom:link href="http://www.edesign.nl/category/usability/feed/" rel="self" type="application/rss+xml" />
	<link>http://www.edesign.nl</link>
	<description>Thoughts and concepts on software development</description>
	<lastBuildDate>Fri, 08 Apr 2011 13:35:29 +0000</lastBuildDate>
	<generator>http://wordpress.org/?v=2.9.2</generator>
	<language>en</language>
	<sy:updatePeriod>hourly</sy:updatePeriod>
	<sy:updateFrequency>1</sy:updateFrequency>
			<item>
		<title>Decoration aid</title>
		<link>http://www.edesign.nl/2010/08/03/decoration-aid/</link>
		<comments>http://www.edesign.nl/2010/08/03/decoration-aid/#comments</comments>
		<pubDate>Tue, 03 Aug 2010 14:36:28 +0000</pubDate>
		<dc:creator>Jurgen</dc:creator>
				<category><![CDATA[Projects]]></category>
		<category><![CDATA[Usability]]></category>

		<guid isPermaLink="false">http://www.edesign.nl/?p=783</guid>
		<description><![CDATA[When it comes to designing websites choosing what colors to use is one of the first steps. Nowadays online applications often let users personalize the look and feel of the site by offering a way to customize the colors the website wears. JavaScript and HTML can be used effectively to this end. A problem is [...]]]></description>
			<content:encoded><![CDATA[<p><a href="http://www.edesign.nl/wp-content/uploads/2010/08/Runge_Farbenkugel3.jpg"><img class="alignleft size-thumbnail wp-image-791" title="Runge Farbenkugel" src="http://www.edesign.nl/wp-content/uploads/2010/08/Runge_Farbenkugel3-150x150.jpg" alt="" width="150" height="150" /></a>When it comes to designing websites choosing what colors to use is one of the first steps. Nowadays online applications often let users personalize the look and feel of the site by offering a way to customize the colors the website wears. JavaScript and HTML can be used effectively to this end. A problem is arising for component developers using JavaScript: what framework to use? There is <a href="http://mootools.net/" target="_blank">MooTools</a>, <a href="http://www.prototypejs.org/" target="_blank">ProtoType</a>, <a href="http://developer.yahoo.com/yui/" target="_blank">YUI library</a>, <a href="http://jquery.com/" target="_blank">jQuery</a>, etc, etc&#8230; This is the reason I developed a standalone <a href="http://www.edesign.nl/colorpicker/" target="_self">color picker</a>. It also works with every JavaScript framework, as it does not depend on one or interferes with one. It is one single .js file, no extra images, css, javascript or whatsoever.</p>
<p><span id="more-783"></span></p>
<p>Using it is easy. Basic usage has tree steps.</p>
<ol>
<li>Include the colorpicker.js in the &lt;head&gt; of the HTML file.</li>
<li>Add the class &#8216;colorpicker&#8217; to the &lt;input&gt; tag you use in a form for the color to choose.</li>
<li>On document load, initialize the color picker with: ColorPicker.init();</li>
</ol>
<p>It is as simple as that. Example:</p>
<pre>&lt;hmtl&gt;</pre>
<pre> &lt;head&gt;</pre>
<pre>  &lt;title&gt;ColorPicker example&lt;/title&gt;</pre>
<pre>  &lt;script type="text/javascript" src="colorpicker.js" /&gt;</pre>
<pre> &lt;/head&gt;</pre>
<pre> &lt;body onload="ColorPicker.run();"&gt;</pre>
<pre>  &lt;form&gt;</pre>
<pre>   Choose a color: &lt;input type="text" name="color" class="colorpicker" /&gt;</pre>
<pre>   &lt;input type="submit" /&gt;</pre>
<pre>  &lt;/form&gt;</pre>
<pre> &lt;/body&gt;</pre>
<pre>&lt;/html&gt;</pre>
<p>Multiple pickers can be added by inserting more &lt;input&gt; tags with the classname &#8216;colorpicker&#8217; which the standard ColorPicker.init() method all transforms into color pickers.</p>
<p>The manual way to initialize color pickers is by calling:</p>
<pre>new ColorPicker(element);</pre>
<p>You&#8217;ll need to repeat that line for every color picker you have if you don&#8217;t want to use ColorPicker.init().</p>
<h2>Customizing</h2>
<p>The look and feel of the color picker can be modified by adding an configuration hash table as argument to the init() function. This way you can change the colors, borders and language to your needs. For instance, in Dutch the word &#8216;Cancel&#8217; means &#8216;Annuleren&#8217;. So if I want a color picker on a Dutch website I would change the init() call to:</p>
<pre>ColorPicker.init({'language': {'cancel': 'Annuleren'}})</pre>
<p>This way you can set parts of the configuration (e.g. only the word &#8216;cancel&#8217;) or the entire configuration by extending the hash table.</p>
<p><a href="http://www.edesign.nl/wp-content/uploads/2010/08/Capture.png"><img class="alignnone size-full wp-image-803" title="Color Picker" src="http://www.edesign.nl/wp-content/uploads/2010/08/Capture.png" alt="" width="385" height="386" /></a></p>
<h2>Download</h2>
<p>You can get the latste version of the ColorPicker from <a href="http://projects.edesign.nl/colorpicker/latest/colorpicker.js" target="_blank">http://projects.edesign.nl/colorpicker/latest/colorpicker.js</a>. The project page is available at <a href="http://projects.edesign.nl/colorpicker/" target="_blank">http://projects.edesign.nl/colorpicker/</a>.</p>
]]></content:encoded>
			<wfw:commentRss>http://www.edesign.nl/2010/08/03/decoration-aid/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>No robots beyond this line</title>
		<link>http://www.edesign.nl/2010/04/23/no-robots-beyond-this-line/</link>
		<comments>http://www.edesign.nl/2010/04/23/no-robots-beyond-this-line/#comments</comments>
		<pubDate>Fri, 23 Apr 2010 17:43:30 +0000</pubDate>
		<dc:creator>Jurgen</dc:creator>
				<category><![CDATA[Spam protection]]></category>
		<category><![CDATA[Usability]]></category>

		<guid isPermaLink="false">http://www.edesign.nl/?p=729</guid>
		<description><![CDATA[Online communities are hot. Globally recognized examples are easy to give: websites like Facebook, LinkedIn and are very popular, manufacturers have online fora to have their customers support each other, newspapers let you leave comments on their articles on their websites and you can share everything with tools like Delicious, Digg and Reddit. This development [...]]]></description>
			<content:encoded><![CDATA[<p><a rel="attachment wp-att-751" href="http://www.edesign.nl/2010/04/23/no-robots-beyond-this-line/customs/"><img class="alignleft size-thumbnail wp-image-751" title="Customs passport check" src="http://www.edesign.nl/wp-content/uploads/2010/04/customs-150x150.jpg" alt="Customs passport check" width="150" height="150" /></a>Online communities are hot. Globally recognized examples are easy to give: websites like <a href="http://www.facebook.com/" target="_blank">Facebook</a>, <a href="http://www.linkedin.com/" target="_blank">LinkedIn</a> and are very popular, manufacturers have <a href="http://vip.asus.com/forum/default.aspx?SLanguage=en-us" target="_blank">online fora</a> to have their customers support each other, newspapers let you leave <a href="http://community.nytimes.com/comments/bits.blogs.nytimes.com/2010/04/06/yelp-makes-changes-to-appease-small-business-owners/?sort=newest&amp;scp=1&amp;sq=captcha&amp;st=cse#postComment" target="_blank">comments</a> on their articles on their websites and you can share everything with tools like <a href="http://delicious.com/" target="_blank">Delicious</a>, <a href="http://digg.com/" target="_blank">Digg</a> and <a href="http://www.reddit.com/" target="_blank">Reddit</a>. This development on the Internet supports new possibilities which were unknown before. Of course this also counts for rogues. <a href="http://en.wikipedia.org/wiki/Spam_%28electronic%29" target="_blank">Spam</a> is a commonly known phenomenon and global annoyance. Beside spamming unwanted messages by mail, spamming the comment boxes and fora is an issue web programmers have to deal with too. Spamming often is automated and this is a feature which can be used to counter spam. The goal is to identify a messenger being human or robot.</p>
<p>For this purpose the <a href="http://en.wikipedia.org/wiki/CAPTCHA" target="_blank">captcha</a> was invented. Besides the fact that captcha sounds nice enough to be a buzz word it actually is short for Completely Automated Public Turing test to tell Computers and Humans Apart, although this is a bit contrived. This means that a captcha is a challenge response mechanism but it doesn&#8217;t need to be in the form of an image depicting distorted text which has to be copied in a text box which is the most common form of captchas. Creative new captchas can be found, like a transistor image which has to be read.<span id="more-729"></span></p>
<h3>Technology</h3>
<p>Wikipedia mentions a couple of features a captcha must have to qualify as one. A captcha is a <a href="http://www.edesign.nl/2009/05/05/challenge-hash/" target="_self">challenge-response</a> test between a system and a user of which</p>
<ol>
<li>current software is unable to solve accurately,</li>
<li>most humans can solve, and</li>
<li>does not rely on the type of CAPTCHA being new to the attacker.</li>
</ol>
<p>The first one remarks a captcha as temporal. This means that with increasing processing power and increasing insight in artificial intelligence challenges we now consider to be captchas might not be in the (near) future. Philosophically, this means that captchas are a temporary phenomenon because mankind will eventually be able to build robots which are at least as intelligent as humans are. But for now they&#8217;ll do.</p>
<p>The second one emphasises the differences we see between humans and robots. This is actually quite an interesting point because mankind actually admits its current limitations in its own intelligence being unable to write software which is able to solve &#8216;puzzles&#8217; which are easy to solve for humans.</p>
<p>Which bridges to the last bullet on the list. Of course you could just add a simple checkbox labeled &#8220;Do not check this box if you are human&#8221;. No attacker would think of a spam protection this weak but because of that it might just work. The robot stumbling across your comment submission form does not expect such a protection and therefor cannot bypass it. Although this does not qualify as a captcha because the novelty of the protection will only make the attacker look into it to solve it in an instance. Of course a captcha can be a captcha when it is an innovative challenge but it should not rely on being unknown. <a href="http://en.wikipedia.org/wiki/Security_through_obscurity" target="_blank">Security through obscurity</a> is not security at all.</p>
<h3>Processing power and algorithms</h3>
<p>As time passes by technology advances resulting in more processing power in both processor quantity and quality and more mathematical developments. These are the engine propelling artificial intelligence development. On the other hand, having this field of computer science developing the struggle for making captchas to tell humans and computers apart becomes harder and harder. Who knows when software becomes as advanced as to be able to not only solve puzzles or identify puzzle types but to be really intelligent and thereby be able to find ways to solve a puzzle without knowing the puzzle&#8217;s rules in advance? 20 years? 30? 5?!</p>
<h3>Usefulness</h3>
<p>Captcha&#8217;s can be useful too. The <a href="http://recaptcha.net/" target="_blank">Recaptcha</a> program for instance helps digitizing books by showing snippets scanned from books which they are unable to parse with their <a href="http://en.wikipedia.org/wiki/Optical_character_recognition" target="_blank">OCR software</a>. This way the snippets are &#8216;decyphered&#8217; by hundreds of people insuring accuracy and helping the system in which it is implemented to be bot-free.</p>
<p>Other examples of captchas might be usefull to the website&#8217;s theme such as a math class forum&#8217;s captcha challenging users with simple math like <img src="http://www.edesign.nl/wp-content/cache/tex_f8f58d4d35433e1e2eaf7438fd68073d.png" align="absmiddle" class="tex" alt="3 + 5 =" /> or <img src="http://www.edesign.nl/wp-content/cache/tex_8dae6646d5937556b6a8bcc3c53f935c.png" align="absmiddle" class="tex" alt="4 * 3 =" />. Another example of such a situated captcha is Adafruit&#8217;s. <a href="http://www.adafruit.com/blog/" target="_blank">Adafruit</a> is a website and webshop on the <a href="http://www.arduino.cc/" target="_blank">Arduino</a>, which is a do it yourself programmable breadboard. You&#8217;ll need to &#8216;read&#8217; the resistor&#8217;s value in order to post a comment.</p>
<div id="attachment_758" class="wp-caption alignleft" style="width: 526px"><a rel="attachment wp-att-758" href="http://www.edesign.nl/2010/04/23/no-robots-beyond-this-line/capture/"><img class="size-full wp-image-758" title="Adafruit's resistor captcha" src="http://www.edesign.nl/wp-content/uploads/2010/04/capture.png" alt="Adafruit's resistor captcha" width="516" height="351" /></a><p class="wp-caption-text">Adafruit&#39;s resistor captcha makes you slide the four sliders to match the color code on the resistor above.</p></div>
]]></content:encoded>
			<wfw:commentRss>http://www.edesign.nl/2010/04/23/no-robots-beyond-this-line/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
	</channel>
</rss>
