<?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>Code Zen &#187; User Experience</title>
	<atom:link href="http://arpitonline.com/blog/category/user-experience/feed/" rel="self" type="application/rss+xml" />
	<link>http://arpitonline.com/blog</link>
	<description>I write pretty software</description>
	<lastBuildDate>Thu, 16 May 2013 22:46:34 +0000</lastBuildDate>
	<language>en-US</language>
	<sy:updatePeriod>hourly</sy:updatePeriod>
	<sy:updateFrequency>1</sy:updateFrequency>
	<generator>http://wordpress.org/?v=3.5.1</generator>
		<item>
		<title>Location Check-Ins are the new Photos</title>
		<link>http://arpitonline.com/blog/2012/01/12/location-check-ins-are-the-new-photos/</link>
		<comments>http://arpitonline.com/blog/2012/01/12/location-check-ins-are-the-new-photos/#comments</comments>
		<pubDate>Fri, 13 Jan 2012 00:53:04 +0000</pubDate>
		<dc:creator>Arpit</dc:creator>
				<category><![CDATA[Android]]></category>
		<category><![CDATA[iOS]]></category>
		<category><![CDATA[Miscellaneous]]></category>
		<category><![CDATA[User Experience]]></category>

		<guid isPermaLink="false">http://www.arpitonline.com/blog/?p=954</guid>
		<description><![CDATA[Off late I have started using quite a few location based services like Foursquare, Foodspotting etc, and everyday more interesting apps crop up. However the current model for location based apps requires me to check into each app individually. The problem is when I am at someplace interesting enough to check in to, I am [...]]]></description>
				<content:encoded><![CDATA[<p>Off late I have started using quite a few location based services like Foursquare, Foodspotting etc, and everyday more interesting apps crop up. However the current model for location based apps requires me to check into each app individually. The problem is when I am at someplace interesting enough to check in to, I am usually with people and I can only take so much time peering into my phone before coming across as rude to the rest of the group.</p>
<p>Compare this with how I interact with photos today. I take a pic and then can choose among any number of apps on your device that can do interesting things with it. Even better, I can manipulate the photos after the event I was taking the picture at.</p>
<p>I feel the whole model of checking-into a location has matured to a point where it can graduate from the app level to the platform level. I would much rather bring up some native location app and check-in to my phone. The check-in is an actual object, like pictures or music and it is now owned by me. It contains the location information as well as the time. Once checked in, I can &#8220;share&#8221; my checkin to any apps that can do something with it. So I can forward my checkin to Foursquare to inform all my friends I am there, to FoodSpotting to discover whats good to eat there and to any other app that may need that info.</p>
<p>This model has a number of advantages to it:</p>
<ul>
<li>I am building up a location history that is no longer trapped inside one app or service.</li>
<li>I can choose to share my checkin with apps later (for example if my only motivation was to get some virtual points for being there, I can check into that service the next day)</li>
<li>I can checkin to multiple services in poor connectivity locations by only needing to pull in map images etc once.</li>
</ul>
<p>&nbsp;</p>
<p>Of course there are certain challenges here:</p>
<ul>
<li>Some services like Foursquare may want to know immediately when you have checked in to present local offers etc. This could be done by the platform sending a system level event that these apps can listen to when a user checks in to a location.</li>
<li>Different services have different location data, for example Foursquare has a lot of geo data but Foodspotting may have better data on restaurants so there will be the need for some standard model of annotating the location with other meta information while the user is locating himself on the map. For example, the map the user is presumably zooming in to can show pins from different services with different icons.</li>
</ul>
<p>&nbsp;</p>
<p>Hopefully platforms like Android and iOS add this capability as a core part of the OS pretty much like we use maps today. Till then, the idea of using more than one or two location services at any point is pretty difficult.</p>
]]></content:encoded>
			<wfw:commentRss>http://arpitonline.com/blog/2012/01/12/location-check-ins-are-the-new-photos/feed/</wfw:commentRss>
		<slash:comments>1</slash:comments>
		</item>
		<item>
		<title>On Better Printers</title>
		<link>http://arpitonline.com/blog/2011/10/01/on-better-printers/</link>
		<comments>http://arpitonline.com/blog/2011/10/01/on-better-printers/#comments</comments>
		<pubDate>Sat, 01 Oct 2011 18:56:31 +0000</pubDate>
		<dc:creator>Arpit</dc:creator>
				<category><![CDATA[User Experience]]></category>

		<guid isPermaLink="false">http://www.arpitonline.com/blog/?p=861</guid>
		<description><![CDATA[After another fairly annoying morning with my printer, I was reminded of this satirical post that the Onion ran on Tim Cook and Printers. The premise of this was basically that printers were as dull as a topic anyone could think of (basically emphasizing the difference between the creative Steve Jobs and the very operationally [...]]]></description>
				<content:encoded><![CDATA[<p>After another fairly annoying morning with my printer, I was reminded of this satirical post that the Onion ran on Tim Cook and Printers. The premise of this was basically that printers were as dull as a topic anyone could think of (basically emphasizing the difference between the creative Steve Jobs and the very operationally centric Tim Cook)</p>
<table style="margin-bottom: 20px;" border="0" cellspacing="0" cellpadding="0" width="370" align="center">
<tbody>
<tr>
<td><a href="http://www.theonion.com/articles/new-apple-ceo-tim-cook-im-thinking-printers,21207/" target="_blank">New Apple CEO Tim Cook: &#8216;I&#8217;m Thinking Printers&#8217;</a></p>
<div style="margin-left: NaN; font-size: 11px; line-height: 1.5;">SAN FRANCISCO-Following the resignation of Apple founder Steve Jobs, incoming CEO Tim Cook called a meeting of shareholders and members of the press Thursday morning to announce that he envisioned printers as the company&#8217;s future. &#8220;Laser, ink-jet, double-sided, color, black-and-white-the future of technology is in printers.</div>
</td>
<td rowspan="4"><img style="margin: 5px;" src="http://o.onionstatic.com/images/articles/article/21/21207/NIB_Tim_Cook_R_jpg_130x110_q85.jpg" border="0" alt="img" width="100" /></td>
</tr>
</tbody>
</table>
<p>And yet I really do think printers need their &#8220;ipod&#8221; moment. We have for far too long been stuck with a purely utilitarian implementation that is a cause of frustration more often than not. Anyone remember this sketch by Eddie Izzard?</p>
<p>So I really like this printer concept that I saw last week. This may of course be overkill, but I can&#8217;t wait till I have a printer that actually is joyous to use.</p>
<p>Of course I feel the days of the printer may be numbered. I hardly ever use mine except to occasionally print boarding passes for the few airlines that dont yet generate emails with those as QR codes, but still if I do have to have one, I want one of those <img src='http://arpitonline.com/blog/wp-includes/images/smilies/icon_smile.gif' alt=':)' class='wp-smiley' /> </p>
<p>Update:</p>
<p>Meanwhile there are folks at <a href="http://bergcloud.com/littleprinter/">Bergcloud</a> who are completely reimagining printers more as a toy.</p>
<p><iframe src="http://player.vimeo.com/video/32796535?byline=0&amp;portrait=0&amp;color=ffffff" width="400" height="225" frameborder="0" webkitAllowFullScreen mozallowfullscreen allowFullScreen></iframe>
<p><a href="http://vimeo.com/32796535">Hello Little Printer, available 2012</a> from <a href="http://vimeo.com/bergstudio">BERG</a> on <a href="http://vimeo.com">Vimeo</a>.</p>
]]></content:encoded>
			<wfw:commentRss>http://arpitonline.com/blog/2011/10/01/on-better-printers/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Notes on Game Mechanics</title>
		<link>http://arpitonline.com/blog/2010/10/16/notes-on-game-mechanics/</link>
		<comments>http://arpitonline.com/blog/2010/10/16/notes-on-game-mechanics/#comments</comments>
		<pubDate>Sat, 16 Oct 2010 20:55:20 +0000</pubDate>
		<dc:creator>Arpit</dc:creator>
				<category><![CDATA[User Experience]]></category>

		<guid isPermaLink="false">http://www.arpitonline.com/blog/?p=627</guid>
		<description><![CDATA[The recent explosion of &#8220;game based&#8221; apps out has led me to read quite a bit about the topic. Here are some notes on books, articles and presentations I have been reading: Some Rules for Game-Based Systems (from the book Game Based Marketing): Favor long term loyalty not short term competitions Dont offer direct prizes, offer [...]]]></description>
				<content:encoded><![CDATA[<p>The recent explosion of &#8220;game based&#8221; apps out has led me to read quite a bit about the topic. Here are some notes on books, articles and presentations I have been reading:</p>
<p><strong>Some Rules for Game-Based Systems (from the book <a href="http://www.amazon.com/gp/product/0470562234?ie=UTF8&amp;tag=funwareblog-20&amp;linkCode=as2&amp;camp=1789&amp;creative=390957&amp;creativeASIN=0470562234">Game Based Marketing</a>):</strong></p>
<ul>
<li>Favor long term loyalty not short term competitions</li>
<li>Dont offer direct prizes, offer virtual points. Real world value of virtual points can be tweaked at the time of redemption.</li>
<li>Virtual points can also be used for virtual goods. Virtual Goods Economy is 5.5 Billion Dollars</li>
<li>Does redemption matter? Huge number of points are almost never redeemed</li>
<li>Top 5% of airline customers generate 40% of the revenue</li>
<li>Create opportunities for elite members to show their eliteness (like lounges in Airports open only to elite members)</li>
<li>Create artificial scarcity and rewards around it.</li>
<li>First reward should be soon</li>
<li>Casino style *random* rewards create short cycle reinforcement</li>
<li>Need both long term goals (level ups) and short term (mini games/challenges)</li>
<li>All game based systems need:
<ul>
<li>Large community</li>
<li>Point System</li>
<li>Simple Communication platform<span class="__wave_paste"> </span><span> </span></li>
</ul>
</li>
</ul>
<p><strong>Types of Players (from the book <a href="http://www.amazon.com/gp/product/0470562234?ie=UTF8&amp;tag=funwareblog-20&amp;linkCode=as2&amp;camp=1789&amp;creative=390957&amp;creativeASIN=0470562234">Game Based Marketing</a>):</strong></p>
<div id="_mcePaste" style="position: absolute; left: -10000px; top: 212px; width: 1px; height: 1px; overflow: hidden;">Four Player types based on motivation:</div>
<div id="_mcePaste" style="position: absolute; left: -10000px; top: 212px; width: 1px; height: 1px; overflow: hidden;">Achievers</div>
<div id="_mcePaste" style="position: absolute; left: -10000px; top: 212px; width: 1px; height: 1px; overflow: hidden;">Go to great lengths to get rewards</div>
<div id="_mcePaste" style="position: absolute; left: -10000px; top: 212px; width: 1px; height: 1px; overflow: hidden;">Dont care for winning in a vacuum: need an audience (leaderboards)</div>
<div id="_mcePaste" style="position: absolute; left: -10000px; top: 212px; width: 1px; height: 1px; overflow: hidden;">Need the Socializer</div>
<div id="_mcePaste" style="position: absolute; left: -10000px; top: 212px; width: 1px; height: 1px; overflow: hidden;">Socializer:</div>
<div id="_mcePaste" style="position: absolute; left: -10000px; top: 212px; width: 1px; height: 1px; overflow: hidden;">Want to build meaningful interactions</div>
<div id="_mcePaste" style="position: absolute; left: -10000px; top: 212px; width: 1px; height: 1px; overflow: hidden;">Often are more about helping others win rather than winning themselves</div>
<div id="_mcePaste" style="position: absolute; left: -10000px; top: 212px; width: 1px; height: 1px; overflow: hidden;">Explorers:</div>
<div id="_mcePaste" style="position: absolute; left: -10000px; top: 212px; width: 1px; height: 1px; overflow: hidden;">Need rich virtual worlds to explore</div>
<div id="_mcePaste" style="position: absolute; left: -10000px; top: 212px; width: 1px; height: 1px; overflow: hidden;">Love to share detailed accounts of their explorations</div>
<div id="_mcePaste" style="position: absolute; left: -10000px; top: 212px; width: 1px; height: 1px; overflow: hidden;">Long games with repeated actions bore them</div>
<div id="_mcePaste" style="position: absolute; left: -10000px; top: 212px; width: 1px; height: 1px; overflow: hidden;">Killers:</div>
<div id="_mcePaste" style="position: absolute; left: -10000px; top: 212px; width: 1px; height: 1px; overflow: hidden;">Need simulated win &amp; lose conditions</div>
<div id="_mcePaste" style="position: absolute; left: -10000px; top: 212px; width: 1px; height: 1px; overflow: hidden;">** The Naive Player **</div>
<div id="_mcePaste" style="position: absolute; left: -10000px; top: 212px; width: 1px; height: 1px; overflow: hidden;">Fairly unaware</div>
<div id="_mcePaste" style="position: absolute; left: -10000px; top: 212px; width: 1px; height: 1px; overflow: hidden;">Need to be made aware that a game is going on</div>
<ul>
<li>Achievers
<ul>
<li>Go to great lengths to get rewards</li>
<li>Dont care for winning in a vacuum: need an audience (leaderboards)</li>
<li>Need the Socializer</li>
</ul>
</li>
<li>Socializer:
<ul>
<li>Want to build meaningful interactions</li>
<li>Often are more about helping others win rather than winning themselves</li>
</ul>
</li>
<li>Explorers:
<ul>
<li>Need rich virtual worlds to explore</li>
<li>Love to share detailed accounts of their explorations</li>
<li>Long games with repeated actions bore them</li>
</ul>
</li>
<li>Killers:
<ul>
<li>Need simulated win &amp; lose conditions</li>
</ul>
</li>
<li>The Naive Player
<ul>
<li>Fairly unaware</li>
<li>Need to be made aware that a game is going on</li>
</ul>
</li>
</ul>
<p><strong>A really awesome presentation on the shallow game design that seems to be creeping into web properties byÂ <a href="http://www.slideshare.net/dings">Sebastian Deterding</a></strong></p>
<blockquote><p>&#8220;Yet when I look at most gamified applications today what they do is use game elements to tie us even more tightly into our worldly toils and schemes. They are glorified report cards that turn games into work rather than life into play, and users into pawns instead of players&#8221;<strong> </strong></p></blockquote>
<ul>
<div id="__ss_5310277" style="width: 425px;"><strong><a title="Pawned. Gamification and Its Discontents" href="http://www.slideshare.net/dings/pawned-gamification-and-its-discontents">Pawned. Gamification and Its Discontents</a></strong><object id="__sse5310277" style="background-color: #ffffcc; background-image: url(http://www.arpitonline.com/blog/wp-includes/js/tinymce/plugins/media/img/flash.gif); background-position: 50% 50%; background-repeat: no-repeat no-repeat; border: 1px dotted #cc0000;" classid="clsid:d27cdb6e-ae6d-11cf-96b8-444553540000" width="425" height="355" codebase="http://download.macromedia.com/pub/shockwave/cabs/flash/swflash.cab#version=6,0,40,0"><param name="allowFullScreen" value="true" /><param name="allowScriptAccess" value="always" /><param name="src" value="http://static.slidesharecdn.com/swf/ssplayer2.swf?doc=playful2010pawned100924-100928182146-phpapp01&amp;stripped_title=pawned-gamification-and-its-discontents&amp;userName=dings" /><param name="name" value="__sse5310277" /><param name="allowfullscreen" value="true" /><embed id="__sse5310277" style="background-color: #ffffcc; background-image: url(http://www.arpitonline.com/blog/wp-includes/js/tinymce/plugins/media/img/flash.gif); background-position: 50% 50%; background-repeat: no-repeat no-repeat; border: 1px dotted #cc0000;" type="application/x-shockwave-flash" width="425" height="355" src="http://static.slidesharecdn.com/swf/ssplayer2.swf?doc=playful2010pawned100924-100928182146-phpapp01&amp;stripped_title=pawned-gamification-and-its-discontents&amp;userName=dings" name="__sse5310277" allowscriptaccess="always" allowfullscreen="true"></embed></object></div>
</ul>
<div>
<p><strong>Notes from </strong><a href="http://mediacommons.futureofthebook.org/content/cultivated-play-farmville"><strong>Cultivated play: Farmville</strong></a><strong>:</strong></p>
<blockquote><p>The secret to <em>Farmville&#8217;</em>s popularity is neither gameplay nor aesthetics.Â <em>Farmville</em> is popular because in entangles users in a web of social obligations. When users log into Facebook, they are reminded that their neighbors have sent them gifts, posted bonuses on their walls, and helped with each othersâ€™ farms. In turn, they are obligated to return the courtesies.</p></blockquote>
<ul>
<li><span style="font-family: Georgia, 'Times New Roman', Times, 'Bitstream Vera Serif', serif; font-style: italic;">Farmville</span><span style="font-family: Georgia, 'Times New Roman', Times, 'Bitstream Vera Serif', serif;"> is defined by obligation, routine, and responsibility;</span></li>
<li><span style="font-family: Georgia, 'Times New Roman', Times, 'Bitstream Vera Serif', serif; font-style: italic;">Farmville</span><span style="font-family: Georgia, 'Times New Roman', Times, 'Bitstream Vera Serif', serif;"> encroaches and depends upon real life, and is never entirely separate from it;</span></li>
<li><span style="font-family: Georgia, 'Times New Roman', Times, 'Bitstream Vera Serif', serif; font-style: italic;">Farmville</span><span style="font-family: Georgia, 'Times New Roman', Times, 'Bitstream Vera Serif', serif;"> is always certain in outcome, and involves neither chance nor skill;</span></li>
<li><span style="font-family: Georgia, 'Times New Roman', Times, 'Bitstream Vera Serif', serif; font-style: italic;">Farmville</span><span style="font-family: Georgia, 'Times New Roman', Times, 'Bitstream Vera Serif', serif;"> is a productive activity, in that it adds to the social capital upon which Facebook and Zynga depend for their wealth;</span></li>
<li><span style="font-family: Georgia, 'Times New Roman', Times, 'Bitstream Vera Serif', serif; font-style: italic;">Farmville</span><span style="font-family: Georgia, 'Times New Roman', Times, 'Bitstream Vera Serif', serif;"> is governed not by rules, but by habits, and simple cause-and-effect;</span></li>
<li><span style="font-family: Georgia, 'Times New Roman', Times, 'Bitstream Vera Serif', serif; font-style: italic;">Farmville</span><span style="font-family: Georgia, 'Times New Roman', Times, 'Bitstream Vera Serif', serif;"> is not make-believe, in that it requires neither immersion </span><span style="font-family: Georgia, 'Times New Roman', Times, 'Bitstream Vera Serif', serif;">nor</span><span style="font-family: Georgia, 'Times New Roman', Times, 'Bitstream Vera Serif', serif;"> suspension of disbelief</span></li>
</ul>
</div>
<p><strong>Other links:</strong></p>
<ul>
<li><a href="http://www.scvngr.com/">Scvngr</a>&#8216;s <a href="http://techcrunch.com/2010/08/25/scvngr-game-mechanics/">game dynamics playdeck</a></li>
<li><a href="http://www.cracked.com/article_18461_5-creepy-ways-video-games-are-trying-to-get-you-addicted_p1.html">5 Creepy Ways Video Games Are Trying to Get You Addicted</a></li>
<li><a href="http://www.hideandseek.net/cant-play-wont-play/">Can’t play, won’t play</a></li>
</ul>
]]></content:encoded>
			<wfw:commentRss>http://arpitonline.com/blog/2010/10/16/notes-on-game-mechanics/feed/</wfw:commentRss>
		<slash:comments>4</slash:comments>
		</item>
		<item>
		<title>On User notifications: Alert, Notify, Acknowledge</title>
		<link>http://arpitonline.com/blog/2010/10/14/on-user-notifications-alert-notify-acknowledge/</link>
		<comments>http://arpitonline.com/blog/2010/10/14/on-user-notifications-alert-notify-acknowledge/#comments</comments>
		<pubDate>Thu, 14 Oct 2010 19:48:33 +0000</pubDate>
		<dc:creator>Arpit</dc:creator>
				<category><![CDATA[User Experience]]></category>

		<guid isPermaLink="false">http://www.arpitonline.com/blog/?p=652</guid>
		<description><![CDATA[In any client-side application of reasonable complexity there is a lot going on. There are numerous moments during its lifespan where it might want to communicate to the user of different events: errors, underlying data changes, etc etc. While coding an application, its very convenient to just use the native &#8220;Alert&#8221; implementation to inform the [...]]]></description>
				<content:encoded><![CDATA[<p>In any client-side application of reasonable complexity there is a lot going on. There are numerous moments during its lifespan where it might want to communicate to the user of different events: errors, underlying data changes, etc etc. While coding an application, its very convenient to just use the native &#8220;Alert&#8221;  implementation to inform the user of some change in the application state. Every UI framework supports it, and in some cases like the iOS UIKit, it doesn&#8217;t look awful almost leading you think it may not be a bad idea.</p>
<p>Unlike people though, all user notifications aren&#8217;t made equal. Alerts demand immediate attention (in the case of JavaScript, they stop the entire GUI thread freezing the application, though thats not the case in other UI technologies). Recently I wanted to get rid of the Alert windows I had placed in my rush to get <a href="http://espressoreader.com">EspressoReader</a> out of the door, and started looking at different notification paradigms out there.</p>
<p>One concept I wanted to borrow from was application logging frameworks like <a href="http://logging.apache.org/log4j/1.2/">Log4J</a>. Logging frameworks usually define a series of levels that you can use to define the priority of your message, for example in the case of Log4J the levels are:</p>
<ol>
<li>Debug</li>
<li>Info</li>
<li>Warn</li>
<li>Error</li>
<li>Fatal</li>
</ol>
<p>While tempting, these dont really map to any order of priority for end user notifications.Â Looking around the web though, Â I did see some interesting ideas around notifications. For example, XUL (Firefox&#8217;s UI framework) includes a <a href="https://developer.mozilla.org/en/XUL/notificationbox">NotificationBox</a> control:</p>
<p><img src="https://developer.mozilla.org/@api/deki/files/4114/=notificationbox2.png" alt="" /></p>
<p>This system seems to be getting pretty popular now, with the Chrome browser UI framework including something similar to that as well. Gmail notifications are in the same vein:</p>
<p><img src="http://1.bp.blogspot.com/_ZaGO7GjCqAI/ScLQ6MQUAPI/AAAAAAAAPPA/3b_tPQojS7w/s640/undo-sending-mail.png" alt="" /></p>
<p>The thing with GMail notifications is that they are closer to the actual interaction that prompted the notification which works well (<a href="http://en.wikipedia.org/wiki/Fitts's_law">Fitt&#8217;s law</a> in action!)</p>
<p>I guess this system is slowly becoming standard. I really wish &#8220;notify&#8221; was a built in function in JavaScript similar to &#8220;alert&#8221; but at least there is a<a href="http://www.dmitri.me/misc/notify/"> jQuery plugin</a> that seems to add that functionality now.</p>
<p>Another interesting notification system is the fading message box like discussed <a href="http://vaadin.com/blog/-/blogs/user-notifications-with-vaadin">here</a>, or more famously, as shown by <a href="http://growl.info/">Growl</a></p>
<p><img src="http://tabi-proxy.googlecode.com/svn/trunk/images/Growl_notification.png" alt="" /></p>
<p>However, the problem with such notifications is that they are pretty transient (generally fade out), which is often not what you want. I couldn&#8217;t really find an official name for these so I call them &#8220;acknowledge boxes&#8221;. On the importance scale, these seem to the ones with least importance. Another acknowledge notification is an audio clip played when an action is performed, though those need to be used with caution since they get annoying pretty soon.</p>
<p>So here is my sorted list of prioritized notification UIs:</p>
<ol>
<li><strong>Alert</strong>: Most severe, &#8220;deal with me now&#8221; kind of messages</li>
<li><strong>Notify</strong>: Hey something happened. Finish whatever you are doing and then let me know</li>
<li><strong>Acknowledge</strong>: Least important &#8220;I heard you&#8221; kind of messages</li>
</ol>
<p>If you have any other interesting notification user interface examples, please share them here.</p>
]]></content:encoded>
			<wfw:commentRss>http://arpitonline.com/blog/2010/10/14/on-user-notifications-alert-notify-acknowledge/feed/</wfw:commentRss>
		<slash:comments>1</slash:comments>
		</item>
		<item>
		<title>Mark Zukerberg on Social Applications</title>
		<link>http://arpitonline.com/blog/2010/09/22/mark-zukerberg/</link>
		<comments>http://arpitonline.com/blog/2010/09/22/mark-zukerberg/#comments</comments>
		<pubDate>Thu, 23 Sep 2010 01:32:26 +0000</pubDate>
		<dc:creator>Arpit</dc:creator>
				<category><![CDATA[User Experience]]></category>

		<guid isPermaLink="false">http://www.arpitonline.com/blog/?p=631</guid>
		<description><![CDATA[Techcrunch has a pretty fantastic interview with Mark Zukerberg, CEO and Co-Founder of Facebook. While the whole interview is definitely worth the read, the following part resonated strongly with me: One thing that I think is really important â€” that I think is context for this, is that I generally think that most other companies [...]]]></description>
				<content:encoded><![CDATA[<p>Techcrunch has a pretty <a href="http://techcrunch.com/2010/09/22/zuckerberg-interview-facebook-phone/">fantastic interview with Mark Zukerberg</a>, CEO and Co-Founder of Facebook. While the whole interview is definitely worth the read, the following part resonated strongly with me:</p>
<blockquote><p>One thing that I think is really important â€” that I think is context for this, is that I generally think that most other companies now are undervaluing how important social integration is. Right, so even the companies that are starting to come around to thinking, â€˜oh maybe we should do some social stuffâ€™, I still think a lot of them are only thinking about it on a surface layer, where itâ€™s like â€œOK, I have my product, maybe Iâ€™ll add two or three social features and weâ€™ll check that boxâ€. Thatâ€™s not what social is. Social &#8211; You have to design it in from the ground up.</p></blockquote>
<p>Off late the &#8220;social integration&#8221; tier of a lot of the new services tends to be &#8220;publish this activity to Twitter or Facebook&#8221;, and that gets old really fast. Its why I have updates from services like FourSquare set to be filtered out of my Twitter stream. Thankfully <a href="http://support.tweetdeck.com/entries/132568-setting-a-permanent-global-filter">Tweetdeck makes it really easy</a>.</p>
]]></content:encoded>
			<wfw:commentRss>http://arpitonline.com/blog/2010/09/22/mark-zukerberg/feed/</wfw:commentRss>
		<slash:comments>1</slash:comments>
		</item>
		<item>
		<title>On Breadth First and Depth First thinking</title>
		<link>http://arpitonline.com/blog/2010/04/10/on-breadth-first-and-depth-first-thinking/</link>
		<comments>http://arpitonline.com/blog/2010/04/10/on-breadth-first-and-depth-first-thinking/#comments</comments>
		<pubDate>Sat, 10 Apr 2010 19:26:39 +0000</pubDate>
		<dc:creator>Arpit</dc:creator>
				<category><![CDATA[User Experience]]></category>

		<guid isPermaLink="false">http://www.arpitonline.com/blog/?p=536</guid>
		<description><![CDATA[Great talk by Don Norman, a founder of The Cognitive Science Society, and widely considered to be the first to apply advanced human factors to design via cognitive design on The three ways that good design makes you happy: The three ways he talks about are: Visceral: How pleasant things seem to work better. Behavioral: How good [...]]]></description>
				<content:encoded><![CDATA[<p>Great talk by <a href="http://en.wikipedia.org/wiki/Donald_Norman">Don Norman</a>, a founder of The Cognitive Science Society, and widely considered to be the first to apply advanced human factors to design via cognitive design on The three ways that good design makes you happy<strong>:</strong></p>
<p><object classid="clsid:d27cdb6e-ae6d-11cf-96b8-444553540000" width="640" height="385" codebase="http://download.macromedia.com/pub/shockwave/cabs/flash/swflash.cab#version=6,0,40,0"><param name="allowFullScreen" value="true" /><param name="allowscriptaccess" value="always" /><param name="src" value="http://www.youtube.com/v/RlQEoJaLQRA&amp;hl=en_US&amp;fs=1&amp;" /><param name="allowfullscreen" value="true" /><embed type="application/x-shockwave-flash" width="640" height="385" src="http://www.youtube.com/v/RlQEoJaLQRA&amp;hl=en_US&amp;fs=1&amp;" allowscriptaccess="always" allowfullscreen="true"></embed></object></p>
<p>The three ways he talks about are:</p>
<ul>
<li>Visceral: How pleasant things seem to work better.</li>
<li>Behavioral: How good design lets you feel in control.</li>
<li>Reflective: How people prefer design that reflects their personality.</li>
</ul>
<p>One interesting point he makes is how a happy state of mind is puts the brain inÂ &#8221;breadth first search&#8221; mode and is more conducive for out of the box thinking, but tension and some pressure puts you in a &#8220;depth first search&#8221; mode (as dopamine gets added into the system). Moment of self realization here for me personally: as a programmer I have often preferred tighter deadlines (note: not to be confused with unrealistic) to open ended project timelines. I need the pressure to focus. A bunch of my programmer friends say they feel the same way. Thats why the <a href="http://en.wikipedia.org/wiki/Burn_down_chart">burn down charts</a> for closed work tickets is almost never the ideal one:</p>
<p><img class="alignnone size-full wp-image-538" title="ideal_timeline2" src="http://arpitonline.com/blog/wp-content/uploads/2010/04/ideal_timeline22.jpg" alt="ideal_timeline2" width="698" height="286" /></p>
<p>(note the change of slope as projects approach end dates = more pressure)</p>
<p>There is often the temptation (by me anyway) to carry the model of deadline driven development to design, but Don Norman&#8217;s talk indicates that this would be a bad idea, especially if you are concepting new experiences. Â How much pressure in terms of deadlines and deliverables can anyone apply on design teams before you kill lateral thinking thats absolutely required for creative teams. However its just as easy to fall into the time sink of finding the perfect experience. <a href="http://en.wikiquote.org/wiki/Voltaire">Voltaire&#8217;s quote</a> about Good being the enemy of Great comes to mind again.</p>
<p>So concept in breadth first mode, execute in depth first.</p>
<p>The concept also seems applicable to application/web design around browse and consume. Browse pages/screens, where there isn&#8217;t an end goal really and a user is out looking for &#8220;something interesting&#8221;, should put people&#8217;s brains in breadth first mode, with more emphasis on visuals, etc, but when the user is in content consumption mode, like say on video consumption pages or web search, pages, a muted design may be a better idea. It certainly explains why Google Search pages, which most of us use to get to something we need and not really browse, work so well, but on all their other applications where users are more about entertainment than work, their designs feel awful.</p>
]]></content:encoded>
			<wfw:commentRss>http://arpitonline.com/blog/2010/04/10/on-breadth-first-and-depth-first-thinking/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Is the file system an outdated concept?</title>
		<link>http://arpitonline.com/blog/2010/03/28/is-the-file-system-an-outdated-concept/</link>
		<comments>http://arpitonline.com/blog/2010/03/28/is-the-file-system-an-outdated-concept/#comments</comments>
		<pubDate>Sun, 28 Mar 2010 15:56:04 +0000</pubDate>
		<dc:creator>Arpit</dc:creator>
				<category><![CDATA[User Experience]]></category>

		<guid isPermaLink="false">http://www.arpitonline.com/blog/?p=506</guid>
		<description><![CDATA[A rather interesting post by Rob Foster where he observes that no one seems to know how to use the file system, besides the Documents folder and the Desktop, and so arguably, the elimination of the visual file system in favor of &#8220;apps and their stuff&#8221; in the iPhone/iPad was a good thing (link via [...]]]></description>
				<content:encoded><![CDATA[<p>A rather interesting post by Rob Foster where he observes that <a href="http://nimbledesign.com/post/441423115/the-path-of-most-resistance">no one seems to know how to use the file system</a>, besides the Documents folder and the Desktop, and so arguably, the elimination of the visual file system in favor of &#8220;apps and their stuff&#8221; in the iPhone/iPad was a good thing (link via <a href="http://daringfireball.net/linked/2010/03/11/foster">Daring Fireball</a>). </p>
<p>As a developer, I am not a big fan of the direction Apple is going with the new locked down OS and I completely echo Alex Payne&#8217;s sentiment where <a href="http://al3x.net/2010/01/28/ipad.html">he talks about the iPad and the Tinkerer&#8217;s sunset</a>:</p>
<blockquote><p>
The thing that bothers me most about the iPad is this: if I had an iPad rather than a real computer as a kid, Iâ€™d never be a programmer today. Iâ€™d never have had the ability to run whatever stupid, potentially harmful, hugely educational programs I could download or write. I wouldnâ€™t have been able to fire up ResEdit and edit out the Mac startup sound so I could tinker on the computer at all hours without waking my parents. The iPad may be a boon to traditional eduction, insofar as it allows for multimedia textbooks and such, but in its current form, itâ€™s a detriment to the sort of hacker culture that has propelled the digital economy.</p></blockquote>
<p>However that said, there does seem to be some grain of truth to the idea that I dont really know what half the folders in my file system are. Or, well, I may know theoretically what they are meant for but I dont ever use them myself so do I really need the clutter when I open Finder or Windows Explorer. For example, a while back I went from writing different text files at different locations for different reasons to writing them all in EverNote and tagging them appropriately. I dont care where EverNote is placing my files but I know to find anything I just need to launch it and search either on the text or tag.</p>
<p>I think we need to differentiate the concepts of the file system and the visual file system browser though. An available file system is essential for applications to write sharable data even if as an end user I may never need to see those locations. The problem of the iPad/iPhone OS is that the data produced by an application is not really sharable between applications, except for data produced by (some of) Apple&#8217;s own applications which are available as frameworks. Some developers have managed to <a href="http://blog.innerfence.com/2009/01/05/2-way-app-integration-on-the-iphone-how-it-works/">enable inter application communication using custom URL registrations</a> like Innerfence and their Credit Card Terminal application, but that definitely is a hack. In the linked post, the author mentions:</p>
<blockquote><p>By registering to handle a URL scheme, an iPhone app becomes a de facto web app, subject to many of the nasty attacks that work on the web. Apps implementing this scheme must be careful to validate any parameters they get from the URL lest they be vulnerable to old friends like SQL injection. Another one to be careful of is unsolicited response attacks.</p></blockquote>
<p>So locking down the OS seems to make my data even more vulnerable to being compromised since an application developer could have a bug in this code. The available file system enables inter application in a much better way in the Android OS, where an application can write to a location and then trigger another application passing it a reference to that location. That&#8217;s how <a href="http://mobile.photoshop.com/android/developers.html">Photoshop for Android allows developers to leverage it</a> as an image editor in their own applications. This seems to be the exact translation of the <a href="http://en.wikipedia.org/wiki/Unix_philosophy">Unix Philosophy</a> in the mobile space and the philosophy has been validated in the Unix space over time already.</p>
<p>So my points are: </p>
<ul>
<li>The file system itself is not an outdated concept. Applications should still have a file system to write sharable data to.</li>
<li>The visual file system showing references to rarely used locations or locations only needed by developers can be evolved to one that doesn&#8217;t show those to regular users and only shows items relevant to them (my photos, my videos, etc). </li>
</ul>
<p>Even more, such a mechanism that could be easily evolved to do this is already available in Windows and Mac OS&#8217;s, which involves preceding the file&#8217;s name with a period. Such files are not visible to the end user but a developer can enable the &#8220;show all&#8221; behavior. </p>
<p>[Update] David Shoemaker also talks about <a href="http://shoptalkapp.com/blog/2010/1/18/death-to-filesystems">Death to filesystems</a> and notes that the Google Chrome OS is also going the same way with no filesystem the user can browse (ink via <a href="http://paradox1x.org/archives/2010/01/database-relate.shtml">Karl&#8217;s blog</a>), though in that case, the data is all stored on the cloud and can be made accessible via the web service&#8217;s APIs. Another aspect of that that would be really cool is that chrome browser extensions could even add custom actions to such files: For example, Picnic could create a browser extension that adds menu items to the browser&#8217;s chrome when the user is on Picasa or a new photo service and then when that is clicked on, can pull the data from the Picasa using the web service. </p>
]]></content:encoded>
			<wfw:commentRss>http://arpitonline.com/blog/2010/03/28/is-the-file-system-an-outdated-concept/feed/</wfw:commentRss>
		<slash:comments>4</slash:comments>
		</item>
		<item>
		<title>Web applications vs. &#8220;real&#8221; applications and a thoughts on moving off the webpage browser for apps idea</title>
		<link>http://arpitonline.com/blog/2009/11/23/web-applications-vs-real-applications-and-a-thoughts-on-moving-off-the-webpage-browser-for-apps-idea/</link>
		<comments>http://arpitonline.com/blog/2009/11/23/web-applications-vs-real-applications-and-a-thoughts-on-moving-off-the-webpage-browser-for-apps-idea/#comments</comments>
		<pubDate>Tue, 24 Nov 2009 03:58:15 +0000</pubDate>
		<dc:creator>Arpit</dc:creator>
				<category><![CDATA[User Experience]]></category>

		<guid isPermaLink="false">http://www.arpitonline.com/blog/?p=396</guid>
		<description><![CDATA[There is an interesting discussion brewing over a couple of blogs. Part of it began when PPK wrote a rather strongly worded post titled &#8220;Apple is not evil. iPhone developers are stupid&#8221; where he accused some of the developers jumping into the whole native app for the iphone of not really considering the advantages of [...]]]></description>
				<content:encoded><![CDATA[<p>There is an interesting discussion brewing over a couple of blogs. Part of it began when PPK wrote <a href="http://www.quirksmode.org/blog/archives/2009/11/apple_is_not_ev.html">a rather strongly worded post</a> titled &#8220;Apple is not evil. iPhone developers are stupid&#8221; where he accused some of the developers jumping  into the whole native app for the iphone of not really considering the advantages of HTML5 and the powerful Safari browser on the iPhone for their applications.</p>
<p>Of course the iPhone native app camp had to respond and I am sure there are a few responses now online. The one I found that <a href="http://aralbalkan.com/">Aral Balkan</a> linked to was by Faruk AteÅŸ <a href="http://farukat.es/journal/2009/11/347-iphone-developers-arent-stupid-ppk">made some points</a> around why the App Store in all its craziness is still worth the pain, but they centered around JavaScript performance (which I dont think is as bad esp for the apps that constitute 90% of the app store), HTML layout issues (which I dont agree with really) and making your application available at a place where users are actually looking for applications (some merit here).</p>
<p>Similar discussions also seem to be happening on the Google Chrome OS front (except that in that case there isnt a real option except web apps). For example, after Chrome&#8217;s public demo, in a followup Q and A session, Google&#8217;s Sergey Brin responded to a question saying that <a href="http://www.techcrunch.com/2009/11/19/google-is-keeping-chrome-os-simple-maybe-too-simple/">Chrome OS will not support any native application</a> at all. Apple had encouraged developers to write web apps for the iPhone before the native app SDK was announced, but Sergey seemed to indicate that one reason may have been that Apple&#8217;s own native apps seemed to fragment user experience since the native apps felt different than the web ones.</p>
<p>I have to say I have yet to be convinced of the web-apps as native-apps concept. This week I have been halfway in the process of transitioning from one computer to another at work, and I was surprised at how much of my data is already on the cloud, between Google Docs, EverNote, DropBox, Flickr, etc, I had very little actual data to move across. That part of the dream is awesome. But using that data in apps is a different story. For one thing, there are very few guidelines for how web apps should look and work making the look and feel widely different and something that we learn from scrach on every new application. And network latency is often very painfully apparent, and I am not even talking for the data, its probable as you switch from one state of an app to another, you are looking at a blank screen for quite a few seconds before the UI gets loaded in, and then tries to load the data. </p>
<p>In a recent labweek project at CIM, we wrote a web application optimized for the iPhone for browsing Comcast On Demand content. The application, while functional, did not work nearly as elegantly as a native iPhone app especially on a device with spotty connectivity. I shudder to think what would happen if my Google NetBook was on a saturated network like AT&#038;Ts right now. I imagine it would only take a few instances of &#8220;waiting&#8230;&#8221; messages to do something that traditionally was instantaneous to piss of a fair number of users (including me). Add to that html&#8217;s behavior of rendering incomplete content which then pops into the final look once images and icons get loaded, poor javascript animation (even if they are because of a poorly written piece of JavaScript code) would make the experience a far cry from what I have gotten used to in native applications like that on OSX or (even) Vista.</p>
<p>Perhaps part of the problem remains that we are trying to overload the browser metaphor. The web browser was written to browse documents, and HTML5 continues to move it in that direction. Maybe what is really needed is what I call an Application Frame, a browser that has no concept of a page. There are a number of features that this would need:</p>
<ul>
<li>A concept of state changes that dont involve the entire page to reload, nor rely on crazy JavaScript dom manipulation. Something that looks, for example, similar to <a href="http://help.adobe.com/en_US/Flex/4.0/UsingSDK/WS2db454920e96a9e51e63e3d11c0bf63611-7ff1.html">Flex&#8217;s States metaphor</a>. The application frame should automatically handle transitions by default unless the developer overrides that.</li>
<li>The ability to proactively cache an entire application at the application startup, not just page 1 of a 5 page application</li>
<li>Ability to add launch icons to the desktop/start menu (I think <a href="http://java.sun.com/developer/technicalArticles/Programming/jnlp/">JNLP</a> does this right now)
<li>Ability to override close action of the window that sends it into a windowless background process mode</li>
<li>Notification APIs that allow the application that was set as a background process to be recalled into the window mode</li>
<li>Ability to leverage system icons without having to package them into the app </li>
</ul>
<p>I am sure there are more but these are the ones that come immediately to mind. Note that all this happens without an install process. The end user requests the application from a URI and the server can send back a new HTTP Header (something like Content-Type:Application/FrameContent) and then proceeds to send markup and javascript that defines the app UI. The Application Frame can even keep some browser behavior, like history of recently invoked applications, bookmarks, etc. Also the markup should include html and also higher order markup similar to widgets in, say, <a href="http://en.wikipedia.org/wiki/XUL">XUL</a> or Flex.</p>
<p>Couple these with things that are now becoming part of HTML5 like built in databases and web workers and we could finally realize the dream of a &#8220;real&#8221; application sent to the end user by a webserver at the time of launch. But until that, I still think the web-application may not do it for me. Chrome may prove me wrong, but thats something time will tell.</p>
<p>Update: PPK has a <a href="http://www.quirksmode.org/blog/archives/2009/11/native_iphone_a.html">new post up</a> responding to the avalanche of passionate native app folk. Pretty fair points there.</p>
]]></content:encoded>
			<wfw:commentRss>http://arpitonline.com/blog/2009/11/23/web-applications-vs-real-applications-and-a-thoughts-on-moving-off-the-webpage-browser-for-apps-idea/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
	</channel>
</rss>

<!-- Performance optimized by W3 Total Cache. Learn more: http://www.w3-edge.com/wordpress-plugins/

 Served from: arpitonline.com @ 2013-06-19 05:27:45 by W3 Total Cache -->