<?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>Gorges Blog &#187; Website Design</title>
	<atom:link href="http://blog.GORGES.us/category/website-design/feed/" rel="self" type="application/rss+xml" />
	<link>http://blog.GORGES.us</link>
	<description>Web Sites that Grow Your Business - our blog</description>
	<lastBuildDate>Mon, 06 Feb 2012 14:23:43 +0000</lastBuildDate>
	<language>en</language>
	<sy:updatePeriod>hourly</sy:updatePeriod>
	<sy:updateFrequency>1</sy:updateFrequency>
	<generator>http://wordpress.org/?v=3.2.1</generator>
		<item>
		<title>Website Search Strategies</title>
		<link>http://blog.GORGES.us/2012/02/website-search-strategies/</link>
		<comments>http://blog.GORGES.us/2012/02/website-search-strategies/#comments</comments>
		<pubDate>Thu, 02 Feb 2012 13:32:42 +0000</pubDate>
		<dc:creator>Don Ellis</dc:creator>
				<category><![CDATA[Technology]]></category>
		<category><![CDATA[User Interface UX]]></category>
		<category><![CDATA[Web Development]]></category>

		<guid isPermaLink="false">http://blog.GORGES.us/?p=750</guid>
		<description><![CDATA[Search strategies should relate to a website’s mission and message.]]></description>
			<content:encoded><![CDATA[<p>Search strategies should relate to a website’s mission and message. They also need to respond to the anticipated user skills and preferences – optimal search strategies on a website for scientist or engineers would be quite different from those for the general public.</p>
<p>Search is really just part of navigation. In many cases information found by running a search routine can also be found by just browsing through the pages. Which serves the visitor best? … is that also what serves the mission best?</p>
<p>Search needs words (also phrases) for searching. When visitors compose their own phrases, will those phrase be effective in searching the website? If not, then search terms should be offered as items in drop-down lists or some similar selection interface.</p>
<p>Next there is the question of what will be searched. A Google-like search can theoretically see every word in the public space of the website. Will this work OK? … will many irrelevant items be returned? … or should that type of “free word” search be used, but restricted to parts of the space with relevant content?</p>
<p>Another approach uses either “free word” input or “selected word” input to search only prepared fields in the database. This allows the web administrators to help or control the search results, but requires maintaining those fields of search phrases.</p>
<p>Many choices and variations are possible. Least expensive is installing one of the free search routines, one that can be limited to just the one website, as Google can. It has quick setup, little maintenance, is familiar to nearly everyone, but in a small website it can be quite imprecise and may often return empty lists.</p>
<p>I recommend a careful discussion with your website’s Information Designer.</p>
]]></content:encoded>
			<wfw:commentRss>http://blog.GORGES.us/2012/02/website-search-strategies/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Choosing Web Chart Technologies</title>
		<link>http://blog.GORGES.us/2011/12/choosing-web-chart-technologies/</link>
		<comments>http://blog.GORGES.us/2011/12/choosing-web-chart-technologies/#comments</comments>
		<pubDate>Fri, 09 Dec 2011 13:20:01 +0000</pubDate>
		<dc:creator>Jim Tse</dc:creator>
				<category><![CDATA[Technology]]></category>
		<category><![CDATA[Web Development]]></category>
		<category><![CDATA[Website Design]]></category>

		<guid isPermaLink="false">http://blog.GORGES.us/?p=731</guid>
		<description><![CDATA[Web-based charting has emerged as another great use of the browser. Traditionally, business analysts were the ones crunching numbers on spreadsheet to build charts. The spreadsheet would be e-mail as a file attachment. This process of compiling numbers and chart building could take hours. There is the saying that once information is on paper, it [...]]]></description>
			<content:encoded><![CDATA[<p>Web-based charting has emerged as another great use of the browser. Traditionally, business analysts were the ones crunching numbers on spreadsheet to build charts. The spreadsheet would be e-mail as a file attachment. This process of compiling numbers and chart building could take hours. There is the saying that once information is on paper, it is already outdated. It will not be long before the saying becomes: Once information is in an office file document, it is already outdated. As a result, the web is quickly becoming the preferred platform for data charting and analysis.</p>
<p>In this article, we will discuss approaches to creating charts on the web. Currently, there are two general approaches to creating charts on the web: Image-based versus Scalable Vector Graphics (SVG)-based. There are also Flash-based solutions but we cannot recommend them because Flash is not available on iPhones and iPads and the future of Flash-based solution is uncertain.</p>
<p>Image charts<br />
Here, the server generates a static image (e.g., a JPEG) of the chart from the data and the image gets displayed in the browser. There are a plethora of server-side charting implementations to choose from &#8212; a noteworthy one is Google Image Charts: http://code.google.com/apis/chart/image. Since the chart is simply an image, there are no cross-browser issues and the look of the chart is also consistent across browsers. The chart can easily be exported for usage in presentation slides since the chart is just an image file. However, the disadvantage of this approach is that users cannot interact with the chart; they cannot click into a pie chart slice or hover over line graph points to better understand the data being presented. While image-based charts provide a consistent and reliable view of the data, this approach does not give your end users necessary usability needed to make effective use of the information.</p>
<p>SVG charts<br />
Here, the rendering of the chart is strictly on the client browser: There is no server-side rendering of the chart. Data are passed into a JavaScript SVG library which renders the chart as SVG markup (or VML markup if the user is on Internet Explorer 6/7/8). The browser produces a chart from the resulting markup that is mostly consistent across browsers. (We have run into an edge case issue where labels on pie charts get cut-off in Internet Explorer.) Exporting the chart into a file for use in presentation slides is a little trickier &#8212; since SVG charts are derived from JavaScript libraries and you cannot create files using JavaScript (at least not easily or consistently across browsers). One possible solution is to post the serialized SVG output back to the server-side and convert into the desired target format (e.g., JPEG, PDF, etc.). These relatively minor issues are offset by the huge gain in chart interactivity. SVG charting libraries allows developers to attach mouse click and hover events to the charts, such that a user can drill down into a pie slice of a chart or hover over line graph points for a more comprehensive view of the data. The SVG charting libraries tend to be relatively easy to use for developers comfortable with JavaScript, relative to the server-side charting tools.</p>
<p>Choosing a solution<br />
When choosing a charting solution, it is necessary to consider the following requirements:</p>
<ul>
<li>Does the chart have to be interactive? If the answer is a resounding yes, then SVG approaches are the only options.</li>
<li>How important is exporting chart into other file format? If very important, then it may be worthwhile to look at image-based solutions or possibly dual solutions of both SVG and static images.</li>
<li>Are we dealing with tens of thousands of data points? If yes, then it may be neccessary to sacrifice the interactivity of SVG charts for performance of static image charts.</li>
</ul>
<p>SVG solutions<br />
Below is a brief descriptive of three SVG libraries. This is by no means a comprehensive list.</p>
<ul>
<li>gRaphael: http://g.raphaeljs.com</li>
<ul>
<li>Only completely free solution of the three.</li>
<li>Not as mature the others and poorly documented.</li>
<li>Programming somewhat easy.</li>
<li>Fewer eye candy.</li>
<li>Bottom-line: Check back in 6 months; the library is improving rapidly.</li>
</ul>
<li>Google Chart Tools: http://code.google.com/apis/chart</li>
<ul>
<li>Does not cost money but source code is not available and hard dependency on Google’s server.</li>
<li>Mature and well-documented.</li>
<li>Programming not as easy but powerful.</li>
<li>Better eye candy &#8212; see Geographic chart.</li>
<li>Bottom-line: Good solution but the charts and data security are heavily dependant on Google’s server.</li>
</ul>
<li>Highcharts: http://www.highcharts.com</li>
<ul>
<li>Costs money (couple of hundreds) but open source.</li>
<li>Mature; Good documentation.</li>
<li>Programming is easy.</li>
<li>Best eye candy &#8212; charts will “pop” to your users.</li>
<li>Bottom-line: Best overall general-purpose charting solution.</li>
</ul>
</ul>
]]></content:encoded>
			<wfw:commentRss>http://blog.GORGES.us/2011/12/choosing-web-chart-technologies/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Transition operating systems</title>
		<link>http://blog.GORGES.us/2011/05/transition-operating-systems/</link>
		<comments>http://blog.GORGES.us/2011/05/transition-operating-systems/#comments</comments>
		<pubDate>Mon, 16 May 2011 12:24:15 +0000</pubDate>
		<dc:creator>Rasmus Schultz</dc:creator>
				<category><![CDATA[Mobile Development]]></category>
		<category><![CDATA[Technology]]></category>
		<category><![CDATA[User Interface UX]]></category>

		<guid isPermaLink="false">http://blog.GORGES.us/?p=501</guid>
		<description><![CDATA[Why modern mobile operating systems are "transition" operating systems.]]></description>
			<content:encoded><![CDATA[<p>Modern mobile operating systems are all the hype, and we&#8217;re feeling it here at GORGES &#8211; clients are becoming increasingly aware of the importance of mobile technology.</p>
<p>The major contenders when it comes to mobile operating systems are <a href="http://www.android.com/" target="_blank">Android</a>, <a href="http://en.wikipedia.org/wiki/IOS_(Apple)" target="_blank">iOS</a> (more commonly known as iPhone, iPad and iPod), and <a href="http://www.microsoft.com/windowsphone/en-us/default.aspx" target="_blank">Windows Phone 7</a> &#8211; all fantastic mobile operating systems, it is hard to even begin to compare them to their predecessors.</p>
<p>But why were we suddenly (these past few years) imbued with these brilliant new OS&#8217;es?</p>
<p>The answer of course is advances in hardware &#8211; lower cost, more computation power, high resolution displays and multi-touch, more storage, faster wireless networks, longer battery life&#8230; and on top of all that, advances in nanotechnology has made everything smaller and lighter, too.</p>
<p>My point with this little article, is to share with you an observation that has surfaced in a few of my conversations lately: that these new mobile operating systems are part of a transition towards &#8220;real&#8221; operating systems running on mobile devices. In fact, I&#8217;ve taken to referring to them as &#8220;transition operating systems&#8221; myself.</p>
<p>The evolution of mobile hardware does not cease. What made these new OS&#8217;es possible, is the fact that mobile devices are now almost as fast as &#8220;real&#8221; computers &#8211; and that same progress will put an end to them, too.</p>
<p>Soon, mobile devices will be fast enough to run &#8220;real&#8221; operating systems &#8211; and when that time comes, why would you want a dedicated mobile OS, or even a mobile device dedicated to wireless communications, such as your phone? If you could run a real Windows, OSX or Linux OS on your device, why wouldn&#8217;t you? At least two of the major players in mobile hardware, <a href="http://blogs.forbes.com/briancaulfield/2011/01/24/ard-core-nvidia-could-reveal-quad-core-mobile-processor-this-year/" target="_blank">NVidia</a> and <a href="http://gadgetsteria.com/2011/02/14/qualcomm-announces-2-5ghz-quad-core-snapdragon-processor-mwc/" target="_blank">QualComm</a>, are currently racing to bring <a href="http://en.wikipedia.org/wiki/Multi-core_processor" target="_blank">quad-core processors</a> to market this year, so it may be more imminent than you think.</p>
<p>I suspect certain companies, such as Apple, are already having the same realization &#8211; it was recently <a href="http://www.9to5mac.com/31203/mac-os-x-10-7-to-borrow-some-ios-ui-features-claim" target="_blank">rumored</a> that certain features are being migrated from iOS to OSX. My guess is, they&#8217;re getting ready to add support for iOS apps to OSX, with the intent of running OSX on a mobile device in the no-too-distant future.</p>
<p>This is all speculation, of course &#8211; and either way, it doesn&#8217;t diminish the value of the mobile &#8220;transition&#8221; operating systems, which paved the way for new advances in user interface / user experience development, and have set new standards for human-machine interfaces overall.</p>
<p>And it certainly doesn&#8217;t mean that you should hold out on your business ideas &#8211; waiting for real operating systems to hit your cell phones &#8211; the new mobile platforms are already embedded in our lives, and they are inevitably here to stay, in some form or another.</p>
]]></content:encoded>
			<wfw:commentRss>http://blog.GORGES.us/2011/05/transition-operating-systems/feed/</wfw:commentRss>
		<slash:comments>2</slash:comments>
		</item>
		<item>
		<title>Our Favorite Wireframing Tools</title>
		<link>http://blog.GORGES.us/2011/05/our-favorite-wireframing-tools/</link>
		<comments>http://blog.GORGES.us/2011/05/our-favorite-wireframing-tools/#comments</comments>
		<pubDate>Mon, 16 May 2011 12:18:58 +0000</pubDate>
		<dc:creator>Don Ellis</dc:creator>
				<category><![CDATA[Technology]]></category>
		<category><![CDATA[User Interface UX]]></category>
		<category><![CDATA[Web Development]]></category>
		<category><![CDATA[Website Design]]></category>

		<guid isPermaLink="false">http://blog.GORGES.us/?p=630</guid>
		<description><![CDATA[Experience shows us that taking the time to plan a software project well, even if it is a small website, is time worth spending. Chaos and miscommunication are the expensive parts of projects. Planning reduces them radically. There are several steps in planning. Needs Assessment Platform Analysis Information Analysis Wireframing Prototyping Work and Phase Planning [...]]]></description>
			<content:encoded><![CDATA[<p>Experience shows us that taking the time to plan a software project well, even if it is a small website, is time worth spending. Chaos and miscommunication are the expensive parts of projects. Planning reduces them radically.</p>
<p>There are several steps in planning.</p>
<ul>
<li>Needs Assessment</li>
<li>Platform Analysis</li>
<li>Information Analysis</li>
<li>Wireframing</li>
<li>Prototyping</li>
<li>Work and Phase Planning</li>
<li>Budget Planning</li>
</ul>
<p>All of these save money and improve the quality of the product. As consultants we also know that involvement and review with the client is a critical part of each planning step.</p>
<p>One of my favorite steps is wireframing because this is where the idea first takes graphic form. There are many small apps for making wireframes.</p>
<p>The wireframing tools that we have used within our office, here are some we like:</p>
<p><strong>Eclipse with a Wireframe Sketcher plug-in</strong> ($75 or $37.50 for students).  We have a GORGES license, and there is a downloadable standalone version available (<a href="http://wireframesketcher.com">http://wireframesketcher.com</a>).  You can probably try before buying.</p>
<p><strong>Omnigraffle Pro</strong> (Mac-only application).  We have an office license, but since it is Mac-only only a few developers use it here.</p>
<p><strong>Pencil</strong> (free Firefox Browser plug-in, <a href="http://pencil.evolus.vn">http://pencil.evolus.vn</a>).  Feature-limited and sometimes awkward, but the price is right.</p>
<p><strong>Balsamiq</strong> – online version; useful for working remotely.  We used this a few years back when it was in free beta stage.  <a href="http://www.balsamiq.com">http://www.balsamiq.com</a>.</p>
<p><strong>Microsoft Visio</strong> – my least-favorite tool because of cost and clunkiness, but perhaps the leading prototyping tool thanks to Microsoft’s influence.  <a href="http://office.microsoft.com/en-us/visio/">http://office.microsoft.com/en-us/visio/</a>.</p>
]]></content:encoded>
			<wfw:commentRss>http://blog.GORGES.us/2011/05/our-favorite-wireframing-tools/feed/</wfw:commentRss>
		<slash:comments>1</slash:comments>
		</item>
		<item>
		<title>Why You Should Use CoffeeScript</title>
		<link>http://blog.GORGES.us/2011/05/why-you-should-use-coffeescript/</link>
		<comments>http://blog.GORGES.us/2011/05/why-you-should-use-coffeescript/#comments</comments>
		<pubDate>Mon, 16 May 2011 11:59:02 +0000</pubDate>
		<dc:creator>David Furber</dc:creator>
				<category><![CDATA[Technology]]></category>
		<category><![CDATA[User Interface UX]]></category>
		<category><![CDATA[Web Development]]></category>
		<category><![CDATA[Website Design]]></category>
		<category><![CDATA[CoffeeScript]]></category>
		<category><![CDATA[javascript]]></category>

		<guid isPermaLink="false">http://blog.GORGES.us/?p=632</guid>
		<description><![CDATA[JavaScript (JS) is the programming language that allows web developers to make web pages interactive. Each browser has a slightly different implementation, which developers iron out by using cross-browser frameworks such as JQuery. It doesn&#8217;t matter if the server side component is written in PHP or Ruby &#8211; the front end is always JavaScript. Thanks [...]]]></description>
			<content:encoded><![CDATA[<p>JavaScript (JS) is the programming language that allows web developers to make web pages interactive. Each browser has a slightly different implementation, which developers iron out by using cross-browser frameworks such as JQuery. It doesn&#8217;t matter if the server side component is written in PHP or Ruby &#8211; the front end is always JavaScript. Thanks to Google&#8217;s V8 JavaScript engine and Node.js, JS is also becoming the goto language for realtime interactive web applications such as chat, live blogs. JS is the language behind most everything the end user perceives as cool in the UI.</p>
<p>JS has been around since the late 1990s. Like a house with several owners with different tastes, it&#8217;s been added on to over the years. It&#8217;s really easy to write ugly JS, chock full of bugs, that no other developer will ever want to or be able to read. You can accidentally open memory leaks that crash the browser. You can accidentally put a variable in the global namespace and cause the rest of the program to come to a crashing halt, or behave mysteriously.</p>
<p>At the same time, the core of JS is a beautiful language that, if you stick to the &#8220;good parts,&#8221; can support the richest of rich client apps with grace and aplomb. That is where CoffeeScript comes in.</p>
<p>CoffeeScript (CS) is a language that compiles into JavaScript. It makes it easier and less tedious to do good things with JS, and harder to do bad things. Because CS only turns into JS when the i&#8217;s are dotted and the t&#8217;s are crossed, it is harder to write buggy JS.</p>
<h3>Line Noise Reduction</h3>
<p>Programming languages based on C or Java, such as JS and PHP, are filled with parentheses and semicolons to tell the computer where each block of code starts and ends. Keywords such as &#8220;var&#8221; and &#8220;function&#8221; tell the computer which are variables and which are functions. The programmer&#8217;s eye gets used to them, and may even come to rely on them to interpret code on the screen.</p>
<p>Oftentimes before I write a paper I begin with an outline. Top level items are on the left, and each layer of sub-item gets one level of indentation. My word processor responds when I press the TAB key, and has an indent button. There is no facility to write an outline like the following, nor is there a word processing facility for doing so outside of a code editor:</p>
<pre class="brush: plain; title: ; notranslate">I. The Industrial Revolution {
    A. Origins {
        i. deforestation in 17th century England
        ii. proximity of coal and iron deposits
        iii. accumulation of capital from overseas trade
    }
}</pre>
<p>Therefore if you want to make code more human readable, replace the braces with indentation, and let the compiler put them back in for you to make the computer happy. CS does this, calling it &#8220;syntactic white-space&#8221;:</p>
<pre class="brush: jscript; title: ; notranslate">class App
  ...
  initUI: -&gt;
    if $('#controls').size() is 0
      $('#title').append render('searchControls')
      JKT.earth.addControls() if (JKT.earth)
    ...
</pre>
<p>becomes:</p>
<pre class="brush: jscript; title: ; notranslate">App = (function() {
  function App() {
    ...
  }
  App.prototype.initUI = function() {
    if ($('#controls').size() === 0) {
      $('#title').append(render('searchControls'));
      if (JKT.earth) {
        JKT.earth.addControls();
      }
    }
  }
  return App;
});
</pre>
<p>I personally find the CS more meaningful, and the compiled code to be cleaner than the code I would have written to do the same thing (although it&#8217;s not fashionable to admit that your code isn&#8217;t always the cleanest and most awesome code anyone has ever written).</p>
<p>Notice that the -&gt; stands for &#8220;function&#8221;, and function name colon: means &#8220;add this function to the object prototype.&#8221; Please read the CS documentation a few times before you try CS &#8211; this is just the beginning of the stuff you can do.</p>
<p>The bottom line is that &#8220;line noise reduction&#8221; removes as much computer-oriented meaning as possible from the code, while leaving the human-oriented meaning. The principle is that while programmers write code for computers to run, unless it&#8217;s one-time only throwaway code, they&#8217;re also writing code for other programmers (including themselves when they come back to it three months later to add a new feature). The less time it takes a programmer to figure out what is going on, the higher the business value.</p>
<h3>Meaningful Code is Cleaner Code</h3>
<p>The code snippet above isn&#8217;t necessarily fair, because it doesn&#8217;t show JS &#8220;before I started writing CS.&#8221; I see that it has benefited from the other thing I most like about CS: to make it easier to debug, you have to break it down into smaller parts. Smaller parts that do one thing only are cleaner parts.</p>
<p>That&#8217;s right. In the old regime, I might have a JS file with several hundred lines. When a error pops up, Firebug will tell me what line it&#8217;s on, and I can jump to it in the code editor and fix it. Maybe right there I will add some more code, and pretty soon I&#8217;ll have a large JS file that is hard to edit without Firebug, with lots of interconnected parts and mixed behaviors.</p>
<p>Since CS makes working with the JS object model so easy, I find myself using it. I would take that 500 line JS file and break it into a half dozen or more constituent parts. I have development mode set to deliver these to the browser individually, so if an error crops up, it&#8217;s easier for me to find it in the CS. Production mode combines and minifies the JS into one file for speed of delivery to the user.</p>
<p>If you&#8217;re coming from Ruby or Python, you&#8217;ll recognize the philosophy of human oriented code. You&#8217;ll also recognize that CS is 2/3 Python and 1/3 Ruby. Therefore CS will be easier for you if you know one of those; likewise if you hate Ruby, stay away from CS. (And if you don&#8217;t know JS yet, don&#8217;t try CS&#8230;)</p>
<h3>Gotchas</h3>
<p>I must admit that CS came with some pounding of my head on the table, especially when I started. Here&#8217;s where I got stuck, and what I did to get unstuck:</p>
<ol>
<li>I started by opening a JS file and &#8220;saving as&#8221; a coffee file. DON&#8217;T DO THAT! Create a new coffee file, copy the JS from the JS file, and paste it into the coffee file. The paste action will get the indentation right.</li>
<li>Your code may look indented to you, but it may not be so for coffee. You may have SPACES mixed in with your TABS.</li>
</ol>
<p>When you make changes to coffee but nothing seems to happen in the browser:</p>
<ol>
<li>First check that you are running the compiler. I have a shell script that starts coffee&#8217;s compile-on-edit mode. Sometimes I forget to run it. By the third alert statement, I check for that.</li>
<li>Second, check the compiler output. You may have a syntax error in CS. It won&#8217;t compile at all if there&#8217;s a problem with the CS. If you see &#8220;cannot use a pure statement in an expression&#8221;, it usually means there&#8217;s a rogue space in your tab indentation. Redo the indentation and try again.</li>
<li>Third, if the CS compiled but weird things are happening such as it says a function doesn&#8217;t exist when you know it does, check the compiled JS. Sometimes there is an indentation issue that doesn&#8217;t break the compiler, but causes it to misinterpret where classes end and begin.</li>
</ol>
<h3>In a perfect world</h3>
<p>CS is new. Therefore it is not integrated into most IDEs yet. Since Rails 3.1 uses CoffeeScript, it shouldn&#8217;t be long before you see CS support in Aptana. There is an IntelliJ plugin for RubyMine and PHPStorm. I use the TextMate bundle. My colleague <a href="http://www.GORGES.us/team_jtse">Jim</a> uses Eclipse and edits it with plain text, as he finds it still easier to read than JS.</p>
<h3>Getting started</h3>
<p>I recommend going to the CS website (<a href="http://jashkenas.github.com/coffee-script/">http://jashkenas.github.com/coffee-script/</a>). Read it a few times before you do anything. Bookmark it. Then install node, npm, and coffee.</p>
<p>When I started on CS, I had a few thousand lines of JS already written. Most of it was for a prototype, and I dreaded having to whip it into production grade and add the rest of the features to it. I started learning CS by porting some of the easier JS files. When I was comfortable, I took on the hairy part. It emerged as a piece of code I&#8217;m proud of and like to work with.</p>
<p>In a nutshell, CoffeeScript makes it fun for me to write clean JavaScript, and delivers business value by helping me to write maintainable JavaScript faster that it otherwise would. If you&#8217;re not using it yet, it&#8217;s time to start.</p>
<h3>References/Additional Resources</h3>
<ol>
<li>The CoffeeScript web page: <a href="http://jashkenas.github.com/coffee-script/">http://jashkenas.github.com/coffee-script/</a></li>
<li>My presentation to the Ithaca Web Group: <a href="http://www.slideshare.net/davidfurber/real-lifecoffeescript">http://www.slideshare.net/davidfurber/real-lifecoffeescript</a></li>
<li>Tongue in cheek presentation of why you&#8217;ll hate CS: <a href="http://www.slideshare.net/tim.lossen.de/coffeescript-7-reasons-you-are-gonna-hate-it">http://www.slideshare.net/tim.lossen.de/coffeescript-7-reasons-you-are-gonna-hate-it</a></li>
<li><a href="http://peepcode.com/products/coffeescript">The PeepCode screencast, &#8220;Meet CoffeeScript&#8221;</a></li>
<li><a href="http://pragprog.com/titles/tbcoffee/coffeescript">The PragProg book (written by yours truly), &#8220;CoffeeScript: Accelerated JavaScript Development&#8221;</a></li>
<li><a href="http://coffeescriptcookbook.com/">The CoffeeScript Cookbook wiki (new, but promising)</a></li>
</ol>
]]></content:encoded>
			<wfw:commentRss>http://blog.GORGES.us/2011/05/why-you-should-use-coffeescript/feed/</wfw:commentRss>
		<slash:comments>2</slash:comments>
		</item>
		<item>
		<title>Making your website work for you!</title>
		<link>http://blog.GORGES.us/2011/03/making-your-website-work-for-you/</link>
		<comments>http://blog.GORGES.us/2011/03/making-your-website-work-for-you/#comments</comments>
		<pubDate>Tue, 01 Mar 2011 16:45:57 +0000</pubDate>
		<dc:creator>Christopher Grant</dc:creator>
				<category><![CDATA[Marketing]]></category>
		<category><![CDATA[Website Design]]></category>

		<guid isPermaLink="false">http://blog.GORGES.us/?p=512</guid>
		<description><![CDATA[Find out why your website isn't delivering the traffic and sales conversions you hope for, and receive some tips for improvements.]]></description>
			<content:encoded><![CDATA[<p>You have invested real effort and funds into a new website.  It is beautiful, full of good content, kept up to date and has many features.  But, you aren&#8217;t getting the traffic or sales you are hoping for.  Here, we will help you find out why.</p>
<p>First, you need to establish a clear goal for your site.  While we build many websites and web applications that aren&#8217;t strictly for sales, such social networks, tracking systems, content management systems, and customized back-office tools; this article will focus on websites that are cultivating relationships and selling products or services.</p>
<p>Your product or service has to solve your visitors &#8216;problem or need&#8217;, or they won&#8217;t buy it. Keeping your content up-to-date and fresh is very important.  New content can be provided by the website administrators, site visitors, or automated feeds.  Stale websites are easy to detect and quickly turn away potential customers.</p>
<p>With that in mind, you need to make sure that when you are designing your marketing plan, you allow for a series of action steps.</p>
<p>Incorporate those steps from the beginning into your web marketing plan, and watch your sales grow as you achieve a positive return.</p>
<p>There are four concepts to follow so that your website starts to bring you business, which will, in turn, lead to sales.</p>
<p><strong>ATTENTION</strong>:  Once a visitor to your website has arrived, you have a very short amount of time to grab their attention.  The content on your landing page should prominently display an offer or promise.  Keep the graphics and colors minimal and professional.  Make sure the site loads FAST.</p>
<p><strong>INTEREST</strong>: You have caught your visitors attention, now keep them interested.  Offer information and links that keep them engaged.  Show problems or needs paired up with your solutions to make your offering relevant to their situation.  Offer a new benefit or feature or idea they hadn&#8217;t considered and they will keep reading.</p>
<p><strong>DESIRE</strong>: Their interest has been secured, so now it is time to create desire. Motivate them to take action of some kind.</p>
<p><strong>ACTION</strong>: Your website&#8217;s first action should be to ask your guest to identify himself or herself, and be sure to get some sort of contact information to begin to build a relationship. Get your guest interested in something that you are offering free of charge.</p>
<p>You want your website to work for you.  In order for that to happen, the web marketing plan needs to be built into the website, or given sufficient priority if happening later in the life cycle of your website.</p>
<p>Your website needs to acquire the visitors attention, stir up interest, cultivate desire intelligently, and get them to take some action.  This first action doesn&#8217;t need to cost any money.  Establish communications, usually via email or auto-responders that are thoroughly planned.</p>
<p>Try to put yourself in the shoes of your target customer. If you were visiting a website, what would you want to see there? What would fulfill your needs?</p>
<p>Remember that if your visitor visits your website and she doesn’t leave you with any way to contact her, your website has not been successful in this most-important first step.</p>
<p>If you want your visitor to connect with you, tell him or her. Let your visitor know in clear and simple terms how much you want to interact with him or her and make it easy.  There are many ways in which to successfully use your website. You just need to put those ways to work and you will start to enjoy more and more success for your business.</p>
<p>Check more about our <a href="http://www.gorges.us/web-marketing">Web Marketing Services</a>.</p>
]]></content:encoded>
			<wfw:commentRss>http://blog.GORGES.us/2011/03/making-your-website-work-for-you/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>User Interface Design &#8211; Information Design &#8211; Search Design</title>
		<link>http://blog.GORGES.us/2010/05/user-interface-design-information-design-search-design/</link>
		<comments>http://blog.GORGES.us/2010/05/user-interface-design-information-design-search-design/#comments</comments>
		<pubDate>Mon, 24 May 2010 13:27:07 +0000</pubDate>
		<dc:creator>Don Ellis</dc:creator>
				<category><![CDATA[Content Management]]></category>
		<category><![CDATA[Website Design]]></category>

		<guid isPermaLink="false">http://blog.GORGES.us/?p=246</guid>
		<description><![CDATA[Google has confirmed what academics have claimed with mixed success for centuries, “Information is gold.” But, how do we access the gold? Google has kind of answered that question too; you google it. But, what do you get in the data return. “Mary Kay Smith” returns 2,160,000 records, most of the top ones being from [...]]]></description>
			<content:encoded><![CDATA[<p>Google has confirmed what academics have claimed with mixed success for centuries, “Information is gold.” But, how do we access the gold?</p>
<p>Google has kind of answered that question too; you google it. But, what do you get in the data return. “Mary Kay Smith” returns 2,160,000 records, most of the top ones being from services offering to help you find your own Mary Kay. Maybe this is a good start when on the open Internet, but what if Mary Kay Smith works in the Kansas City branch of your company, even with some filtering words like, Kansas City and your company’s name, the return is still going to be front-loaded with helpful services.</p>
<p>This type of search is called a “Free Word” search. It has exception value. Most of us use it more than daily. But, it is not the only way to search and it is often not the appropriate way. </p>
<p>Assuming your company has an employee database you could use an in-house search tool, maybe still a Free Word search tool accessing just that one database. The return would show you all the Mary Kays in your company. Assuming only a few, you quickly click the one showing the KC address and there is her phone and fax number.</p>
<p>We could save a click. Why not have a drop-down list of all the employees? Let’s assume a few thousand. Yeah, the drop-down is too long. So maybe we have instead two “controls”. One is a radio button set asking “First Name” or “Last Name”. The other is an alphabet list. So now we get all the Matts, Marys, Marthas, and so forth. Right, what if we add one more control to limit us to Kansas City. Now we have a “Structured Search”.</p>
<p>You have probably thought of a still better or different way to find Mary Kay using a Structured Search, or maybe even, a combination of  Structured Search and Free Search. This is Information Design – the search aspect of Information Design.</p>
<p>Let’s ask a polar question, what is the essential difference between Free Search and Structured Search? Answer is Capital Cost. It will always cost less, even much less, to setup a Free Search. But what about Operational Cost. If employees are searching each other out all day, how much is saved by providing a quick and certain search method? How much is saved by shipping the printer to the right Mary Kay?</p>
<p>Structured Searches cost more upfront because someone has to imagine them, organize a database, setup strict methods for adding, editing, and deleting from the database, and provide a set of controls for making the search. Not all of these costs are avoided by choosing Free Search, but many are.</p>
<p>It’s finally a User Interface decision involving cost, scalability, and accuracy. This is a favorite subject of mine. Call me for quick discussion or to arrange analysis of your search needs.</p>
]]></content:encoded>
			<wfw:commentRss>http://blog.GORGES.us/2010/05/user-interface-design-information-design-search-design/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>User Interface Design – Information Design and Design Evaluation</title>
		<link>http://blog.GORGES.us/2010/05/user-interface-design-%e2%80%93-information-design-%e2%80%93-design-evaluation/</link>
		<comments>http://blog.GORGES.us/2010/05/user-interface-design-%e2%80%93-information-design-%e2%80%93-design-evaluation/#comments</comments>
		<pubDate>Thu, 13 May 2010 12:25:20 +0000</pubDate>
		<dc:creator>Don Ellis</dc:creator>
				<category><![CDATA[Content Management]]></category>
		<category><![CDATA[Website Design]]></category>

		<guid isPermaLink="false">http://blog.GORGES.us/?p=231</guid>
		<description><![CDATA[My goal is to alert you to the existence and depth of the field of Information Design, while also providing the rudiments for evaluating Information Design in your business application, database application, or website.]]></description>
			<content:encoded><![CDATA[<p>In some inner circles the terms “Information Design” has been around for a long time. There are even famous “information designers” such as Edward Tufte at Yale University, the author of Envisioning Information and possibly the inventor of the term.</p>
<p>So why am I inviting you into these inner circles? An information system known as the Internet has pushed its way into your space. You have a website and you may or may not be prepared to deal with anything called Information Design. Here is some help.</p>
<p>Tufte alone has written seven books touching this subject, so I will not presume to encapsulate it here. My goal is to alert you to the existence and depth of this field, while also providing the rudiments for evaluating Information Design in your business application, database application, or website.</p>
<p>Here are two websites by GORGES that show just what Information Design deals with. The first site, http://birdsandbayous.org, is so simple that information design is little more than not making basic mistakes or omissions. There are only a few “information points” and only a basic navigation is needed to reach these points and return from them. This information design is analogous to the chapter ordering in a very small book.</p>
<p>The Martha Stewart site, http://www.marthastewart.com, is on a different planet. Every graphic and text object on this home page is a link to something, and amazingly, it all makes sense. It is visually organized to lead the visitor comfortably through dense information. </p>
<p>Note further, that much of the home page information is layered on top of other information and the visitor is invited to interact with it – to engage.</p>
<p>So it is dense, multi-layered, diverse, and interactive. </p>
<p>Your website&#8217;s  complexity probably lies somewhere between the Birds and Bayous website and Martha Stewart’s. What can you learn from these two sites to help you evaluate your website or work with your website designers? Here’s one thing:</p>
<p>Insist that when presenting a design to you the designer makes at least three systematic passes across the demo pages in some carefully ordered, slow-paced way.<br />
• In the first pass you should be told both “how” and “why” the information design suits your information set.<br />
• In the second pass you should be told both “how” and “why” the graphic design suits you information set, as well as “how” and “why” it is appropriate to your brand and your communication intention for each of the audiences you have identified.<br />
• In the third pass the designer needs to explain how the graphic design and information designs reinforce each other.</p>
<p>For the best result, allow the designers to make the points above without interruption and then go through it all again in a question and answer format. Good designers seek good criticism.</p>
<p>Here’s one more information design evaluation thing:</p>
<p>Ask two or three innocents to do the “What do you see?” test. With the page hidden, tell them you are going to ask them what they see first. Show the page. Then ask what they see second. You will get variation from person to person, but not much. Do this for the home page and for several subordinate pages. Does the visual prioritizing match your message plan?</p>
<p>My next posting will be also about Information Design &#8211; searching for information.</p>
]]></content:encoded>
			<wfw:commentRss>http://blog.GORGES.us/2010/05/user-interface-design-%e2%80%93-information-design-%e2%80%93-design-evaluation/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>User Interface Design (UX) – Checklist &#8211; Data Records</title>
		<link>http://blog.GORGES.us/2010/03/user-interface-design-ux-%e2%80%93-checklist-data-records/</link>
		<comments>http://blog.GORGES.us/2010/03/user-interface-design-ux-%e2%80%93-checklist-data-records/#comments</comments>
		<pubDate>Mon, 22 Mar 2010 14:45:56 +0000</pubDate>
		<dc:creator>Don Ellis</dc:creator>
				<category><![CDATA[Content Management]]></category>
		<category><![CDATA[Technology]]></category>
		<category><![CDATA[User Interface UX]]></category>
		<category><![CDATA[Website Design]]></category>
		<category><![CDATA[interface design]]></category>
		<category><![CDATA[user interface]]></category>

		<guid isPermaLink="false">http://blog.GORGES.us/?p=180</guid>
		<description><![CDATA[User Interface Design – Content Checklist &#8211; Data Records When designing and critiquing Websites or Software the User Interface (UX) needs explicit and systematic attention. Designers and Clients need to use checklists and apply them in prescribed ways. Here is a small part of one of my Content Checklists. This applies to data presentations and [...]]]></description>
			<content:encoded><![CDATA[<p>User Interface Design – Content Checklist &#8211; Data Records</p>
<p>When designing and critiquing Websites or Software the User Interface (UX) needs explicit and systematic attention. Designers and Clients need to use checklists and apply them in prescribed ways. Here is a small part of one of my Content Checklists. This applies to data presentations and forms.</p>
<p>A) When the number of the rows, also called records, in a page reaches more then XX, a pagination bar should appear above and below the list. It looks like this:</p>
<p>First  Previous  1  2  3  4  [5]  6  7  8  9  10  Next  Last  [optionally,<br />
All]</p>
<p>You just need to click on the page number of where you want to go.</p>
<p>B) The page numbers must be easy to read and click on. The font size must be readable and there must be enough spacing between each number so that clicking on the number you want is faultless.</p>
<p>C) An appropriate number of rows is a complex decision. It depends on the content and the user’s need to compare data row-to-row. Typically it can be 10 or 25. The number of records is also a consideration.</p>
<p>D) In some cases it may be necessary to provide an option for showing “ALL” records, or even showing a page of records “Beginning with Record # XXX”.</p>
<p>E) Unless budget constraints are very tight, the records should be sortable by their header titles. It is important for the current sort order to persist while the various record set controls described above are changed.</p>
]]></content:encoded>
			<wfw:commentRss>http://blog.GORGES.us/2010/03/user-interface-design-ux-%e2%80%93-checklist-data-records/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Getting good rankings on Google</title>
		<link>http://blog.GORGES.us/2009/12/getting-good-rankings-on-google/</link>
		<comments>http://blog.GORGES.us/2009/12/getting-good-rankings-on-google/#comments</comments>
		<pubDate>Fri, 18 Dec 2009 19:23:46 +0000</pubDate>
		<dc:creator>Christopher Grant</dc:creator>
				<category><![CDATA[Marketing]]></category>
		<category><![CDATA[Website Design]]></category>
		<category><![CDATA[engines]]></category>
		<category><![CDATA[google]]></category>
		<category><![CDATA[ranking]]></category>
		<category><![CDATA[search]]></category>
		<category><![CDATA[SEO]]></category>

		<guid isPermaLink="false">http://blog.GORGES.us/?p=174</guid>
		<description><![CDATA[This article is a brief overview on some of the many effective strategies to help your potential customers find your website. ]]></description>
			<content:encoded><![CDATA[<p>This article is a brief overview on some of the many effective strategies to help your potential customers find your website.  I&#8217;d like to answer one of the most common questions we get here at Gorges Web Sites: how do I get good rankings in Google?</p>
<p>You may be doing many of these already, others you&#8217;ve heard of but haven&#8217;t done, and there may be a few that are new to you.  There are thousands of articles on this very topic on the Internet.  I can&#8217;t claim to have read all of them, and the items in this article aren&#8217;t really earth-shattering, but perhaps will represent a kind of a summary for you to help you focus and get more traffic.</p>
<p><strong>Search Engine Optimization (SEO) Strategies</strong></p>
<p>The most important, and inexpensive strategy is to develop high rankings for your preferred keywords in the &#8216;organic&#8217; searches, for instance on Google.  So let&#8217;s start with ways to deliver to search engines concise information about what your website is all about.</p>
<p><strong>1) Write a keyword-rich title for each page</strong></p>
<p>Use keywords in your titles.  The title of a page is very important to Google.  So take great care here.  Don&#8217;t use common words such as &#8216;and&#8217; or &#8216;the&#8217; if you can avoid them.</p>
<p><strong>2) Write a description META tag</strong></p>
<p>While META tags aren&#8217;t as important as they once were for search engine rankings, they still matter.  A description is  a sentence or two describing the content of the web page, using the keywords that page is focusing on.  The first 60 characters or so will appear in Google when that page is being returned in a search result.  Every page in your site should have distinct title and META description.</p>
<p><strong>3) Include your keywords in the headings and sub-headings of your content</strong></p>
<p>Search engines look at the headings and sub-headings (H1, H2, H3 etc) tags, to learn more about the content of your page.  So craft keyword-dense headings as part of your content development efforts.</p>
<p><strong>4) Position your keywords in the first paragraph of the body text</strong></p>
<p>Search engines read content the way humans do, top down, so put the most important keywords and phrases early on in the content.  More is not better, be judicious, but make sure you use them.</p>
<p><strong>5) Include descriptive keywords in the ALT attribute of image tags</strong></p>
<p>Taking this step will help your site be more useful to visitors with sight-impairments, and also helps your images find their way into the Google image library, which can bring you more traffic.</p>
<p><strong>6) Use keywords in hyperlinks</strong></p>
<p>Help the search engines understand what is important by using your keywords in all links.  Go a bit further by using your keywords in the actual page names.</p>
<p><strong>7) Make your navigation system search engine friendly</strong></p>
<p>You want search engine robots to find all the pages in your site. JavaScript and Flash navigation menus that appear when you hover are great for humans, but search engines don&#8217;t read JavaScript and Flash very well. Therefore, supplement JavaScript and Flash menus with regular HTML links at the bottom of the page, ensuring that a chain of hyperlinks exists that take a search engine spider from your home page to every page in your site.</p>
<p><strong>8 ) Create a site map</strong></p>
<p>A site map page with links to all your pages can help search engines (and visitors) find all your pages, particularly if you have a larger site. You can use a free tools to create XML sitemaps that are used by the major search engines to index your webpages accurately. Upload your sitemap to your website.</p>
<p><strong>9) Develop web pages focused on each of your keywords</strong></p>
<p>Google &#8216;sees&#8217; each page in your site as separate from the rest, so tune up each page to focus on a few specific keywords.</p>
<p>There is much more to SEO than this, but this should give you a good start.</p>
<p>Good luck in your quest for ever-higher rankings!</p>
]]></content:encoded>
			<wfw:commentRss>http://blog.GORGES.us/2009/12/getting-good-rankings-on-google/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
	</channel>
</rss>

