<?xml version="1.0" encoding="utf-8"?>
<!-- Generated by: http://www.phpclasses.org/rsswriter $Revision: 1.12 $ -->
<rss version="2.0">
 <channel>
  <title>AlanHogan.com</title>
  <link>http://alanhogan.com/</link>
  <description>Alan Hogan&apos;s website - Web development, Mac user tips, etc.</description>
  <pubDate>Sat, 04 Feb 2012 10:02:27 -0500</pubDate>
  <ttl>5</ttl>
  <language>en-US</language>
  <copyright>Copyright 2012, AlanHogan.com</copyright>
  <image>
   <url>http://pan.alanhogan.com/ribbon/images/ribbonlogo2.gif</url>
   <title>AlanHogan.com</title>
   <link>http://alanhogan.com/</link>
  </image>
  <item>
   <description>&#10;&#10;&lt;p&gt;Mint.com’s header changes based on whether or not anyone has logged in from that computer before.&lt;sup id=&quot;fnref:approx&quot;&gt;&lt;a href=&quot;#fn:approx&quot; rel=&quot;footnote&quot;&gt;1&lt;/a&gt;&lt;/sup&gt;&lt;/p&gt;&#10;&#10;&lt;p&gt;On your first visit to the website, no login form is shown (but there is a prominent button labeled “Log in.”)&lt;/p&gt;&#10;&#10;&lt;p&gt;&lt;a href=&quot;http://cl.ly/3f1x250d0l2x1u3o2i2m&quot;&gt;&lt;img src=&quot;http://alanhogan.com/files/perm/mint-new.png&quot; alt=&quot;Mint.com, with no login form.&quot; /&gt;&lt;/a&gt;&lt;/p&gt;&#10;&#10;&lt;p&gt;On return visits, you’ll be greeted with a login form, saving you a step.&lt;/p&gt;&#10;&#10;&lt;p&gt;&lt;a href=&quot;http://cl.ly/2Y1M1k3f2X0m2R3B3r0t&quot;&gt;&lt;img src=&quot;http://alanhogan.com/files/perm/mint-return.png&quot; alt=&quot;Mint.com, with a login form.&quot; /&gt;&lt;/a&gt;&lt;/p&gt;&#10;&#10;&lt;p&gt;I love this solution. It’s optimal in a way most users will never notice. (Note nothing is even rearranged, so muscle memory is preserved, even if the relevant cookie is missing.) It reduces both clicks &amp;amp; clutter, in different situations — without taking away any functionality whatsoever.&lt;/p&gt;&#10;&#10;&lt;p&gt;In what other cases can we anticipate user actions and optimize accordingly?&lt;/p&gt;&#10;&#10;&lt;div class=&quot;footnotes&quot;&gt;&#10;&lt;div class=&quot;hr&quot;&gt;&lt;hr /&gt;&lt;/div&gt;&#10;&lt;ol&gt;&#10;&#10;&lt;li id=&quot;fn:approx&quot;&gt;&#10;&lt;p&gt;Technically, they approximate this with cookies, any web developer would expect.&amp;#160;&lt;a href=&quot;#fnref:approx&quot; rev=&quot;footnote&quot;&gt;&amp;#8617;&lt;/a&gt;&lt;/p&gt;&#10;&lt;/li&gt;&#10;&#10;&lt;/ol&gt;&#10;&lt;/div&gt;&#10;</description>
   <guid>http://alanhogan.com/anticipate-ui-ux</guid>
   <link>http://alanhogan.com/anticipate-ui-ux</link>
   <category>UI</category>
   <category>UX</category>
   <title>Anticipatory UI for a better UX</title>
   <pubDate>Sat, 04 Feb 2012 01:35:08 -0500</pubDate>
  </item>
  <item>
   <description>&#10;&#10;&lt;blockquote&gt;&#10;  &lt;p&gt;The most inspiring thing a person can do is to work hard on problems they care about that align with what the team cares about, share that work with others, gracefully take feedback, and continually produce.&lt;/p&gt;&#10;&lt;/blockquote&gt;&#10;&#10;&lt;p&gt;— &lt;a href=&quot;http://www.scottberkun.com/blog/2012/the-top-mistakes-ux-designers-make-the-writeup/&quot;&gt;Emily Cunningham’s notes from Q&amp;amp;A after Scott Berkun’s talk&lt;/a&gt;&lt;/p&gt;&#10;</description>
   <guid>http://alanhogan.com/inspiring-vision-as-a-ux-professional</guid>
   <link>http://alanhogan.com/inspiring-vision-as-a-ux-professional</link>
   <category>UX</category>
   <category>Quote</category>
   <title>Inspiring Vision in a UX Role</title>
   <pubDate>Sat, 04 Feb 2012 01:06:37 -0500</pubDate>
  </item>
  <item>
   <description>&lt;p&gt;I’m pleased to announce that I have moved to San Francisco, California; from Phoenix, where I spent the last five and a half years.&lt;/p&gt;&#10;&#10;&lt;p&gt;I’ve been here before. Most recently, for Startup School (in association with &lt;a href=&quot;http://ycombinator.com&quot;&gt;Y Combinator&lt;/a&gt; and &lt;a href=&quot;http://bases.stanford.edu/&quot;&gt;Bases&lt;/a&gt;) and related events — technically in Mountain View, Stanford, and Palo Alto. Before that, Sean and myself went to &lt;a href=&quot;http://www.pitchevent.com/&quot;&gt;Pitch&lt;/a&gt; and &lt;a href=&quot;http://disrupt.techcrunch.com/SF2011/&quot;&gt;Disrupt SF&lt;/a&gt; to network and show off &lt;a href=&quot;http://www.blogic.com/&quot;&gt;Blogic&lt;/a&gt;, and I had the pleasure of attending a &lt;a href=&quot;http://sanfrancisco.designersandgeeks.com/&quot;&gt;Designers and Geeks&lt;/a&gt; event at &lt;a href=&quot;http://squareup.com&quot;&gt;Square&lt;/a&gt;. And my very first SF visits were with the &lt;a href=&quot;http://simperium.com&quot;&gt;Simperium&lt;/a&gt; guys, whom I thank for that opportunity.&lt;/p&gt;&#10;&#10;&lt;p&gt;I drove here late last week in a “comically large” Budget truck that broke down 30 miles before Coachella, and have spent the last week crashing with friends, whom I thank for their generosity.&lt;/p&gt;&#10;&#10;&lt;p&gt;I have joined the &lt;a href=&quot;http://idonethis.com&quot;&gt;iDoneThis&lt;/a&gt; team doing contracted front-end web development. It’s always great to get to work on a tool that I had actually used and enjoyed beforehand (as it was with &lt;a href=&quot;http://simplenoteapp.com/&quot;&gt;Simplenote&lt;/a&gt;).&lt;/p&gt;&#10;&#10;&lt;p&gt;I’m loving the city so far, aside from the challenge of finding a good place to live — and even that is kind of fun, really. Maddening, but interesting. (Let me know if you have a room or studio to fill.)&lt;/p&gt;&#10;&#10;&lt;p&gt;I’m very excited to be in a city full of friends both old and new. I look forward to meeting more of the designer &amp;amp; developer community, as much as I’ll miss my Phoenician friends (and Pennsylvanian pals, for that matter).&lt;/p&gt;&#10;&#10;&lt;p&gt;Hope to see you around.&lt;/p&gt;&#10;</description>
   <guid>http://alanhogan.com/hello-sf</guid>
   <link>http://alanhogan.com/hello-sf</link>
   <category>personal</category>
   <title>Hello, SF!</title>
   <pubDate>Sat, 10 Dec 2011 20:12:26 -0500</pubDate>
  </item>
  <item>
   <description>&lt;p&gt;I don’t really follow Facebook terribly closely, but recently, they enabled some sort of terrible, insidious API for “publishers.”&lt;/p&gt;&#10;&#10;&lt;p&gt;The end result is that I see an interesting article in my Facebook news feed. “Cool,” I think. “I would like to read that.”&lt;/p&gt;&#10;&#10;&lt;p&gt;&lt;em&gt;Click.&lt;/em&gt;&lt;/p&gt;&#10;&#10;&lt;p&gt;And it opens this awful modal dialog.&lt;/p&gt;&#10;&#10;&lt;p&gt;&lt;img src=&quot;http://alanhogan.com/files/perm/these-permissions-are-unacceptable.png&quot; alt=&quot;Yahoo! Read the news with your friends. About this app: Discover articles you never would have read. And when you view an article on Yahoo!, your friends will see it on Facebook and Yahoo!. What this app shares: This app shares articles you read and more on Facebook with: Friends. Using this app requires: Your e-mail address, your birthday, and your likes. By proceeding, you agree to Yahoo&apos;s Terms of Service and Privacy Policy (links). Link to Report App. Button to agree. Button to cancel.&quot; /&gt;&lt;br /&gt;&#10;&lt;small class=fine-print&gt;(&lt;a href=&quot;http://cl.ly/0J1Y3S2R3b1u012Y0H2I&quot;&gt;fallback&lt;/a&gt;)&lt;/small&gt;&lt;/p&gt;&#10;&#10;&lt;p&gt;Uh… well, no thanks, I would rather not have everything I read &lt;em&gt;automatically and publicly logged&lt;/em&gt; on Facebook.&lt;/p&gt;&#10;&#10;&lt;p&gt;&lt;em&gt;Click “Cancel.”&lt;/em&gt;&lt;/p&gt;&#10;&#10;&lt;p&gt;The dialog closes. And that’s it. No article opens.&lt;/p&gt;&#10;&#10;&lt;p&gt;Then I realize something. &lt;strong&gt;Facebook is actively breaking the fundamentals of the Web.&lt;/strong&gt; The “link” I clicked in my news feed would &lt;em&gt;seem&lt;/em&gt; to be a textbook example of a hyperlink: Blue, underlined words describing a page on another website that I should be able to click and read. Or right-click and open in a new window, or maybe long-tap on a phone and copy the URL of… but no. No, that “URL” isn’t foreign; it’s a link to a Facebook.com page &lt;em&gt;requiring&lt;/em&gt; me to grant unacceptable permissions to an “app” before, you know, reading the other side of the original pseudo-link.&lt;/p&gt;&#10;&#10;&lt;p&gt;It’s shameful. Broken. Even evil.&lt;/p&gt;&#10;&#10;&lt;p&gt;Facebook ought to be ashamed.&lt;/p&gt;&#10;&#10;&lt;p&gt;Yahoo ought to be ashamed, too. And they should know that I never ended up reading the article I saw in my timeline. Just as well. Yahoo is a bad web citizen; yahoo.com news stories from as little as two years ago (and maybe less!) now result in 404 file-not-found links. Those items are &lt;em&gt;gone&lt;/em&gt;. It means swaths of blogs and sites have broken links, that sources and references are now unverifiable. It’s not just the news: Perhaps both more and less understandably, Yahoo removed whole neighborhoods of content when they took GeoCities completely offline, too. The Web isn’t supposed to be taken so cavalierly.&lt;/p&gt;&#10;&#10;&lt;p&gt;End result: I will be finding less content via Facebook, and reading less on Yahoo. It’s just as well.&lt;/p&gt;&#10;</description>
   <guid>http://alanhogan.com/facebook-pseudo-links</guid>
   <link>http://alanhogan.com/facebook-pseudo-links</link>
   <category>Facebook</category>
   <category>UX</category>
   <category>web</category>
   <category>doing it wrong</category>
   <title>Facebook Has Gone Too Far.</title>
   <pubDate>Sat, 10 Dec 2011 20:07:34 -0500</pubDate>
  </item>
  <item>
   <description>&#10;&#10;&lt;p&gt;Steve put so much of himself &lt;a href=&quot;http://www.apple.com/stevejobs/&quot; title=&quot;Apple tribute page for SJ&quot;&gt;into Apple&lt;/a&gt;, it’s really no wonder we tend to conflate the two.&lt;/p&gt;&#10;&#10;&lt;p&gt;But we should &lt;a href=&quot;http://news.stanford.edu/news/2005/june15/jobs-061505.html&quot; title=&quot;Stanford commencement speech&quot;&gt;not forget that Steve was more than Apple&lt;/a&gt;. He was a man unsure of his future.&lt;/p&gt;&#10;&#10;&lt;p&gt;Unsure, but hungry for knowledge. Eager to think.  Striving for greatness.&lt;/p&gt;&#10;&#10;&lt;p&gt;Steve, you’re gone. But I congratulate you for putting a ding in the universe.&lt;/p&gt;&#10;</description>
   <guid>http://alanhogan.com/rip</guid>
   <link>http://alanhogan.com/rip</link>
   <category>misc</category>
   <title>RIP.</title>
   <pubDate>Thu, 06 Oct 2011 00:13:21 -0400</pubDate>
  </item>
  <item>
   <description>&#10;&#10;&lt;p&gt;I have made updates to my &lt;a href=&quot;http://alanhogan.com/lion-mail-vs-sparrow&quot;&gt;Lion Mail.app vs. Sparrow article&lt;/a&gt; thanks to tips&#10;readers have sent me (thank you!).&lt;/p&gt;&#10;&#10;&lt;p&gt;For anyone subscribed to my RSS feed, here are the changes:&lt;/p&gt;&#10;&#10;&lt;ol&gt;&#10;&lt;li&gt;&lt;p&gt;I added a footnote regarding Priority Inbox simulation.&lt;/p&gt;&#10;&#10;&lt;blockquote&gt;&#10;  &lt;p&gt;Erik Hansen has helpfully written up a &lt;a href=&quot;http://classyllama.com/productivity/create-a-priority-inbox-in-mail-show-only-unread-and-flagged-messages/&quot; title=&quot;Mail.app inbox with only flagged and unread items&quot;&gt;tutorial&lt;/a&gt; showing how to create an inbox view that only shows unread or flagged/starred items. I am not yet aware of any hacks that take advantage of Gmail&amp;#8217;s automatic &amp;#8220;Priority&amp;#8221; filtering feature, but haven’t really looked into it.&lt;/p&gt;&#10;&lt;/blockquote&gt;&lt;/li&gt;&#10;&lt;li&gt;&lt;p&gt;I noted a Mail.app negative.&lt;/p&gt;&#10;&#10;&lt;blockquote&gt;&#10;  &lt;p&gt;By default, sent and other (e.g. archived) messages are not always shown with received messages in the preview pane&amp;#8217;s thread/conversation view.  You can pull them in using the Show/Hide Related Messages button:&lt;br /&gt;&#10;    &lt;img src=&quot;http://alanhogan.com/files/perm/show-hide-related-messages.png&quot; alt=&quot;What it looks like&quot; /&gt;&lt;/p&gt;&#10;  &#10;  &lt;p&gt;You can also change this default to automatically include all related messages, in Preferences.&#10;  &lt;br /&gt;&#10;    &lt;img src=&quot;http://alanhogan.com/files/perm/show-related-default.png&quot; alt=&quot;The setting in Mail Preferences&quot; /&gt;&lt;/p&gt;&#10;&lt;/blockquote&gt;&lt;/li&gt;&#10;&lt;li&gt;&lt;p&gt;I added a tip to make drafts sync to the actual Gmail drafts folder.&lt;/p&gt;&#10;&#10;&lt;blockquote&gt;&#10;  &lt;p&gt;For each Gmail account you want to change this behavior for:&lt;/p&gt;&#10;  &#10;  &lt;ol&gt;&#10;  &lt;li&gt;&lt;p&gt;Navigate to the &lt;code&gt;[Gmail]/Drafts&lt;/code&gt; folder&lt;/p&gt;&lt;/li&gt;&#10;  &lt;li&gt;&lt;p&gt;In the top menu bar: Mailbox&amp;#160;› Use This Mailbox For&amp;#160;› Drafts.&lt;/p&gt;&lt;/li&gt;&#10;  &lt;/ol&gt;&#10;&lt;/blockquote&gt;&lt;/li&gt;&#10;&lt;/ol&gt;&#10;</description>
   <guid>http://alanhogan.com/lion-mail-vs-sparrow-update</guid>
   <link>http://alanhogan.com/lion-mail-vs-sparrow-update</link>
   <category>misc</category>
   <title>Updates for my Lion Mail.app post</title>
   <pubDate>Thu, 28 Jul 2011 00:05:35 -0400</pubDate>
  </item>
  <item>
   <description>&lt;p&gt;&lt;hgroup&gt;&#10;    &#10;    &lt;h2&gt;A Review &amp;amp; Comparison with Sparrow&lt;/h2&gt;&#10;&lt;/hgroup&gt;&lt;/p&gt;&#10;&#10;&lt;p&gt;Just over a month ago, &lt;a href=&quot;http://alanhogan.com/sparrow-review&quot;&gt;I reviewed Sparrow&lt;/a&gt;, a new Gmail- and Twitter-inspired mail app for OS X.&lt;/p&gt;&#10;&#10;&lt;p&gt;I had a number of complaints, but also a fair amount of praise, for it. Most of the positives were in comparison with Apple&amp;#8217;s own email client, called Mail, or Mail.app for clarity.&lt;/p&gt;&#10;&#10;&lt;p&gt;But since then, Apple has released a major update to OS X &amp;#8212; namely, version 10.7 Lion.  And Mail.app&lt;sup id=&quot;fnref:and&quot;&gt;&lt;a href=&quot;#fn:and&quot; rel=&quot;footnote&quot;&gt;1&lt;/a&gt;&lt;/sup&gt; has been &lt;a href=&quot;http://arstechnica.com/apple/reviews/2011/07/mac-os-x-10-7.ars/16#mail&quot; title=&quot;John Siracusa&apos;s notes on Mail.app in Lion&quot;&gt;given quite a &#10;makeover&lt;/a&gt;.&lt;/p&gt;&#10;&#10;&lt;p&gt;So now the question is, what advantages does Sparrow retain over Mail.app? Are Sparrow&amp;#8217;s negatives present in Mail.app as well, or do they afflict solely Sparrow?&lt;/p&gt;&#10;&#10;&lt;p&gt;Let&amp;#8217;s go through them one-by-one.&lt;/p&gt;&#10;&#10;&lt;h3&gt;Sparrow vs. Lion Mail.app&lt;/h3&gt;&#10;&#10;&lt;ul&gt;&#10;&lt;li&gt;&lt;p&gt;Former positive: Sparrow felt less cumbersome than Mail. It&amp;#8217;s debatable if this is still true, given Mail&amp;#8217;s new three-pane layout and unified inbox. It seems to me that Mail makes better use of Fitts&amp;#8217; Law, with more clickable targets; it is also more intuitive, but less visually &amp;#8220;fun&amp;#8221;.&lt;/p&gt;&lt;/li&gt;&#10;&lt;li&gt;&lt;p&gt;Irrelevant: Both Sparrow and Mail.app allow me to jump between tasks/views more quickly than the Gmail web app.&lt;/p&gt;&lt;/li&gt;&#10;&lt;li&gt;&lt;p&gt;Former advantage: Mail.app has gained a unified Inbox, like iOS (and Sparrow).  All your accounts&amp;#8217; emails can be shown in one commingled inbox, and you can view any inbox independently at any time.&lt;/p&gt;&lt;/li&gt;&#10;&lt;li&gt;&lt;p&gt;Sparrow negative: No undo for archiving. Mail.app gets it right.&lt;sup id=&quot;fnref:oops&quot;&gt;&lt;a href=&quot;#fn:oops&quot; rel=&quot;footnote&quot;&gt;2&lt;/a&gt;&lt;/sup&gt;&lt;/p&gt;&lt;/li&gt;&#10;&lt;li&gt;&lt;p&gt;Sparrow negative: Incessant right-pane content reloads &amp;#8212; not a complaint shared by Mail.app.&lt;/p&gt;&lt;/li&gt;&#10;&lt;li&gt;&lt;p&gt;Sparrow negative: Hard to figure out how to view “all mail”. Much more intuitive in Mail.app.&lt;/p&gt;&lt;/li&gt;&#10;&lt;li&gt;&lt;p&gt;Sparrow negative: Hides all quoted text, even if you have never seen it before (e.g. in a forwarded message) &amp;#8212; Mail gets it right, like Gmail&amp;#8217;s web app (and has a beautiful animation for expanding quoted text, in the less likely event you even want to show it).&lt;/p&gt;&lt;/li&gt;&#10;&lt;li&gt;&lt;p&gt;Sparrow negative: No option to limit alerts to only &amp;#8220;priority inbox&amp;#8221; items. I haven&amp;#8217;t tried this, but I am fairly sure this could be done in Mail, as a rule could be set up to play a sound&#10;only for messages in the Priority Inbox folder or tag, if exposed over IMAP. But it wouldn&amp;#8217;t be totally straightforward, so this negative half-way applies to Mail, which at least has rules, unlike Sparrow.&lt;/p&gt;&lt;/li&gt;&#10;&lt;li&gt;&lt;p&gt;Sparrow negative: Bad UX when sending mail fails. Mail.app actually has two options: Suggest other outgoing mail servers (can be useful if you are traveling), or silently keep trying to re-send. Both are better than demoting the outgoing item back to Drafts!&lt;/p&gt;&lt;/li&gt;&#10;&lt;li&gt;&lt;p&gt;Sparrow negative: Can&amp;#8217;t view full headers. Mail.app even has an optional toolbar button for this.&lt;/p&gt;&lt;/li&gt;&#10;&lt;li&gt;&lt;p&gt;Sparrow negative: Terrible search. Mail.app&amp;#8217;s is much better, even supporting some Gmail-style search strings such as &lt;code&gt;from:bob picnic&lt;/code&gt;, which would only return messages from someone named &amp;#8220;Bob&amp;#8221; and containing the phrase &amp;#8220;picnic.&amp;#8221;&lt;/p&gt;&lt;/li&gt;&#10;&lt;li&gt;&lt;p&gt;Shared negative: No super simple way to view only unread items in the inbox. In Sparrow, it&amp;#8217;s a trip to Advanced Preferences. In Mail.app, you can create a &amp;#8220;smart mailbox&amp;#8221; showing only unread items in &amp;#8220;Inbox&amp;#8221; to create an analogous view.&lt;sup id=&quot;fnref:antonio&quot;&gt;&lt;a href=&quot;#fn:antonio&quot; rel=&quot;footnote&quot;&gt;3&lt;/a&gt;&lt;/sup&gt;&lt;/p&gt;&lt;/li&gt;&#10;&lt;/ul&gt;&#10;&#10;&lt;p&gt;That said, Mail.app still has a few potential drawbacks of its own:&lt;/p&gt;&#10;&#10;&lt;ul&gt;&#10;&lt;li&gt;&lt;p&gt;By default, Drafts sync back to the server in a label called &lt;code&gt;[Imap]/Drafts&lt;/code&gt; instead of the Gmail drafts folder.&lt;sup id=&quot;fnref:ant-up&quot;&gt;&lt;a href=&quot;#fn:ant-up&quot; rel=&quot;footnote&quot;&gt;4&lt;/a&gt;&lt;/sup&gt;&lt;/p&gt;&#10;&#10;&lt;p&gt;However, the fix for this is fairly simple. For each Gmail account you want to change this behavior for:&lt;/p&gt;&#10;&#10;&lt;ol&gt;&#10;&lt;li&gt;&lt;p&gt;Navigate to the &lt;code&gt;[Gmail]/Drafts&lt;/code&gt; folder&lt;/p&gt;&lt;/li&gt;&#10;&lt;li&gt;&lt;p&gt;In the top menu bar: Mailbox&amp;#160;› Use This Mailbox For&amp;#160;› Drafts.&lt;/p&gt;&lt;/li&gt;&#10;&lt;/ol&gt;&#10;&#10;&lt;p&gt;You can also do this for the Sent Mail folder.&lt;/p&gt;&lt;/li&gt;&#10;&lt;li&gt;&lt;p&gt;No real support for &amp;#8220;Priority Inbox&amp;#8221;. This is unsurprising considering that Mail, unlike Sparrow, is not supposed to be very Gmail-centric, or that Mail.app has a much longer development cycle than Sparrow.&lt;sup id=&quot;fnref:hack-it&quot;&gt;&lt;a href=&quot;#fn:hack-it&quot; rel=&quot;footnote&quot;&gt;5&lt;/a&gt;&lt;/sup&gt;&lt;/p&gt;&lt;/li&gt;&#10;&lt;li&gt;&lt;p&gt;By default, no toolbar button or hotkey shortcut for archiving messages. Both of these shortcomings are easily remedied, though! Right-click the toolbar to customize it. System Preferences&amp;#8217; Keyboard pane (Keyboard Shortcuts tab, then “Application Shortcuts”) allows you to set a custom shortcut for archiving. (I set mine to ⌘-Y.)&lt;/p&gt;&lt;/li&gt;&#10;&lt;li&gt;&lt;p&gt;By default, sent and other (e.g. archived) messages are not always shown with received messages in the preview pane&amp;#8217;s thread/conversation view.  You can pull them in using the Show/Hide Related Messages button:&lt;br /&gt;&#10;&lt;img src=&quot;http://alanhogan.com/files/perm/show-hide-related-messages.png&quot; alt=&quot;What it looks like&quot; /&gt;&lt;/p&gt;&#10;&#10;&lt;p&gt;You can also change this default to automatically include all related messages, in Preferences.&lt;/p&gt;&#10;&#10;&lt;p&gt;&lt;img src=&quot;http://alanhogan.com/files/perm/show-related-default.png&quot; alt=&quot;The setting in Mail Preferences&quot; /&gt;&lt;/p&gt;&lt;/li&gt;&#10;&lt;/ul&gt;&#10;&#10;&lt;h3&gt;Awarding the Olive Leaf Crown&lt;/h3&gt;&#10;&#10;&lt;p&gt;Lion only came out yesterday, but so far, I&amp;#8217;m absolutely loving the new Mail.app. I&amp;#8217;m going to keep using it exclusively (over Sparrow) unless I find some gargantuan annoyance that Sparrow solves.  Given the number of negatives solely in Sparrow&amp;#8217;s court, I do not expect this to happen any time soon.&lt;/p&gt;&#10;&#10;&lt;p&gt;Three cheers for the best Mail.app yet!&lt;/p&gt;&#10;&#10;&lt;div class=&quot;footnotes&quot;&gt;&#10;&lt;div class=&quot;hr&quot;&gt;&lt;hr /&gt;&lt;/div&gt;&#10;&lt;ol&gt;&#10;&#10;&lt;li id=&quot;fn:and&quot;&gt;&#10;&lt;p&gt;Along with a number of other apps included in OS X, such as Address Book and iCal. &lt;a href=&quot;http://arstechnica.com/apple/reviews/2011/07/mac-os-x-10-7.ars/5#crazy-ones&quot;&gt;Siracusa on those apps&amp;#8217; changes&lt;/a&gt;&amp;#160;&lt;a href=&quot;#fnref:and&quot; rev=&quot;footnote&quot;&gt;&amp;#8617;&lt;/a&gt;&lt;/p&gt;&#10;&lt;/li&gt;&#10;&#10;&lt;li id=&quot;fn:oops&quot;&gt;&#10;&lt;p&gt;I initially mis-reported this as a Mail failing, and was corrected by Antonio; my subsequent experiments confirmed this. I am not sure how I missed this at first.&amp;#160;&lt;a href=&quot;#fnref:oops&quot; rev=&quot;footnote&quot;&gt;&amp;#8617;&lt;/a&gt;&lt;/p&gt;&#10;&lt;/li&gt;&#10;&#10;&lt;li id=&quot;fn:antonio&quot;&gt;&#10;&lt;p&gt;Thanks to &lt;a href=&quot;http://shadowfiend.posterous.com/&quot;&gt;Antonio Salazar Cardozo&lt;/a&gt; for mentioning this.&amp;#160;&lt;a href=&quot;#fnref:antonio&quot; rev=&quot;footnote&quot;&gt;&amp;#8617;&lt;/a&gt;&lt;/p&gt;&#10;&lt;/li&gt;&#10;&#10;&lt;li id=&quot;fn:ant-up&quot;&gt;&#10;&lt;p&gt;Thanks to Antonio for this correction as well; I had initially reported that it seems drafts did not sync to the server at all. And a hearty thank-you to &lt;a href=&quot;http://maxhedrm.montebellopark.com/blog&quot; title=&quot;Scott&apos;s Blog&quot;&gt;Scott Cook&lt;/a&gt; and Tim Lukian for pointing out the fix! Here&amp;#8217;s a screenshot of the Drafts folder, expanded to show each properly set-up sub-account:&lt;br /&gt;&#10;&lt;img src=&quot;http://alanhogan.com/files/perm/mail-draft-folders.png&quot; alt=&quot;Drafts folders screenshot&quot; /&gt;&amp;#160;&lt;a href=&quot;#fnref:ant-up&quot; rev=&quot;footnote&quot;&gt;&amp;#8617;&lt;/a&gt;&lt;/p&gt;&#10;&lt;/li&gt;&#10;&#10;&lt;li id=&quot;fn:hack-it&quot;&gt;&#10;&lt;p&gt;That said, you could probably build some sort of approximation of Priority Inbox using Mail.app rules and/or smart mailboxes. For example, Erik Hansen has helpfully written up a &lt;a href=&quot;http://classyllama.com/productivity/create-a-priority-inbox-in-mail-show-only-unread-and-flagged-messages/&quot; title=&quot;Mail.app inbox with only flagged and unread items&quot;&gt;tutorial&lt;/a&gt; showing how to create an inbox view that only shows unread or flagged/starred items. I am not yet aware of any hacks that take advantage of Gmail&amp;#8217;s automatic &amp;#8220;Priority&amp;#8221; filtering feature, but haven’t really looked into it.&amp;#160;&lt;a href=&quot;#fnref:hack-it&quot; rev=&quot;footnote&quot;&gt;&amp;#8617;&lt;/a&gt;&lt;/p&gt;&#10;&lt;/li&gt;&#10;&#10;&lt;/ol&gt;&#10;&lt;/div&gt;&#10;</description>
   <guid>http://alanhogan.com/lion-mail-vs-sparrow</guid>
   <link>http://alanhogan.com/lion-mail-vs-sparrow</link>
   <category>Mail.app</category>
   <category>Sparrow</category>
   <category>OS X Lion</category>
   <title>OS X Lion&apos;s Mail.app vs. Sparrow</title>
   <pubDate>Thu, 21 Jul 2011 16:16:10 -0400</pubDate>
  </item>
  <item>
   <description>&#10;&#10;&lt;p&gt;I have been using &lt;a href=&quot;http://www.sparrowmailapp.com/&quot; title=&quot;Sparrow website&quot;&gt;Sparrow&lt;/a&gt; (&lt;a href=&quot;http://twitter.com/sparrowmailapp&quot;&gt;@SparrowMailApp&lt;/a&gt; on Twitter) as my primary desktop mail client for a month now.  I like it, but I have a lot of complaints, too. If you&amp;#8217;re considering switching, I hope you find this quick review of use.&lt;/p&gt;&#10;&#10;&lt;p&gt;&lt;em&gt;&lt;strong&gt;Update:&lt;/strong&gt; OS X Lion is out, and &lt;a href=&quot;http://alanhogan.com/lion-mail-vs-sparrow&quot; title=&quot;OS X Lion’s Mail.app vs. Sparrow&quot;&gt;I really like its updated Mail app&lt;/a&gt;.&lt;/em&gt;&lt;/p&gt;&#10;&#10;&lt;h2&gt;The Good&lt;/h2&gt;&#10;&#10;&lt;p&gt;Sparrow is a welcome new option to the OS X mail app landscape.  It borrows some interface stylings from Tweetie, the seminal OS X Twitter client eventually purchased by Twitter, Inc.; the end result is that Sparrow feels less cumbersome than the current Mail.app that ships with OS X (as of this writing, that means 10.6 Snow Leopard). [&lt;em&gt;&lt;a href=&quot;http://alanhogan.com/lion-mail-vs-sparrow&quot; title=&quot;OS X Lion’s Mail.app vs. Sparrow&quot;&gt;Updated comparison here, now that 10.7 Lion is out&lt;/a&gt;.&lt;/em&gt;] Sparrow is mostly a one-window deal, and it holds hands with Gmail quite nicely, with native support for starring, labels, and even many of Gmail&amp;#8217;s keyboard shortcuts.&lt;/p&gt;&#10;&#10;&lt;p&gt;Sparrow lets you move around a bit more quickly than Gmail, which still prevents you from going back to your inbox before your current draft finishes sending or saving (after all these years!). This is an expected  benefit of &lt;em&gt;any&lt;/em&gt; native email app, but Sparrow doesn&amp;#8217;t disappoint here; this is a big part of why I use it instead of Gmail.&lt;/p&gt;&#10;&#10;&lt;p&gt;Another great thing about Sparrow is its unified inbox, showing mail from all your accounts in one view. (I don&amp;#8217;t love how it is then tricky to see which account actually received the email as you are replying, but in some sense, this could be considered a success of this feature.) The convenience of having one inbox is what keeps &lt;a href=&quot;http://www.seancoleman.net/&quot; title=&quot;Sean Coleman (Co-Founder, Blogic, Inc.)&quot;&gt;Sean&lt;/a&gt; on Sparrow.&lt;sup id=&quot;fnref:1&quot;&gt;&lt;a href=&quot;#fn:1&quot; rel=&quot;footnote&quot;&gt;1&lt;/a&gt;&lt;/sup&gt;&lt;/p&gt;&#10;&#10;&lt;h2&gt;The Bad&lt;/h2&gt;&#10;&#10;&lt;p&gt;Sparrow can be quite annoying at times, particularly in its current limitations.&lt;/p&gt;&#10;&#10;&lt;ul&gt;&#10;&lt;li&gt;&lt;p&gt;You can&amp;#8217;t undo actions like archiving. (Good luck figuring out which message you accidentally archived!)&lt;/p&gt;&lt;/li&gt;&#10;&lt;li&gt;&lt;p&gt;Sparrow refreshes the whole right pane screen up to three times while sending a reply (very distracting, and puzzling as to why, technically, this is necessary).&lt;/p&gt;&lt;/li&gt;&#10;&lt;li&gt;&lt;p&gt;It took me a month to figure out how to view “All Mail.” (Use the tag icon at the bottom of the window.)&lt;/p&gt;&lt;/li&gt;&#10;&lt;li&gt;&lt;p&gt;Sparrow hides &lt;strong&gt;all&lt;/strong&gt; quoted text by default, &lt;em&gt;&lt;strong&gt;even text you have never seen before&lt;/strong&gt;&lt;/em&gt;. Consider a forwarded email: You only see the forwarded text, and a tiny, non-underlined, easy-to-ignore “show all text” link at the bottom. Sometimes this occurs &lt;em&gt;within&lt;/em&gt; a threaded conversation, all but guaranteeing you&amp;#8217;re going to miss something that someone thought important enough to clue you in to.  Gmail &lt;em&gt;never&lt;/em&gt; makes this mistake!&lt;/p&gt;&lt;/li&gt;&#10;&lt;li&gt;&lt;p&gt;There is no option to only sound the incoming-mail alert for “priority inbox” items.&lt;/p&gt;&lt;/li&gt;&#10;&lt;li&gt;&lt;p&gt;If your Internet connection is spotty or overloaded and Sparrow&amp;#8217;s initial attempt to send a message fails, it doesn&amp;#8217;t go to an “outbox” to retry periodically; it just never sends (and reverts back to a draft for you to manually retry).&lt;/p&gt;&lt;/li&gt;&#10;&lt;li&gt;&lt;p&gt;You can&amp;#8217;t disable the unread count badge on the dock icon, which I consider stressful and unwanted.&lt;/p&gt;&lt;/li&gt;&#10;&lt;li&gt;&lt;p&gt;You can&amp;#8217;t view an email&amp;#8217;s source or its full headers.&lt;/p&gt;&lt;/li&gt;&#10;&lt;li&gt;&lt;p&gt;Sometimes the search feature just fails to find messages that are in your account (going to Gmail&amp;#8217;s web interface and searching will find the email).&lt;sup id=&quot;fnref:2&quot;&gt;&lt;a href=&quot;#fn:2&quot; rel=&quot;footnote&quot;&gt;2&lt;/a&gt;&lt;/sup&gt; And message search doesn&amp;#8217;t allow any of those great Gmail search operators.&lt;/p&gt;&lt;/li&gt;&#10;&lt;li&gt;&lt;p&gt;You &lt;a href=&quot;http://sparrowtips.tumblr.com/post/6552876547/sortingbar&quot;&gt;have to&lt;/a&gt; go into Advanced Preferences before being allowed to view a list of unread messages (or priority inbox).&lt;/p&gt;&lt;/li&gt;&#10;&lt;/ul&gt;&#10;&#10;&lt;h2&gt;Conclusion&lt;/h2&gt;&#10;&#10;&lt;p&gt;My list of complaints is long.  And yet, I find Sparrow the most convenient option I currently have for working with email. [&lt;em&gt;Update: &lt;a href=&quot;http://alanhogan.com/lion-mail-vs-sparrow&quot; title=&quot;OS X Lion’s Mail.app vs. Sparrow&quot;&gt;No longer the case&lt;/a&gt;.&lt;/em&gt;]  I&amp;#8217;m going to keep using it and keep hoping for meaningful, regular updates.&lt;/p&gt;&#10;&#10;&lt;p&gt;I&amp;#8217;m not sure these guys&amp;#8217; priorities are straight: the last update added Facebook integration to pull avatars (and to spam your Facebook wall with an ad for Sparrow unless you actively opted out). To be fair, it also added the unified inbox, which was a welcome feature. I can&amp;#8217;t be alone in preferring to see my list of gripes shrink than to see a few more friends&amp;#8217; faces in my email.&lt;/p&gt;&#10;&#10;&lt;p&gt;If you want a very Gmail and Tweetie-like native mail client, you can check Sparrow out in the &lt;a href=&quot;http://itunes.apple.com/us/app/sparrow/id417250177&quot; title=&quot;Sparrow in the Mac App Store&quot;&gt;Mac App Store&lt;/a&gt;, or download the free trial from the &lt;a href=&quot;http://www.sparrowmailapp.com/&quot; title=&quot;Sparrow website&quot;&gt;Sparrow website&lt;/a&gt;.  It&amp;#8217;s probably worth a spin.&lt;/p&gt;&#10;&#10;&lt;div class=&quot;footnotes&quot;&gt;&#10;&lt;div class=&quot;hr&quot;&gt;&lt;hr /&gt;&lt;/div&gt;&#10;&lt;ol&gt;&#10;&#10;&lt;li id=&quot;fn:1&quot;&gt;&#10;&lt;p&gt;In a sense, this keeps my desktop and iPhone email situation fairly close in terms of the the contents of my main email view. Thanks to Sean for mentioning this feature while reviewing a draft of this review.&amp;#160;&lt;a href=&quot;#fnref:1&quot; rev=&quot;footnote&quot;&gt;&amp;#8617;&lt;/a&gt;&lt;/p&gt;&#10;&lt;/li&gt;&#10;&#10;&lt;li id=&quot;fn:2&quot;&gt;&#10;&lt;p&gt;It also doesn&amp;#8217;t seem to support Gmail&amp;#8217;s search operators (like &lt;code&gt;label:Work&lt;/code&gt;). Thanks to &lt;a href=&quot;http://www.seancoleman.net/&quot; title=&quot;Sean Coleman (Co-Founder, Blogic, Inc.)&quot;&gt;Sean&lt;/a&gt;, again, for reminding me of search&amp;#8217;s weakness.&amp;#160;&lt;a href=&quot;#fnref:2&quot; rev=&quot;footnote&quot;&gt;&amp;#8617;&lt;/a&gt;&lt;/p&gt;&#10;&lt;/li&gt;&#10;&#10;&lt;/ol&gt;&#10;&lt;/div&gt;&#10;</description>
   <guid>http://alanhogan.com/sparrow-review</guid>
   <link>http://alanhogan.com/sparrow-review</link>
   <category>misc</category>
   <title>A Brief Review of Sparrow Mail</title>
   <pubDate>Wed, 15 Jun 2011 16:28:45 -0400</pubDate>
  </item>
  <item>
   <description>&#10;&#10;&lt;p&gt;URLs are part of your user interface.&lt;sup id=&quot;fnref:nn&quot;&gt;&lt;a href=&quot;#fn:nn&quot; rel=&quot;footnote&quot;&gt;1&lt;/a&gt;&lt;/sup&gt;&lt;/p&gt;&#10;&#10;&lt;p&gt;Your web app&amp;#8217;s user interface has three major components:&lt;/p&gt;&#10;&#10;&lt;ol&gt;&#10;&lt;li&gt;Your HTML (GUI) — the pages themselves and their behavior.&lt;/li&gt;&#10;&lt;li&gt;Your API — used by developers (internally and/or externally).&lt;/li&gt;&#10;&lt;li&gt;Your URLs.&lt;/li&gt;&#10;&lt;/ol&gt;&#10;&#10;&lt;p&gt;Everyone knows URLs are important and &lt;a href=&quot;http://www.w3.org/Provider/Style/URI&quot; title=&quot;Tim Berners-Lee: Cool URIs don&apos;t change&quot;&gt;shouldn&amp;#8217;t change&lt;/a&gt;.  But there is more to the concept of URL as UI than that.&lt;/p&gt;&#10;&#10;&lt;h2&gt;The perfect URL&lt;/h2&gt;&#10;&#10;&lt;p&gt;To help imagine what the perfect user interface expressed through URL design would look like, imagine that you can&amp;#8217;t use your HTML UI for navigation. How would you get to the page you are looking for?&lt;/p&gt;&#10;&#10;&lt;h3&gt;An ideal URL is guessable.&lt;/h3&gt;&#10;&#10;&lt;p&gt;Synonyms should ideally redirect. If you have a support page at &lt;code&gt;/support&lt;/code&gt; and a user types &lt;code&gt;/help&lt;/code&gt;, is that really such a bad request? Don&amp;#8217;t show them a 404 — send them to the page they&amp;#8217;re looking for!&lt;/p&gt;&#10;&#10;&lt;h3&gt;An ideal URL uses honest hierarchy.&lt;/h3&gt;&#10;&#10;&lt;p&gt;If your URL&amp;#8217;s path includes a slash — like &lt;code&gt;example.com/widgets/674&lt;/code&gt; — then truncating&#10;everything after any slash in the path&lt;sup id=&quot;fnref:slash&quot;&gt;&lt;a href=&quot;#fn:slash&quot; rel=&quot;footnote&quot;&gt;2&lt;/a&gt;&lt;/sup&gt; should result in a useful page, not an error.&lt;/p&gt;&#10;&#10;&lt;p&gt;In this case, &lt;code&gt;example.com/widgets&lt;/code&gt; should probably list widgets and/or allow the user to create their own new widget, even if that means redirecting to &lt;code&gt;/widgets/new&lt;/code&gt;.&lt;/p&gt;&#10;&#10;&lt;p&gt;If that&amp;#8217;s not possible, either explain why on the page or consider removing your false façade of hierarchy.  For example, the previously mentioned URL could be re-written as &lt;code&gt;example.com/widget-674&lt;/code&gt;.&lt;/p&gt;&#10;&#10;&lt;h3&gt;An ideal URL doesn&amp;#8217;t include a filetype extension.&lt;/h3&gt;&#10;&#10;&lt;p&gt;This applies only to actual pages, not media like CSS, JavaScript, images, or audio.&lt;/p&gt;&#10;&#10;&lt;p&gt;Forcing the user to type &lt;code&gt;.html&lt;/code&gt; or &lt;code&gt;.php&lt;/code&gt; is bad for at least three reasons:&lt;/p&gt;&#10;&#10;&lt;ol&gt;&#10;&lt;li&gt;It&amp;#8217;s extra typing and length, which is inherently bad.&lt;/li&gt;&#10;&lt;li&gt;It requires the user to know what powers your site to use your URL as a user interface.&lt;sup id=&quot;fnref:sec&quot;&gt;&lt;a href=&quot;#fn:sec&quot; rel=&quot;footnote&quot;&gt;3&lt;/a&gt;&lt;/sup&gt;&lt;/li&gt;&#10;&lt;li&gt;It makes your URLs more likely to change if your site technology does.&lt;/li&gt;&#10;&lt;/ol&gt;&#10;&#10;&lt;h3&gt;An ideal URL doesn&amp;#8217;t care if your URL includes a trailing slash.&lt;/h3&gt;&#10;&#10;&lt;p&gt;Pick either &lt;code&gt;/foo&lt;/code&gt; or &lt;code&gt;/foo/&lt;/code&gt; and redirect users to the canonical page.&lt;sup id=&quot;fnref:seo&quot;&gt;&lt;a href=&quot;#fn:seo&quot; rel=&quot;footnote&quot;&gt;4&lt;/a&gt;&lt;/sup&gt;&lt;/p&gt;&#10;&#10;&lt;p&gt;Obviously, omitting the trailing slash means shorter URLs, which is always good.&lt;/p&gt;&#10;&#10;&lt;h3&gt;An ideal URL is similar to URLs on other websites.&lt;/h3&gt;&#10;&#10;&lt;p&gt;Plenty of websites use the URLs &lt;code&gt;/login&lt;/code&gt; and &lt;code&gt;/logout&lt;/code&gt;, so a URL like &lt;code&gt;/create&lt;/code&gt; or &lt;code&gt;/session/destroy&lt;/code&gt; is a hell of a lot less guessable — inherently, yes, but also because it&amp;#8217;s not expected.&lt;/p&gt;&#10;&#10;&lt;p&gt;Just like you put your site search widget in the top-right of your page and links to your TOS in the page footer because everyone else does, your URLs should be similar to others&amp;#8217; as well.  One of my favorite Nielsen quotes: &amp;#8220;Your visitors spend most of their time on &lt;em&gt;other sites.&lt;/em&gt;&amp;#8221; This should influence &lt;em&gt;all&lt;/em&gt; the aspects of your app&amp;#8217;s UI design, not just its GUI.&lt;/p&gt;&#10;&#10;&lt;h3&gt;An ideal URL is the same on every device.&lt;/h3&gt;&#10;&#10;&lt;p&gt;Jane goes to your website on her iPhone and tweets a link to one of your&#10;pages. John clicks her link on his desktop computer. Should he see a mobile&#10;version of the website? No.&lt;sup id=&quot;fnref:mobile&quot;&gt;&lt;a href=&quot;#fn:mobile&quot; rel=&quot;footnote&quot;&gt;5&lt;/a&gt;&lt;/sup&gt;&lt;/p&gt;&#10;&#10;&lt;h3&gt;Gracefully handle 404s.&lt;/h3&gt;&#10;&#10;&lt;p&gt;Since you would never simply delete a URL (right?), you have to anticipate that many, if not most, of your (human-triggered) 404s are failed attempts to navigate your site via that third user interface, your URL.  What can you do to help you user out? Consider linking to your home page and/or site map — or &lt;em&gt;showing&lt;/em&gt; a directory of major sections. (Apple is great at this.) You can also pre-populate a site search field with terms extracted from the errant URL, an approach I take here at alanhogan.com.&lt;/p&gt;&#10;&#10;&lt;h2 id=&quot;inspiration&quot;&gt;Inspiration&lt;/h2&gt;&#10;&#10;&lt;p&gt;To see what excellent URLs look like in practice, consider these examples.&lt;/p&gt;&#10;&#10;&lt;ol&gt;&#10;&lt;li&gt;&lt;p&gt;Synonym redirection.&lt;/p&gt;&#10;&#10;&lt;p&gt;Visit &lt;a href=&quot;http://apple.com/finalcut&quot;&gt;http://apple.com/finalcut&lt;/a&gt; and you&amp;#8217;re automatically redirected&#10;to &lt;a href=&quot;http://www.apple.com/finalcutstudio/&quot;&gt;http://www.apple.com/finalcutstudio/&lt;/a&gt;.&lt;/p&gt;&lt;/li&gt;&#10;&lt;li&gt;&lt;p&gt;Subdomain &amp;amp; path interchangeability.&lt;/p&gt;&#10;&#10;&lt;p&gt;Google wisely redirects &lt;a href=&quot;http://google.com/docs&quot;&gt;http://google.com/docs&lt;/a&gt;&#10;to &lt;a href=&quot;http://docs.google.com&quot;&gt;http://docs.google.com&lt;/a&gt;. &#10;It hasn&amp;#8217;t always been like this, which is (to me) a fantastic&#10;sign because it means someone at Google cared enough about&#10;the concept of URL as user interface to eventually&#10;set up this redirection.&lt;/p&gt;&lt;/li&gt;&#10;&lt;li&gt;&lt;p&gt;Cross-domain kindness.&lt;/p&gt;&#10;&#10;&lt;p&gt;For technical reasons, Simplenote&amp;#8217;s web editor runs at &lt;a href=&quot;https://simple-note.appspot.com&quot;&gt;https://simple-note.appspot.com&lt;/a&gt; but the canonical product site is at &lt;a href=&quot;http://simplenoteapp.com&quot;&gt;http://simplenoteapp.com&lt;/a&gt;.&lt;/p&gt;&#10;&#10;&lt;p&gt;This meant that the &amp;#8220;Downloads&amp;#8221; link at the bottom of the editor, for example, sends&#10;users to the &lt;em&gt;other&lt;/em&gt; domain. This works fine in &amp;#8220;UI #1,&amp;#8221; the HTML GUI — but from a &#10;URL-as-UI perspective, it stinks because a user who appends &amp;#8220;downloads&amp;#8221; to the &#10;current URL in the web editor would be served a 404 page. Until recently. Now&#10;such requests automatically redirected across the editor domain to the product site.&#10;And why not? We know exactly what the user wants.&lt;/p&gt;&lt;/li&gt;&#10;&lt;li&gt;&lt;p&gt;Context-aware 404s.&lt;/p&gt;&#10;&#10;&lt;p&gt;Apple has a wonderfully specific error page for 404s that occur in their &#10;Final Cut section: &lt;a href=&quot;http://www.apple.com/finalcutstudio/x&quot;&gt;http://www.apple.com/finalcutstudio/x&lt;/a&gt; asks the user,&#10;&amp;#8220;Looking for something on the Pro Apps site?&amp;#8221; and lists products in the suite.&lt;/p&gt;&lt;/li&gt;&#10;&lt;li&gt;&lt;p&gt;Improving unituitive URLs.&lt;/p&gt;&#10;&#10;&lt;p&gt;I keep using Google as an example, but URL design is something they both&#10;struggle with and seem to improve at, over time. Consider their translation&#10;service. It used to be the unintuitive &#10;&lt;a href=&quot;http://google.com/translate_t&quot;&gt;http://google.com/translate_t&lt;/a&gt; (don&amp;#8217;t ask what the &lt;code&gt;_t&lt;/code&gt; meant).&#10;I don&amp;#8217;t think &lt;a href=&quot;http://google.com/translate&quot;&gt;http://google.com/translate&lt;/a&gt; even worked.&#10;Now, however the service lives at the much more memorable and guessable &#10;&lt;a href=&quot;http://translate.google.com&quot;&gt;http://translate.google.com&lt;/a&gt;.  Thankfully, they avoided breaking links by &#10;redirecting from the old URL, and they maintained guessability by making /translate&#10;redirect to the subdomain as well. Huzzah!&lt;/p&gt;&lt;/li&gt;&#10;&lt;/ol&gt;&#10;&#10;&lt;h2 id=&quot;r4i&quot;&gt;Room for Improvement&lt;/h2&gt;&#10;&#10;&lt;p&gt;Let&amp;#8217;s take a look at some less than perfect examples:&lt;/p&gt;&#10;&#10;&lt;ol&gt;&#10;&lt;li&gt;&lt;p&gt;Not anticipating the company.com/major-functionality pattern.&lt;/p&gt;&#10;&#10;&lt;p&gt;&lt;a href=&quot;http://google.com/spreadsheets&quot;&gt;http://google.com/spreadsheets&lt;/a&gt; results in a 404 File Not Found error.&lt;sup id=&quot;fnref:spr&quot;&gt;&lt;a href=&quot;#fn:spr&quot; rel=&quot;footnote&quot;&gt;6&lt;/a&gt;&lt;/sup&gt;&lt;/p&gt;&#10;&#10;&lt;p&gt;Is an obnoxious, cute, unhelpful page really the answer here, when&#10;a user is clearly requesting the spreadsheet functionality of Google Docs?&lt;/p&gt;&#10;&#10;&lt;p&gt;Google Docs&amp;#8217; spreadsheet functionality is apparently &lt;strong&gt;not considered a product&#10;itself&lt;/strong&gt; but it&amp;#8217;s not smart to make the URLs reflect this arbitrary and elusive&#10;definition. After all, the Big Competitor here — Excel — is not the same&#10;product as Microsoft Word, is it? Microsoft handles &lt;a href=&quot;http://microsoft.com/excel&quot;&gt;http://microsoft.com/excel&lt;/a&gt;&#10;with an appropriate Excel-specific redirection.  As an underdog competitor&#10;here, Google should expect end users to have the Office family&#10;of discrete products (Word, Excel, …) as the basis for their mental model&#10;of Google Docs.&lt;/p&gt;&lt;/li&gt;&#10;&lt;li&gt;&lt;p&gt;Not anticipating the company.com/product-nickname pattern.&lt;/p&gt;&#10;&#10;&lt;p&gt;&lt;a href=&quot;http://www.apple.com/osx&quot;&gt;http://www.apple.com/osx&lt;/a&gt; results in a generic 404.&lt;sup id=&quot;fnref:lion&quot;&gt;&lt;a href=&quot;#fn:lion&quot; rel=&quot;footnote&quot;&gt;7&lt;/a&gt;&lt;/sup&gt;&lt;/p&gt;&#10;&#10;&lt;p&gt;It ought to redirect to &lt;a href=&quot;http://www.apple.com/macosx/&quot;&gt;http://www.apple.com/macosx/&lt;/a&gt;.&lt;/p&gt;&#10;&#10;&lt;p&gt;(At least a link to that page is provided on the 404 page!)&lt;/p&gt;&lt;/li&gt;&#10;&lt;li&gt;&lt;p&gt;Not getting mobile URLs right.&lt;/p&gt;&#10;&#10;&lt;p&gt;In a &lt;a href=&quot;http://www.slideshare.net/robman/web-strategy-is-moving-presentation&quot;&gt;classic presentation&lt;/a&gt;, Rob Manson noted an Australian company&#10;whose main website is at &lt;a href=&quot;http://quantas.com.au&quot;&gt;http://quantas.com.au&lt;/a&gt;, but &#10;whose iPhone website was at &lt;a href=&quot;http://quantas.com/mobile&quot;&gt;http://quantas.com/mobile&lt;/a&gt;. &#10;Note the sudden disappearance of the &amp;#8220;.au&amp;#8221; from that domain.&lt;/p&gt;&#10;&#10;&lt;p&gt;While it&amp;#8217;s bad enough to segregate URLs into mobile and non-mobile&#10;versions (in most cases), doing so in completely counter-intuitive fashion&#10;is a tragedy — especially if you aren&amp;#8217;t doing automatic redirection!&lt;/p&gt;&lt;/li&gt;&#10;&lt;li&gt;&lt;p&gt;Not registering domains &amp;amp; subdomains for your product, or disregarding common use-cases.&lt;/p&gt;&#10;&#10;&lt;p&gt;Adobe provides us an interesting case to consider. Imagine someone guessing&#10;at a URL from which they could download the latest version of the Flash player.&#10;(Hey, it&amp;#8217;s important — apparently 50% of the Mac&amp;#8217;s security problems — and&#10;a definite majority of browser crashes! — are due to Flash bugs.) How do they fare?&lt;/p&gt;&#10;&#10;&lt;ul&gt;&#10;&lt;li&gt;&lt;p&gt;&lt;a href=&quot;http://adobe.flash.com&quot;&gt;http://adobe.flash.com&lt;/a&gt; is &lt;em&gt;almost&lt;/em&gt; great: It redirects to a software&#10;download page with a link to download Flash Player, but it&amp;#8217;s&#10;surrounded by tons of products that have nothing to do with Flash.&lt;/p&gt;&lt;/li&gt;&#10;&lt;li&gt;&lt;p&gt;Interestingly &lt;a href=&quot;http://flash.com&quot;&gt;http://flash.com&lt;/a&gt; is aimed at developers and &#10;attempts to sell the visitor on the &amp;#8220;Adobe Flash Platform&amp;#8221;.&lt;/p&gt;&lt;/li&gt;&#10;&lt;li&gt;&lt;p&gt;&lt;a href=&quot;http://adobeflash.com&quot;&gt;http://adobeflash.com&lt;/a&gt; is a kind of third-party site.&#10;I wonder how Adobe let that happen. I&amp;#8217;d guess they haven&amp;#8217;t made&#10;too big a fuss because the site, though it feels kind of spammy, does offer&#10;free resources for Flash developers.&lt;/p&gt;&lt;/li&gt;&#10;&lt;li&gt;&lt;p&gt;&lt;a href=&quot;http://adobe.com/flash&quot;&gt;http://adobe.com/flash&lt;/a&gt; redirects to Flash Professional, &#10;the Flash-creation product part of Creative Suite. No, this is&#10;&lt;em&gt;not&lt;/em&gt; the same thing as the Flash Platform at flash.com.&lt;/p&gt;&lt;/li&gt;&#10;&lt;/ul&gt;&#10;&#10;&lt;p&gt;I was initially impressed with &lt;a href=&quot;http://adobe.flash.com&quot;&gt;http://adobe.flash.com&lt;/a&gt; actually being relevant to the &#10;&amp;#35;1 reason people would want to do something having to do with the words &amp;#8220;Adobe&amp;#8221;&#10;and &amp;#8220;Flash&amp;#8221;, but altogether I&amp;#8217;m not impressed:&lt;/p&gt;&#10;&#10;&lt;ul&gt;&#10;&lt;li&gt;&lt;p&gt;Why are &lt;em&gt;all four&lt;/em&gt; of the above URLs redirecting to completely different pages?&lt;/p&gt;&lt;/li&gt;&#10;&lt;li&gt;&lt;p&gt;Why aren&amp;#8217;t &lt;em&gt;any&lt;/em&gt; of the above four URLs going to a page whose primary&#10;purpose is to let people download Flash Player? (Expecting normal people&#10;to call it Flash Player instead of Flash is hopelessly naïve!)&lt;/p&gt;&lt;/li&gt;&#10;&lt;li&gt;&lt;p&gt;Why is there an assumption that it&amp;#8217;s more common, responsible, and/or profitable&#10;for people to need to buy Flash than to download the latest player?&#10;After all — someone having a bit of difficulty updating Flash Player is more &#10;likely to abandon the process than a professional trying to purchase Flash&#10;Professional… &lt;em&gt;and&lt;/em&gt; Player releases come out much more often than the newest&#10;version of Creative Suite does… &lt;em&gt;and&lt;/em&gt; way more people have Flash Player than&#10;Flash Professional.&lt;/p&gt;&lt;/li&gt;&#10;&lt;/ul&gt;&#10;&#10;&lt;p&gt;The harder it is to get a legit Flash player update, the more likely&#10;people are to be tricked into downloading a spyware/Trojan &amp;#8220;codec&amp;#8221;&#10;from that porn/warez/squatter site. One could then argue that Adobe&amp;#8217;s URL&#10;failings here are unethical, or at least negligent!&lt;/p&gt;&lt;/li&gt;&#10;&lt;/ol&gt;&#10;&#10;&lt;h2&gt;Caveat&lt;/h2&gt;&#10;&#10;&lt;p&gt;Users are trained to navigate primarily through the HTML GUI.&lt;/p&gt;&#10;&#10;&lt;p&gt;Still, power users, keyboard aficionados, and those with good memories (especially) sometimes navigate via URL.&lt;/p&gt;&#10;&#10;&lt;p&gt;For me, URL as UI feels important, but taking it as seriously as I try to may not be necessary in many cases.  Yet as your site becomes more popular, the potential to turn more 404s into successful uses of our most neglected user interface grows.  I encourage you to take advantage of that opportunity.&lt;/p&gt;&#10;&#10;&lt;div class=&quot;footnotes&quot;&gt;&#10;&lt;div class=&quot;hr&quot;&gt;&lt;hr /&gt;&lt;/div&gt;&#10;&lt;ol&gt;&#10;&#10;&lt;li id=&quot;fn:nn&quot;&gt;&#10;&lt;p&gt;It&amp;#8217;s not a new idea, but it&amp;#8217;s not universally adopted or always perfectly executed. See the &lt;a href=&quot;#r4i&quot;&gt;Room for Improvement&lt;/a&gt; section.&amp;#160;&lt;a href=&quot;#fnref:nn&quot; rev=&quot;footnote&quot;&gt;&amp;#8617;&lt;/a&gt;&lt;/p&gt;&#10;&lt;/li&gt;&#10;&#10;&lt;li id=&quot;fn:slash&quot;&gt;&#10;&lt;p&gt;Including the slash itself, or not.&amp;#160;&lt;a href=&quot;#fnref:slash&quot; rev=&quot;footnote&quot;&gt;&amp;#8617;&lt;/a&gt;&lt;/p&gt;&#10;&lt;/li&gt;&#10;&#10;&lt;li id=&quot;fn:sec&quot;&gt;&#10;&lt;p&gt;I have heard that exposing your site tech can make you slightly more vulnerable to hacking, as an attacker can use known vulnerabilities in your technology stack against you. Still, you&amp;#8217;re just as likely to leak this info via your &lt;code&gt;X-Powered-By&lt;/code&gt; HTTP header, error pages, markup, or one of a myriad of other ways.&amp;#160;&lt;a href=&quot;#fnref:sec&quot; rev=&quot;footnote&quot;&gt;&amp;#8617;&lt;/a&gt;&lt;/p&gt;&#10;&lt;/li&gt;&#10;&#10;&lt;li id=&quot;fn:seo&quot;&gt;&#10;&lt;p&gt;Or support both &lt;code&gt;/foo&lt;/code&gt; and &lt;code&gt;/foo/&lt;/code&gt; without redirection — but for SEO purposes, you should then probably use rel-canonical to indicate the preferred URL.&amp;#160;&lt;a href=&quot;#fnref:seo&quot; rev=&quot;footnote&quot;&gt;&amp;#8617;&lt;/a&gt;&lt;/p&gt;&#10;&lt;/li&gt;&#10;&#10;&lt;li id=&quot;fn:mobile&quot;&gt;&#10;&lt;p&gt;There is not really a consensus that the &lt;code&gt;m.example.com&lt;/code&gt; domain pattern is inherently bad. But you must really nail the implementation, or there will be problems like the one I mention.&amp;#160;&lt;a href=&quot;#fnref:mobile&quot; rev=&quot;footnote&quot;&gt;&amp;#8617;&lt;/a&gt;&lt;/p&gt;&#10;&lt;/li&gt;&#10;&#10;&lt;li id=&quot;fn:spr&quot;&gt;&#10;&lt;p&gt;As of June 15, 2011. Hopefully this will change at some point in the future. &lt;a href=&quot;http://alanhogan.com/files/spreadsheets-404.png&quot;&gt;Here is a screen shot&lt;/a&gt; of Google&amp;#8217;s worthless 404 at this URL. For a comparison, note that currently &lt;a href=&quot;http://microsoft.com/spreadsheets&quot;&gt;http://microsoft.com/spreadsheets&lt;/a&gt; yields a &lt;em&gt;helpful&lt;/em&gt; 404 that includes search results &amp;#8212; this first of which is a link to Excel (&lt;a href=&quot;http://alanhogan.com/files/microsoft-spreadsheet-404.png&quot;&gt;screen shot&lt;/a&gt;). Success!&amp;#160;&lt;a href=&quot;#fnref:spr&quot; rev=&quot;footnote&quot;&gt;&amp;#8617;&lt;/a&gt;&lt;/p&gt;&#10;&lt;/li&gt;&#10;&#10;&lt;li id=&quot;fn:lion&quot;&gt;&#10;&lt;p&gt;As of WWDC 2011, Apple changed the name of their desktop operating system from &amp;#8220;Mac OS X&amp;#8221; to &amp;#8220;OS X&amp;#8221; (ahead of the release of OS X 10.7 Lion). I expect their URL situation to update to match this situation, soon.&amp;#160;&lt;a href=&quot;#fnref:lion&quot; rev=&quot;footnote&quot;&gt;&amp;#8617;&lt;/a&gt;&lt;/p&gt;&#10;&lt;/li&gt;&#10;&#10;&lt;/ol&gt;&#10;&lt;/div&gt;&#10;</description>
   <guid>http://alanhogan.com/url-as-ui</guid>
   <link>http://alanhogan.com/url-as-ui</link>
   <category>UI</category>
   <category>UX</category>
   <title>URL as UI</title>
   <pubDate>Wed, 15 Jun 2011 13:35:00 -0400</pubDate>
  </item>
  <item>
   <description>&#10;&#10;&lt;p&gt;The classic problem of not being able to indent or outdent text in &lt;code&gt;textarea&lt;/code&gt; elements on the Web has been &lt;a href=&quot;http://teddevito.com/demos/textarea.html&quot; title=&quot;Original website and demo&quot;&gt;solved&lt;/a&gt; by &lt;a href=&quot;http://teddevito.com/&quot; title=&quot;Ted’s website&quot;&gt;Ted Devito&lt;/a&gt;.  That’s right, you can now  use the Tab and Shift+Tab keys to indent any number of lines, in plain old &lt;code&gt;textarea&lt;/code&gt;s.&lt;/p&gt;&#10;&#10;&lt;p&gt;Developers: Use &lt;a href=&quot;https://github.com/alanhogan/Tabby&quot;&gt;Tabby&lt;/a&gt;, a jQuery plugin.&lt;/p&gt;&#10;&#10;&lt;p&gt;Everybody: Tabby is a available as a &lt;a href=&quot;/bookmarklets#tabby&quot;&gt;bookmarklet&lt;/a&gt;. One click, and the free-form text entry controls on most any website should now bow to your tab-related desires.&lt;/p&gt;&#10;&#10;&lt;!--http://alanhogan.com/code/tabs-in-textareas--&gt;&#10;</description>
   <guid>http://alanhogan.com/code/tabs-in-textareas</guid>
   <link>http://alanhogan.com/code/tabs-in-textareas</link>
   <category>jQuery</category>
   <category>web dev</category>
   <title>Tab and Indenting in Textarea Elements</title>
   <pubDate>Mon, 04 Apr 2011 18:24:34 -0400</pubDate>
  </item>
 </channel>
</rss>
