<?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>IANP.ORG &#187; User Experience</title>
	<atom:link href="http://ianp.org/tag/user-experience/feed/" rel="self" type="application/rss+xml" />
	<link>http://ianp.org</link>
	<description>random thought and mutterings</description>
	<lastBuildDate>Thu, 25 Mar 2010 09:41:49 +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>Installing Multiple JVMs</title>
		<link>http://ianp.org/2006/09/installing-multiple-jvms/</link>
		<comments>http://ianp.org/2006/09/installing-multiple-jvms/#comments</comments>
		<pubDate>Mon, 11 Sep 2006 23:19:25 +0000</pubDate>
		<dc:creator>Ian Phillips</dc:creator>
				<category><![CDATA[Java]]></category>
		<category><![CDATA[Technology]]></category>
		<category><![CDATA[User Experience]]></category>

		<guid isPermaLink="false">http://ianp.org/?p=66</guid>
		<description><![CDATA[Some discussion in the comments on Romain&#8217;s weblog regarding Java applications that install private VMs. People seem to be either arguing for or against including a VM, but there is obviously a better way.
What the installer should really do is check for a suitable JVM and if it can&#8217;t find one, offer to download it. [...]]]></description>
			<content:encoded><![CDATA[<p>Some discussion in <a href="http://jroller.com/page/gfx/?anchor=lightzone_a_fantastic_java_app">the comments on Romain&#8217;s weblog</a> regarding Java applications that install private VMs. People seem to be either arguing for or against including a VM, but there is obviously a better way.
What the installer should really do is check for a suitable JVM and if it can&#8217;t find one, offer to download it. Of course the application launcher would also need to perform the same check in case it gets removed at a later&nbsp;date.</p>

<p>One (commercial) solution which seems to do this is <a href="http://www.ej-technologies.com/products/install4j/overview.html">Install4J</a> although I can&#8217;t verify how successful the approach is as I haven&#8217;t used it&nbsp;personally.</p>

<p><em>Update:</em> There is a new version of Install4J out now and the entry level price point is into 4 figures, so I won&#8217;t be using it any time&nbsp;soon.</p>
]]></content:encoded>
			<wfw:commentRss>http://ianp.org/2006/09/installing-multiple-jvms/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Some Thoughts on the Ideal Feature Set</title>
		<link>http://ianp.org/2006/08/some-thoughts-on-the-ideal-feature-set/</link>
		<comments>http://ianp.org/2006/08/some-thoughts-on-the-ideal-feature-set/#comments</comments>
		<pubDate>Wed, 09 Aug 2006 09:26:21 +0000</pubDate>
		<dc:creator>Ian Phillips</dc:creator>
				<category><![CDATA[Technology]]></category>
		<category><![CDATA[User Experience]]></category>

		<guid isPermaLink="false">http://ianp.org/?p=64</guid>
		<description><![CDATA[Commenting on Are your users stuck in &#8216;P&#8217; mode?. I&#8217;d see the green &#38; purple circles as about the same size, but offset slightly, like&#160;this:



There should definitely be a large overlap between the two, but the product should be able to do a few things that the user isn&#8217;t up to yet, in other words [...]]]></description>
			<content:encoded><![CDATA[<p>Commenting on <a href="http://headrush.typepad.com/creating_passionate_users/2006/08/are_your_users_.html">Are your users stuck in &#8216;P&#8217; mode?</a>. I&#8217;d see the green &amp; purple circles as about the same size, but offset slightly, like&nbsp;this:</p>

<p><img src="/images/2006/08/venn-ideal-features.png" alt="The Ideal Feature Set" /></p>

<p>There should definitely be a large overlap between the two, but the product should be able to do a few things that the user isn&#8217;t up to yet, in other words it should actively help the user to &#8216;raise her game&#8217; and improve. In a product for complete beginners (in whatever domain) this could simply take the form of wizards that guide the user through various tasks while explaining how to do them manually in future (and the implication here is that they explain how the manual process introduces more flexibility/options otherwise why not just always use the&nbsp;wizard).</p>

<p>At the same time, the user should be a bit ahead of the product in a few areas, I feel that this is important as this is where we will improve our product for the next release. The beauty of this is that each user will overlap in a different way, so by satisfying the needs of any 2 different users we should always be able to stay in this&nbsp;position.</p>

<p><img src="/images/2006/08/venn-too-few-features.png" alt="Too Few Features" /></p>

<p>The trick to working like this is to discern when the 2 circles are starting to diverge in size, i.e. when our product is starting to fall behind users needs (the purple circle is expading away from the green) and we need to spend more effort adding the features that they need; or, when the opposite is happening, and the product is capable of doing way more than the user (this is the original &#8216;P&#8217; mode&nbsp;scenario).</p>
]]></content:encoded>
			<wfw:commentRss>http://ianp.org/2006/08/some-thoughts-on-the-ideal-feature-set/feed/</wfw:commentRss>
		<slash:comments>1</slash:comments>
		</item>
		<item>
		<title>Dynamic Date Formatting</title>
		<link>http://ianp.org/2006/04/dynamic-date-formatting/</link>
		<comments>http://ianp.org/2006/04/dynamic-date-formatting/#comments</comments>
		<pubDate>Mon, 17 Apr 2006 17:12:49 +0000</pubDate>
		<dc:creator>Ian Phillips</dc:creator>
				<category><![CDATA[Java]]></category>
		<category><![CDATA[RvSnoop]]></category>
		<category><![CDATA[Technology]]></category>
		<category><![CDATA[User Experience]]></category>

		<guid isPermaLink="false">http://ianp.org/?p=60</guid>
		<description><![CDATA[I&#8217;ve noticed a neat feature in Path Finder where it changes the date format used to display time stamps in the main table based on the width of the column. In RvSnoop I was allowing the user to set a preferred format as a configuration option, but this seems much&#160;better.

It turns out that this is [...]]]></description>
			<content:encoded><![CDATA[<p>I&#8217;ve noticed a neat feature in <a href="http://www.cocoatech.com/pf4/">Path Finder</a> where it changes the date format used to display time stamps in the main table based on the width of the column. In <a href="http://rvsnoop.org">RvSnoop</a> I was allowing the user to set a preferred format as a configuration option, but this seems much&nbsp;better.</p>

<p>It turns out that this is pretty easy to achieve in Java, just use the following&nbsp;class:</p>


<div class="wp_syntax"><div class="code"><pre class="java" style="font-family:monospace;"><span style="color: #000000; font-weight: bold;">public</span> <span style="color: #000000; font-weight: bold;">class</span> DateCellRenderer <span style="color: #000000; font-weight: bold;">extends</span> <span style="color: #003399;">DefaultTableCellRenderer</span> <span style="color: #009900;">&#123;</span>
    <span style="color: #666666; font-style: italic;">// Or load these from a user preference...</span>
    <span style="color: #000000; font-weight: bold;">private</span> <span style="color: #000000; font-weight: bold;">static</span> <span style="color: #000000; font-weight: bold;">final</span> <span style="color: #003399;">DateFormat</span><span style="color: #009900;">&#91;</span><span style="color: #009900;">&#93;</span> dateFormats <span style="color: #339933;">=</span> <span style="color: #009900;">&#123;</span>
    <span style="color: #000000; font-weight: bold;">new</span> <span style="color: #003399;">SimpleDateFormat</span><span style="color: #009900;">&#40;</span><span style="color: #0000ff;">&quot;yyyy-MM-dd HH:mm:ss.SSS&quot;</span><span style="color: #009900;">&#41;</span>,
    <span style="color: #000000; font-weight: bold;">new</span> <span style="color: #003399;">SimpleDateFormat</span><span style="color: #009900;">&#40;</span><span style="color: #0000ff;">&quot;yy-MM-dd HH:mm:ss.SSS&quot;</span><span style="color: #009900;">&#41;</span>,
    <span style="color: #000000; font-weight: bold;">new</span> <span style="color: #003399;">SimpleDateFormat</span><span style="color: #009900;">&#40;</span><span style="color: #0000ff;">&quot;MM/dd HH:mm:ss.SSS&quot;</span><span style="color: #009900;">&#41;</span>,
    <span style="color: #000000; font-weight: bold;">new</span> <span style="color: #003399;">SimpleDateFormat</span><span style="color: #009900;">&#40;</span><span style="color: #0000ff;">&quot;HH:mm:ss.SSS&quot;</span><span style="color: #009900;">&#41;</span>,
    <span style="color: #000000; font-weight: bold;">new</span> <span style="color: #003399;">SimpleDateFormat</span><span style="color: #009900;">&#40;</span><span style="color: #0000ff;">&quot;HH:mm:ss.SS&quot;</span><span style="color: #009900;">&#41;</span>,
    <span style="color: #000000; font-weight: bold;">new</span> <span style="color: #003399;">SimpleDateFormat</span><span style="color: #009900;">&#40;</span><span style="color: #0000ff;">&quot;HH:mm:ss.S&quot;</span><span style="color: #009900;">&#41;</span>,
    <span style="color: #000000; font-weight: bold;">new</span> <span style="color: #003399;">SimpleDateFormat</span><span style="color: #009900;">&#40;</span><span style="color: #0000ff;">&quot;HH:mm:ss&quot;</span><span style="color: #009900;">&#41;</span>,
    <span style="color: #000000; font-weight: bold;">new</span> <span style="color: #003399;">SimpleDateFormat</span><span style="color: #009900;">&#40;</span><span style="color: #0000ff;">&quot;HH:mm&quot;</span><span style="color: #009900;">&#41;</span> <span style="color: #009900;">&#125;</span><span style="color: #339933;">;</span>
    <span style="color: #000000; font-weight: bold;">private</span> <span style="color: #000066; font-weight: bold;">int</span> currentWidth<span style="color: #339933;">;</span>
    <span style="color: #000000; font-weight: bold;">private</span> <span style="color: #003399;">Font</span> currentFont<span style="color: #339933;">;</span>
    <span style="color: #000000; font-weight: bold;">private</span> <span style="color: #003399;">DateFormat</span> currentFormat<span style="color: #339933;">;</span>
    <span style="color: #000000; font-weight: bold;">private</span> <span style="color: #000000; font-weight: bold;">final</span> <span style="color: #003399;">Date</span> date <span style="color: #339933;">=</span> <span style="color: #000000; font-weight: bold;">new</span> <span style="color: #003399;">Date</span><span style="color: #009900;">&#40;</span><span style="color: #009900;">&#41;</span><span style="color: #339933;">;</span>
    <span style="color: #000000; font-weight: bold;">public</span> <span style="color: #003399;">Component</span> getTableCellRendererComponent<span style="color: #009900;">&#40;</span><span style="color: #003399;">JTable</span> table, <span style="color: #003399;">Object</span> value,
    <span style="color: #000066; font-weight: bold;">boolean</span> isSelected, <span style="color: #000066; font-weight: bold;">boolean</span> hasFocus, <span style="color: #000066; font-weight: bold;">int</span> row, <span style="color: #000066; font-weight: bold;">int</span> col<span style="color: #009900;">&#41;</span> <span style="color: #009900;">&#123;</span>
        <span style="color: #003399;">DateFormat</span> format <span style="color: #339933;">=</span> getFormat<span style="color: #009900;">&#40;</span>table.<span style="color: #006633;">getColumnModel</span><span style="color: #009900;">&#40;</span><span style="color: #009900;">&#41;</span>.<span style="color: #006633;">getColumn</span><span style="color: #009900;">&#40;</span>col<span style="color: #009900;">&#41;</span>.<span style="color: #006633;">getWidth</span><span style="color: #009900;">&#40;</span><span style="color: #009900;">&#41;</span>, table<span style="color: #009900;">&#41;</span><span style="color: #339933;">;</span>
        <span style="color: #003399;">String</span> displayed <span style="color: #339933;">=</span> value <span style="color: #339933;">!=</span> <span style="color: #000066; font-weight: bold;">null</span> <span style="color: #339933;">?</span> format.<span style="color: #006633;">format</span><span style="color: #009900;">&#40;</span><span style="color: #009900;">&#40;</span><span style="color: #003399;">Date</span><span style="color: #009900;">&#41;</span> value<span style="color: #009900;">&#41;</span> <span style="color: #339933;">:</span> <span style="color: #0000ff;">&quot;&quot;</span><span style="color: #339933;">;</span>
        <span style="color: #000000; font-weight: bold;">return</span> <span style="color: #000000; font-weight: bold;">super</span>.<span style="color: #006633;">getTableCellRendererComponent</span><span style="color: #009900;">&#40;</span>table, displayed, isSelected, hasFocus, row, col<span style="color: #009900;">&#41;</span><span style="color: #339933;">;</span>
    <span style="color: #009900;">&#125;</span>
    <span style="color: #000000; font-weight: bold;">private</span> <span style="color: #003399;">DateFormat</span> getFormat<span style="color: #009900;">&#40;</span><span style="color: #000066; font-weight: bold;">int</span> width, <span style="color: #003399;">JTable</span> table<span style="color: #009900;">&#41;</span> <span style="color: #009900;">&#123;</span>
        <span style="color: #003399;">Font</span> font <span style="color: #339933;">=</span> table.<span style="color: #006633;">getFont</span><span style="color: #009900;">&#40;</span><span style="color: #009900;">&#41;</span><span style="color: #339933;">;</span>
        <span style="color: #000000; font-weight: bold;">if</span> <span style="color: #009900;">&#40;</span>currentWidth <span style="color: #339933;">==</span> width <span style="color: #339933;">&amp;&amp;</span> currentFormat <span style="color: #339933;">!=</span> <span style="color: #000066; font-weight: bold;">null</span> <span style="color: #339933;">&amp;&amp;</span> font.<span style="color: #006633;">equals</span><span style="color: #009900;">&#40;</span>currentFont<span style="color: #009900;">&#41;</span><span style="color: #009900;">&#41;</span> <span style="color: #009900;">&#123;</span>
            <span style="color: #000000; font-weight: bold;">return</span> currentFormat<span style="color: #339933;">;</span>
        <span style="color: #009900;">&#125;</span>
        currentWidth <span style="color: #339933;">=</span> width<span style="color: #339933;">;</span>
        currentFont <span style="color: #339933;">=</span> font<span style="color: #339933;">;</span>
        <span style="color: #003399;">FontMetrics</span> metrics <span style="color: #339933;">=</span> table.<span style="color: #006633;">getFontMetrics</span><span style="color: #009900;">&#40;</span>font<span style="color: #009900;">&#41;</span><span style="color: #339933;">;</span>
        date.<span style="color: #006633;">setTime</span><span style="color: #009900;">&#40;</span><span style="color: #003399;">System</span>.<span style="color: #006633;">currentTimeMillis</span><span style="color: #009900;">&#40;</span><span style="color: #009900;">&#41;</span><span style="color: #009900;">&#41;</span>
        <span style="color: #000000; font-weight: bold;">for</span> <span style="color: #009900;">&#40;</span><span style="color: #003399;">DateFormat</span> df <span style="color: #339933;">:</span> dateFormats<span style="color: #009900;">&#41;</span> <span style="color: #009900;">&#123;</span>
            <span style="color: #000000; font-weight: bold;">if</span> <span style="color: #009900;">&#40;</span>metrics.<span style="color: #006633;">stringWidth</span><span style="color: #009900;">&#40;</span>df.<span style="color: #006633;">format</span><span style="color: #009900;">&#40;</span>date<span style="color: #009900;">&#41;</span><span style="color: #009900;">&#41;</span> <span style="color: #339933;">&lt;</span> width<span style="color: #009900;">&#41;</span> <span style="color: #009900;">&#123;</span>
                currentFormat <span style="color: #339933;">=</span> df<span style="color: #339933;">;</span>
                <span style="color: #000000; font-weight: bold;">return</span> df<span style="color: #339933;">;</span>
                <span style="color: #009900;">&#125;</span>
            <span style="color: #009900;">&#125;</span>
        <span style="color: #009900;">&#125;</span>
        currentFormat <span style="color: #339933;">=</span> dateFormats<span style="color: #009900;">&#91;</span>dateFormats.<span style="color: #006633;">length</span> <span style="color: #339933;">-</span> <span style="color: #cc66cc;">1</span><span style="color: #009900;">&#93;</span><span style="color: #339933;">;</span>
        <span style="color: #000000; font-weight: bold;">return</span> currentFormat<span style="color: #339933;">;</span>
    <span style="color: #009900;">&#125;</span>
<span style="color: #009900;">&#125;</span></pre></div></div>


<p>You will need to register it with your <code>JTable</code> via <code>myTable.getColumnModel().getColumn(0).setCellRenderer(myRenderer);</code> and away you go. You can have more or less format options by altering the static array in the&nbsp;class.</p>
]]></content:encoded>
			<wfw:commentRss>http://ianp.org/2006/04/dynamic-date-formatting/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Where is the user interface?</title>
		<link>http://ianp.org/2005/11/where-is-the-user-interface/</link>
		<comments>http://ianp.org/2005/11/where-is-the-user-interface/#comments</comments>
		<pubDate>Thu, 17 Nov 2005 15:56:55 +0000</pubDate>
		<dc:creator>Ian Phillips</dc:creator>
				<category><![CDATA[Technology]]></category>
		<category><![CDATA[User Experience]]></category>
		<category><![CDATA[XML]]></category>

		<guid isPermaLink="false">http://ianp.org/?p=56</guid>
		<description><![CDATA[This is related to this quote by Michael Kay on the XML-DEV mailing list, on the subject of&#160;validation.


  There is also scope for reasonableness checks to catch data input
  errors. But they belong as close to the user interface level as
  possible, not at the information management&#160;level.


Which is fine as far as [...]]]></description>
			<content:encoded><![CDATA[<p>This is related to this quote by Michael Kay on the XML-DEV mailing list, on the subject of&nbsp;validation.</p>

<blockquote>
  <p>There is also scope for reasonableness checks to catch data input
  errors. But they belong as close to the user interface level as
  possible, not at the information management&nbsp;level.</p>
</blockquote>

<p>Which is fine as far as it goes but the use of the term &#8216;user interface&#8217; is misleading, I think, to most people (myself included) this implies &#8216;end user&#8217; but this is not always the case. If, for example, you are writing a service (web- or otherwise) for external, or even only internal, use, then the &#8216;user interface&#8217; is the service interface that you expose and it&#8217;s perfectly reasonable (in fact, I&#8217;d argue that it&#8217;s pretty much essential) to validate every message that your service&nbsp;receives.</p>
]]></content:encoded>
			<wfw:commentRss>http://ianp.org/2005/11/where-is-the-user-interface/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Gimp UI Blooper</title>
		<link>http://ianp.org/2004/05/gimp-ui-blooper/</link>
		<comments>http://ianp.org/2004/05/gimp-ui-blooper/#comments</comments>
		<pubDate>Wed, 19 May 2004 23:05:57 +0000</pubDate>
		<dc:creator>Ian Phillips</dc:creator>
				<category><![CDATA[Technology]]></category>
		<category><![CDATA[Gimp]]></category>
		<category><![CDATA[User Experience]]></category>

		<guid isPermaLink="false">http://ianp.org/?p=40</guid>
		<description><![CDATA[Why would the developers of Gimp want to offer LZW compression as an option in the save as tiff dialog of said application? When you try to select this it just whines about a patent issue and then the save fails. It seems to me that it would be far better to just not offer [...]]]></description>
			<content:encoded><![CDATA[<p>Why would the developers of <a href="http://www.gimp.org">Gimp</a> want to offer <abbr title="Lempel, Ziv, Welch">LZW</abbr> compression as an option in the save as tiff dialog of said application? When you try to select this it just whines about a patent issue and then the save fails. It seems to me that it would be far better to just not offer the option, or only offer the option when it can be&nbsp;fulfilled.</p>

<p>Let&#8217;s hope that they&#8217;ll fix this in an upcoming release, it doesn&#8217;t seem like it would be much work for somebody alreay familiar with the code&nbsp;base.</p>
]]></content:encoded>
			<wfw:commentRss>http://ianp.org/2004/05/gimp-ui-blooper/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>SWT Look &amp; Feel</title>
		<link>http://ianp.org/2004/04/swt-look-feel/</link>
		<comments>http://ianp.org/2004/04/swt-look-feel/#comments</comments>
		<pubDate>Sun, 11 Apr 2004 07:04:14 +0000</pubDate>
		<dc:creator>Ian Phillips</dc:creator>
				<category><![CDATA[Java]]></category>
		<category><![CDATA[Technology]]></category>
		<category><![CDATA[Eclipse]]></category>
		<category><![CDATA[User Experience]]></category>

		<guid isPermaLink="false">http://ianp.org/?p=39</guid>
		<description><![CDATA[

Recently in the Eclipse news group there&#8217;s been a lot of complaints about the new widget style that is now the default in mlilestone 8. Many people are saying that the new widgets are bad because they are emulated in Java, and not real native widgets at all. This seems really odd to me in [...]]]></description>
			<content:encoded><![CDATA[<p><img src="/images/2004/04/emulated-vs-native.png" alt="New Eclipse Widgets" /></p>

<p>Recently in the <a href="news://news.eclipse.org/eclipse.platform">Eclipse news group</a> there&#8217;s been a lot of complaints about the new widget style that is now the default in mlilestone 8. Many people are saying that the new widgets are bad because they are emulated in Java, and not real native widgets at all. This seems really odd to me in some ways, since the widgets have always been emulated in Java, it&#8217;s not llike this is some new thing that&#8217;s been sprung upon us by the&nbsp;developers.</p>

<p>But then in other ways I&#8217;m not surprised, because for all Eclipse&#8217;s touted native look and feel it&#8217;s always really been a Windows application. Compare the new Eclipse widgets with those of a native Gnome application (GEdit in this case) and you&#8217;ll see at once that they look out of place. But this has always been the case. The real solution surely, is to use genuine native widgets here. The only reason the Windows crowd are screaming now is that Eclipse is becoming more cross platform in it&#8217;s look and feel, not&nbsp;less.</p>
]]></content:encoded>
			<wfw:commentRss>http://ianp.org/2004/04/swt-look-feel/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Eclipse 3 Milestone 8</title>
		<link>http://ianp.org/2004/03/eclipse-3-milestone-8/</link>
		<comments>http://ianp.org/2004/03/eclipse-3-milestone-8/#comments</comments>
		<pubDate>Sun, 28 Mar 2004 08:03:14 +0000</pubDate>
		<dc:creator>Ian Phillips</dc:creator>
				<category><![CDATA[Java]]></category>
		<category><![CDATA[Technology]]></category>
		<category><![CDATA[Eclipse]]></category>
		<category><![CDATA[User Experience]]></category>

		<guid isPermaLink="false">http://ianp.org/?p=37</guid>
		<description><![CDATA[Has been released, get it from the usual place. Initial impressions are that the new look and feel has been cleaned up and much improved. I found the last release a little buggy (under Linux GTK) so hopefully this will be more&#160;stable.
]]></description>
			<content:encoded><![CDATA[<p>Has been released, get it from the usual place. Initial impressions are that the new look and feel has been cleaned up and much improved. I found the last release a little buggy (under Linux <abbr>GTK</abbr>) so hopefully this will be more&nbsp;stable.</p>
]]></content:encoded>
			<wfw:commentRss>http://ianp.org/2004/03/eclipse-3-milestone-8/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Powerpoint</title>
		<link>http://ianp.org/2004/03/powerpoint/</link>
		<comments>http://ianp.org/2004/03/powerpoint/#comments</comments>
		<pubDate>Tue, 09 Mar 2004 16:03:44 +0000</pubDate>
		<dc:creator>Ian Phillips</dc:creator>
				<category><![CDATA[Trivia]]></category>
		<category><![CDATA[Design]]></category>
		<category><![CDATA[User Experience]]></category>

		<guid isPermaLink="false">http://ianp.org/?p=34</guid>
		<description><![CDATA[Now, I like David Byrne&#8217;s stuff quite a bit, but we obviously have different definitions of the word professional: &#8216;PowerPoint can make almost anything appear good and look professional. Quite frankly, I find that a little bit frightening.&#8217; (from&#160;Wired)

For an opinion closer to my own, compare&#160;this.
]]></description>
			<content:encoded><![CDATA[<p>Now, I like David Byrne&#8217;s stuff quite a bit, but we obviously have different definitions of the word professional: &#8216;PowerPoint can make almost anything appear good and look professional. Quite frankly, I find that a little bit frightening.&#8217; (from&nbsp;<a href="http://www.wired.com/wired/archive/12.04/rave.html?pg=4&amp;topic=&amp;topic_set=">Wired</a>)</p>

<p>For an opinion closer to my own, compare&nbsp;<a href="http://www.edwardtufte.com/tufte/powerpoint" title="The Cognitive Style Of PowerPoint">this</a>.</p>
]]></content:encoded>
			<wfw:commentRss>http://ianp.org/2004/03/powerpoint/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Retargetable User Interfaces</title>
		<link>http://ianp.org/2004/02/retargetable-user-interfaces/</link>
		<comments>http://ianp.org/2004/02/retargetable-user-interfaces/#comments</comments>
		<pubDate>Wed, 18 Feb 2004 17:02:20 +0000</pubDate>
		<dc:creator>Ian Phillips</dc:creator>
				<category><![CDATA[Java]]></category>
		<category><![CDATA[Technology]]></category>
		<category><![CDATA[User Experience]]></category>

		<guid isPermaLink="false">http://ianp.org/?p=32</guid>
		<description><![CDATA[This via Cafe au Lait: the Abstract User Interface Markup Language which, according to IBM, lets you design a UI once and then deploy it as either a thin client via a servlet based rendering engine, or as a thick client via a Swing based UI (why not SWT one may ask). This sounds a [...]]]></description>
			<content:encoded><![CDATA[<p>This via <a href="http://www.cafeaulait.org">Cafe au Lait</a>: the <a href="http://www.alphaworks.ibm.com/tech/auiml">Abstract User Interface Markup Language</a> which, according to <abbr>IBM</abbr>, lets you design a <abbr title="User Interface">UI</abbr> once and then deploy it as either a thin client via a servlet based rendering engine, or as a thick client via a Swing based <abbr title="User Interface">UI</abbr> (why not <abbr title="Standard Widget Toolkit">SWT</abbr> one may ask). This sounds a lot like the functionality that Next/Apple have had for years with <a href="http://www.apple.com">Web&nbsp;Objects</a>.</p>

<p>Personally, I&#8217;m not too sure about the whole idea, I think that if you&#8217;re designing an essentially forms-based application then thin clients are fine, anything else really needs a real user interface (read: thick client). Any tool which tries to build both from a single description is going to either create a way too complicated and slow web experience or a dismally poor client&nbsp;application.</p>
]]></content:encoded>
			<wfw:commentRss>http://ianp.org/2004/02/retargetable-user-interfaces/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Links that Reflow</title>
		<link>http://ianp.org/2004/02/links-that-reflow/</link>
		<comments>http://ianp.org/2004/02/links-that-reflow/#comments</comments>
		<pubDate>Thu, 12 Feb 2004 10:02:32 +0000</pubDate>
		<dc:creator>Ian Phillips</dc:creator>
				<category><![CDATA[Technology]]></category>
		<category><![CDATA[CSS]]></category>
		<category><![CDATA[User Experience]]></category>

		<guid isPermaLink="false">http://ianp.org/?p=29</guid>
		<description><![CDATA[A minor annonyance with peoples CSS: having an onMouseOver effect that causes the enclosing paragraph to reflow when you move the mouse over it. The common culprit is changing the background colour of the surrounding box and, I assume, failing to take into account insets and borders&#160;correctly.
]]></description>
			<content:encoded><![CDATA[<p>A minor annonyance with peoples <abbr title="Cascading Style Sheets">CSS</abbr>: having an <code>onMouseOver</code> effect that causes the enclosing paragraph to reflow when you move the mouse over it. The common culprit is changing the background colour of the surrounding box and, I assume, failing to take into account insets and borders&nbsp;correctly.</p>
]]></content:encoded>
			<wfw:commentRss>http://ianp.org/2004/02/links-that-reflow/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
	</channel>
</rss>
