<?xml version="1.0" encoding="UTF-8"?>
<?xml-stylesheet type="text/xsl" media="screen" href="/~d/styles/rss2full.xsl"?><?xml-stylesheet type="text/css" media="screen" href="http://feeds.feedburner.com/~d/styles/itemcontent.css"?><rss 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/" xmlns:georss="http://www.georss.org/georss" xmlns:geo="http://www.w3.org/2003/01/geo/wgs84_pos#" xmlns:media="http://search.yahoo.com/mrss/" version="2.0">
<channel>
	<title>Wulf Posts</title>
    
	<link>http://welcome.totheinter.net</link>
	<description>Adam Wulf's thoughts on web UI development, best practices, tutorials, and a home to various projects.</description>
	<lastBuildDate>Tue, 23 Aug 2011 18:00:45 +0000</lastBuildDate>
	<generator>http://wordpress.org/?v=3.1</generator>
	<language>en</language>
        <image>
		<url>http://welcome.totheinter.net/favicon.ico</url>
		<title>Wulf Posts</title>
		<link>http://welcome.totheinter.net</link>
	</image>
    
<generator>http://wordpress.org/?v=3.1</generator>
	<atom10:link xmlns:atom10="http://www.w3.org/2005/Atom" rel="self" type="application/rss+xml" href="http://feeds.feedburner.com/welcometotheinternet/page2" /><feedburner:info xmlns:feedburner="http://rssnamespace.org/feedburner/ext/1.0" uri="welcometotheinternet/page2" /><atom10:link xmlns:atom10="http://www.w3.org/2005/Atom" rel="hub" href="http://pubsubhubbub.appspot.com/" /><item>
		<title>Productivity, Lack of Time, and Your Future Self</title>
		<link>http://welcome.totheinter.net/2011/08/23/productivity-lack-of-time-and-your-future-self/</link>
		<comments>http://welcome.totheinter.net/2011/08/23/productivity-lack-of-time-and-your-future-self/#comments</comments>
		<pubDate>Tue, 23 Aug 2011 18:00:45 +0000</pubDate>
		<dc:creator>Adam Wulf</dc:creator>
				<category><![CDATA[other]]></category>
        
		<guid isPermaLink="false"><![CDATA[http://welcome.totheinter.net//]]></guid>
		<description><![CDATA[Using Futures 2.0 to Manage Intractable Futures (pdf) via Alex Pang


Page 11ish:



I had come to realize that my sense of myself had changed very little over the fifteen years or so.]]></description>
		<content:encoded><![CDATA[<p><a href="https://files.me.com/askpang/wn3hid" onclick="javascript:_gaq.push(['_trackEvent','outbound-article','files.me.com/askpang/wn3hid']);">Using Futures 2.0 to Manage Intractable Futures (pdf)</a> via <a href="http://www.future2.org/" onclick="javascript:_gaq.push(['_trackEvent','outbound-article','www.future2.org/']);">Alex Pang</a></p>
<p>Page 11ish:</p>
<blockquote><p>I had come to realize that my sense of myself had changed very little over the fifteen years or so. Despite getting married, having children, moving several times, and switching careers, I didn&#8217;t feel profoundly like I was profoundly different than my 30 year-old self; so why should I see my 60 year-old self as a different person? (The Grant study&#8217;s participants likewise showed a great consistency over the decades in their personality and psychological makeup.)</p></blockquote>
<p>The paper talks primarily about risk profile and personality, but I think this is true about a number of my traits. While I also see my personality and risk profile relatively unchanged with age, I also constantly focus on how I&#8217;ve changed over those years, why, and for better or worse? &#8220;What part of me do I most want to be gone in 5 years?&#8221; or &#8220;What would I rather see in myself that I don&#8217;t see yet?&#8221; Every year, my goal is to be ashamed at how naive, foolish, and unfocused I was the year before &#8211; my hope is that this strategy will push me to be always more focused, productive, responsible, and good to my family than I am today.</p>
<p align="left"></p>]]></content:encoded>
		<wfw:commentRss>http://welcome.totheinter.net/2011/08/23/productivity-lack-of-time-and-your-future-self/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
            <media:content url="http://www.gravatar.com/avatar/d0cca62fb577d3a6758022dc583d9af9?s=96&amp;d=http%3A%2F%2Fwww.gravatar.com%2Favatar%2Fad516503a11cd5ca435acc9bb6523536%3Fs%3D96&amp;r=G" medium="image">
            <media:title type="html">Adam Wulf</media:title>
        </media:content>
    		</item>
	<item>
		<title>Columnizer jQuery Plugin Update</title>
		<link>http://welcome.totheinter.net/2011/08/22/columnizer-jquery-plugin-update/</link>
		<comments>http://welcome.totheinter.net/2011/08/22/columnizer-jquery-plugin-update/#comments</comments>
		<pubDate>Mon, 22 Aug 2011 18:00:18 +0000</pubDate>
		<dc:creator>Adam Wulf</dc:creator>
				<category><![CDATA[other]]></category>
        
		<guid isPermaLink="false"><![CDATA[http://welcome.totheinter.net//]]></guid>
		<description><![CDATA[Good news jQuery column typesetters! My Columnizer jQuery plugin has finally at long last been updated. This new version adds support for jQuery 1.]]></description>
		<content:encoded><![CDATA[<p>Good news jQuery column typesetters! My <a href="http://welcome.totheinter.net/columnizer-jquery-plugin/" >Columnizer jQuery plugin</a> has finally at long last been updated. This new version adds support for jQuery 1.6 and fixes every known issue in <a href="https://github.com/adamwulf/Columnizer-jQuery-Plugin/issues" onclick="javascript:_gaq.push(['_trackEvent','outbound-article','github.com/adamwulf/Columnizer-jQuery-Plugin/issues']);">reported at the GitHub page</a>. (Secret admission: I didn&#8217;t actually test in IE6,7,8, or 9, but I&#8217;m pretty sure it still works fine&#8230; Please let me know if I made a presumptuous mistake.)</p>
<p>Download here: <a href="https://github.com/adamwulf/Columnizer-jQuery-Plugin/zipball/1.5.0" onclick="javascript:_gaq.push(['_trackEvent','outbound-article','github.com/adamwulf/Columnizer-jQuery-Plugin/zipball/1.5.0']);">https://github.com/adamwulf/Columnizer-jQuery-Plugin/zipball/1.5.0</a></p>
<p>GitHub here: <a href="https://github.com/adamwulf/Columnizer-jQuery-Plugin" onclick="javascript:_gaq.push(['_trackEvent','outbound-article','github.com/adamwulf/Columnizer-jQuery-Plugin']);">https://github.com/adamwulf/Columnizer-jQuery-Plugin</a></p>
<p>Project page here: <a href="http://welcome.totheinter.net/columnizer-jquery-plugin/" >http://welcome.totheinter.net/columnizer-jquery-plugin/</a></p>
<p align="left"></p>]]></content:encoded>
		<wfw:commentRss>http://welcome.totheinter.net/2011/08/22/columnizer-jquery-plugin-update/feed/</wfw:commentRss>
		<slash:comments>8</slash:comments>
            <media:content url="http://www.gravatar.com/avatar/d0cca62fb577d3a6758022dc583d9af9?s=96&amp;d=http%3A%2F%2Fwww.gravatar.com%2Favatar%2Fad516503a11cd5ca435acc9bb6523536%3Fs%3D96&amp;r=G" medium="image">
            <media:title type="html">Adam Wulf</media:title>
        </media:content>
    		</item>
	<item>
		<title>Credit Card security is broken</title>
		<link>http://welcome.totheinter.net/2011/07/30/credit-cards-security-is-broken/</link>
		<comments>http://welcome.totheinter.net/2011/07/30/credit-cards-security-is-broken/#comments</comments>
		<pubDate>Sat, 30 Jul 2011 23:01:51 +0000</pubDate>
		<dc:creator>Adam Wulf</dc:creator>
				<category><![CDATA[other]]></category>
        
		<guid isPermaLink="false"><![CDATA[http://welcome.totheinter.net//]]></guid>
		<description><![CDATA[Quick story:


My sister is traveling to Sri Lanka and has a longer than expected layover in Mumbai.]]></description>
		<content:encoded><![CDATA[<p>Quick story:</p>
<p>My sister is traveling to Sri Lanka and has a longer than expected layover in Mumbai. I log onto the internet, purchase a hotel for her while she&#8217;s on her flight, and a driver picks her up at the airport.</p>
<p>So far so good.</p>
<p>That international purchase triggers an alarm on my account, so the next day when I&#8217;m shopping for groceries my card gets declined.</p>
<p>&nbsp;</p>
<p>Even supposing a mastermind criminal stole my card and bought $400 in Mumbai, here&#8217;s what just happened:</p>
<p>1. master mind steals card</p>
<p>2. master mind buys so much stuff for $400 in Mumbai</p>
<p>3. hapless customer buys a ham sandwich</p>
<p>4. sandwich declined!</p>
<p>&nbsp;</p>
<p>Guys, if you&#8217;re smart enough to know that 99.99% of my transactions are in Portland, Oregon, and suddenly there&#8217;s a transaction in Mumbai. If you do <em>anything</em>, please reject the Mumbai transaction and continue letting me buy my groceries in Portland, Oregon.</p>
<p>Your state-of-the-art-from-the-year-2000-security is not making my money any safer, it&#8217;s just annoying the hell out of me.</p>
<p>I hate you Capital One.</p>
<p align="left"></p>]]></content:encoded>
		<wfw:commentRss>http://welcome.totheinter.net/2011/07/30/credit-cards-security-is-broken/feed/</wfw:commentRss>
		<slash:comments>2</slash:comments>
            <media:content url="http://www.gravatar.com/avatar/d0cca62fb577d3a6758022dc583d9af9?s=96&amp;d=http%3A%2F%2Fwww.gravatar.com%2Favatar%2Fad516503a11cd5ca435acc9bb6523536%3Fs%3D96&amp;r=G" medium="image">
            <media:title type="html">Adam Wulf</media:title>
        </media:content>
    		</item>
	<item>
		<title>The Google+ Feedback Page</title>
		<link>http://welcome.totheinter.net/2011/07/14/the-google-feedback-page/</link>
		<comments>http://welcome.totheinter.net/2011/07/14/the-google-feedback-page/#comments</comments>
		<pubDate>Thu, 14 Jul 2011 18:00:11 +0000</pubDate>
		<dc:creator>Adam Wulf</dc:creator>
				<category><![CDATA[other]]></category>
		<category><![CDATA[user interface]]></category>
        
		<guid isPermaLink="false"><![CDATA[http://welcome.totheinter.net//]]></guid>
		<description><![CDATA[I was going to just post a screenshot to twitter, but this is far too impressive to let die in a stream somewhere.]]></description>
		<content:encoded><![CDATA[<p>I was going to just post a screenshot to twitter, but this is far too impressive to let die in a stream somewhere. i wanted to keep this in my records to draw inspiration from weeks and months from now.</p>
<p>In Google+, like many websites, there is a Send Feedback button. It is unassuming.</p>
<p><a href="http://welcome.totheinter.net/files/2011/07/Screen-shot-2011-07-13-at-10.38.06-PM.png" ><img class="alignnone size-full wp-image-2136" title="Screen shot 2011-07-13 at 10.38.06 PM" src="http://welcome.totheinter.net/files/2011/07/Screen-shot-2011-07-13-at-10.38.06-PM.png" alt="" width="132" height="49" /></a></p>
<p>But when you click it, you don&#8217;t get a boring &#8220;yeah what?!&#8221; text box, instead, in true Google fashion, the Google analyzes the page before the form shows:</p>
<p><a href="http://welcome.totheinter.net/files/2011/07/Screen-shot-2011-07-13-at-10.38.42-PM.png" ><img class="alignnone size-large wp-image-2137" title="Screen shot 2011-07-13 at 10.38.42 PM" src="http://welcome.totheinter.net/files/2011/07/Screen-shot-2011-07-13-at-10.38.42-PM-1024x735.png" alt="" width="512" /></a></p>
<p>And <em>then</em> it asks you to draw on the page to annotate your feedback!<br />
<a href="http://welcome.totheinter.net/files/2011/07/Screen-shot-2011-07-13-at-10.38.45-PM.png" ><img class="alignnone size-medium wp-image-2138" title="Screen shot 2011-07-13 at 10.38.45 PM" src="http://welcome.totheinter.net/files/2011/07/Screen-shot-2011-07-13-at-10.38.45-PM-1024x735.png" alt="" width="512" /></a></p>
<p>You can draw boxes and select elements on the page. It&#8217;s quick, easy, slick, amazing, neat, and useful.<br />
<a href="http://welcome.totheinter.net/files/2011/07/Screen-shot-2011-07-13-at-10.36.32-PM.png" ><img class="alignnone size-medium wp-image-2139" title="Screen shot 2011-07-13 at 10.36.32 PM" src="http://welcome.totheinter.net/files/2011/07/Screen-shot-2011-07-13-at-10.36.32-PM-1024x735.png" alt="" width="512" /></a></p>
<p>Extremely polished stuff. If i were to guess, the quality and usefulness of the feedback they receive is unparalled compared to other sites feedback mechanisms. Extremely cool stuff. I wish they would package it up as a product, maybe paired with Google Analytics, and let any site user embed that feedback system into their own site. Extremely cool.</p>
<p>And the fact that it&#8217;s on Google+ is particularly interesting. Its such an easy to use and useful tool that I wish I could use it to <em>share</em> content with others. Browse to site, &#8220;neat!&#8221;, click share/crop tool, click &#8220;post to Google+&#8221;, done. Reminds me of <a href="http://www.youtube.com/watch?v=LHM8YzfDrTE&amp;feature=player_embedded#at=1080" onclick="javascript:_gaq.push(['_trackEvent','outbound-article','www.youtube.com/watch?v=LHM8YzfDrTE&amp;feature=player_embedded#at=1080']);">Scoble&#8217;s interview of Convofy</a> (forgive Scoble&#8217;s lousy recording, but that few minutes of the video is pretty slick stuff.)</p>
<p>&nbsp;</p>
<p>Update:</p>
<p>Turns out it may very well be its own Google product according to <a href="http://www.quora.com/Google+/Will-the-Google+-feedback-tool-become-a-standalone-service" onclick="javascript:_gaq.push(['_trackEvent','outbound-article','www.quora.com/Google+/Will-the-Google+-feedback-tool-become-a-standalone-service']);">this Quora question</a>. <a href="https://services.google.com/fb/forms/googlefeedbackregisterinterest/" onclick="javascript:_gaq.push(['_trackEvent','outbound-article','services.google.com/fb/forms/googlefeedbackregisterinterest/']);">Tell Google here</a> to be notified if/when it&#8217;s released.</p>
<p align="left"></p>]]></content:encoded>
		<wfw:commentRss>http://welcome.totheinter.net/2011/07/14/the-google-feedback-page/feed/</wfw:commentRss>
		<slash:comments>2</slash:comments>
            <media:content url="http://www.gravatar.com/avatar/d0cca62fb577d3a6758022dc583d9af9?s=96&amp;d=http%3A%2F%2Fwww.gravatar.com%2Favatar%2Fad516503a11cd5ca435acc9bb6523536%3Fs%3D96&amp;r=G" medium="image">
            <media:title type="html">Adam Wulf</media:title>
        </media:content>
    		</item>
	<item>
		<title>Trade Bitcoin on TradeHill.com with this Referral Code: TH-R112943</title>
		<link>http://welcome.totheinter.net/notes/2011/07/07/trade-bitcoin-on-tradehill-com-with-this-referral-code/</link>
		<comments>http://welcome.totheinter.net/notes/2011/07/07/trade-bitcoin-on-tradehill-com-with-this-referral-code/#comments</comments>
		<pubDate>Fri, 08 Jul 2011 04:05:30 +0000</pubDate>
		<dc:creator>Adam Wulf</dc:creator>
				<category><![CDATA[other]]></category>
        
		<guid isPermaLink="false"><![CDATA[http://welcome.totheinter.net/notes/?p=404]]></guid>
		<description><![CDATA[So I just signed up at TradeHill.com to start trading Bitcoins &#8211; should be fun!]]></description>
		<content:encoded><![CDATA[<p>So I just signed up at TradeHill.com to start trading Bitcoins &#8211; should be fun!</p>
<p>If you&#8217;re going to sign up as well, then you can use this referral code to get 10% off your commission rates:</p>
<p>&nbsp;</p>
<h3>Referral Code:</h3>
<p><span style="font-size: 18pt;"><strong>TH-R112943</strong></span></p>
<p>&nbsp;<br />
Happy Trading!</p>
<p align="left"></p>]]></content:encoded>
		<wfw:commentRss>http://welcome.totheinter.net/notes/2011/07/07/trade-bitcoin-on-tradehill-com-with-this-referral-code/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
            <media:content url="http://www.gravatar.com/avatar/d0cca62fb577d3a6758022dc583d9af9?s=96&amp;d=http%3A%2F%2Fwww.gravatar.com%2Favatar%2Fad516503a11cd5ca435acc9bb6523536%3Fs%3D96&amp;r=G" medium="image">
            <media:title type="html">Adam Wulf</media:title>
        </media:content>
    		</item>
	<item>
		<title>Time Crisis 4 for iPad 2 in glasses-free 3D!</title>
		<link>http://welcome.totheinter.net/2011/07/05/time-crisis-4-for-ipad-2-in-glasses-free-3d/</link>
		<comments>http://welcome.totheinter.net/2011/07/05/time-crisis-4-for-ipad-2-in-glasses-free-3d/#comments</comments>
		<pubDate>Tue, 05 Jul 2011 18:00:28 +0000</pubDate>
		<dc:creator>Adam Wulf</dc:creator>
				<category><![CDATA[iphone]]></category>
		<category><![CDATA[programming]]></category>
		<category><![CDATA[user interface]]></category>
        
		<guid isPermaLink="false"><![CDATA[http://welcome.totheinter.net//]]></guid>
		<description><![CDATA[Related Post: Head Tracking on the iPhone
Related Post: Diorama Holographic iPhone Game


Glasses-free 3D Time Crisis on iPad:





This is Time Crisis 4 for iPad.]]></description>
		<content:encoded><![CDATA[<div class="related">Related Post: <a href="http://welcome.totheinter.net/2008/03/24/head-tracking-on-the-iphone/" >Head Tracking on the iPhone</a><br />
Related Post: <a href="http://welcome.totheinter.net/2009/06/18/head-tracking-app-for-iphone-sorta/" >Diorama Holographic iPhone Game</a></div>
<h3>Glasses-free 3D Time Crisis on iPad:</h3>
<p><a href="http://welcome.totheinter.net/files/2011/07/Time-Crisis-for-iPad.png" ><img class="alignright size-full wp-image-2125" title="Time-Crisis-for-iPad" src="http://welcome.totheinter.net/files/2011/07/Time-Crisis-for-iPad.png" alt="" width="523" height="411" /></a></p>
<p>This is <a href="http://www.youtube.com/watch?v=XWimSpYottI" onclick="javascript:_gaq.push(['_trackEvent','outbound-article','www.youtube.com/watch?v=XWimSpYottI']);">Time Crisis 4</a> for iPad. It uses <a href="http://www.macstories.net/news/ipad-2-head-tracking-glasses-free-3d/" onclick="javascript:_gaq.push(['_trackEvent','outbound-article','www.macstories.net/news/ipad-2-head-tracking-glasses-free-3d/']);">Glasses-free 3d</a> for a stunning gameplay experience. This is true anamorphic 3d, which means you don&#8217;t need glasses to get a full 3d effect. <strong>Just tilt the iPad and the iPad2&#8242;s camera tracks your eyes so everything looks like real 3D!</strong> Watch the video <a href="http://news.cnet.com/8301-11386_3-20053495-76.html" onclick="javascript:_gaq.push(['_trackEvent','outbound-article','news.cnet.com/8301-11386_3-20053495-76.html']);">from cnet</a> below for a quick what&#8217;s-what on how it works.</p>
<p><object style="height: 390px; width: 640px;" width="640" height="390"><param name="movie" value="http://www.youtube.com/v/bBQQEcfkHoE?version=3" /><param name="allowFullScreen" value="true" /><param name="allowScriptAccess" value="always" /><embed type="application/x-shockwave-flash" width="640" height="390" src="http://www.youtube.com/v/bBQQEcfkHoE?version=3" allowscriptaccess="always" allowfullscreen="true"></embed></object></p>
<p><a href="http://welcome.totheinter.net/2008/03/24/head-tracking-on-the-iphone/" >I predicted games like this 4 years ago</a> with the release of the first iPhone. The combination of the front facing cameras and accelerometers in the iPad 2 make this an unbelievable gaming experience.</p>
<h3>The Bad News:</h3>
<p><strong>This is still not real!</strong> There have been exactly zero first/third person shooters that use anamorphic 3d for <em>awesomeness</em>. The screenshot above is a [pretty impressive, i may say] photochop by yours truly.</p>
<p>Ladies and gentlemen, this is the year <em>2011</em>. We have robots <em><a href="http://www.youtube.com/watch?v=BSS0MZvoltw" onclick="javascript:_gaq.push(['_trackEvent','outbound-article','www.youtube.com/watch?v=BSS0MZvoltw']);">driving robot cars</a></em> and <em><a href="http://www.dailymotion.com/video/xhwe3e_flying-robots-playing-tennis_fun" onclick="javascript:_gaq.push(['_trackEvent','outbound-article','www.dailymotion.com/video/xhwe3e_flying-robots-playing-tennis_fun']);">playing robot tennis</a></em>. Random people <a href="http://www.youtube.com/watch?v=STvBBP6aNC8" onclick="javascript:_gaq.push(['_trackEvent','outbound-article','www.youtube.com/watch?v=STvBBP6aNC8']);">sending iPhones into outerspace</a> <em>just because they can</em>. How do we still not have awesome anamorphic shooters on the iPad?!</p>
<h3>The Good News:</h3>
<p>For a relatively small development budget you could have a proof-of-concept-version-1.0-anamorphic-3D-on-rails-first-person-shooter-for-iPad-2-and-iPhone-4, and <a href="http://www.tuaw.com/2011/06/07/infinity-blade-creators-say-theyve-cleared-10m/" onclick="javascript:_gaq.push(['_trackEvent','outbound-article','www.tuaw.com/2011/06/07/infinity-blade-creators-say-theyve-cleared-10m/']);">you would make $10 million</a>.</p>
<h3>Free Business Idea:</h3>
<p><strong>Step 1:</strong> Just build something like:</p>
<ol>
<li>Use anamorphic 3d first person shooter. Something akin to a Time Crisis for Area 51.</li>
<li>Easy gameplay: spray and pray style shooting, tap to reload. that&#8217;ll be 98% of it right there.</li>
<li>Just make 10 minutes of gameplay, <a href="http://www.epicgames.com/infinityblade/" onclick="javascript:_gaq.push(['_trackEvent','outbound-article','www.epicgames.com/infinityblade/']);">and then repeat it</a>.</li>
<li>Maybe some aliens? Or zombies?</li>
<li>Or both?!</li>
</ol>
<p><strong>Step 2:</strong> Collect money</p>
<ol>
<li><a href="http://www.tuaw.com/2011/06/07/infinity-blade-creators-say-theyve-cleared-10m/" onclick="javascript:_gaq.push(['_trackEvent','outbound-article','www.tuaw.com/2011/06/07/infinity-blade-creators-say-theyve-cleared-10m/']);">Turns out people have a long history in falling over each other to give away their money to pretty-graphics-and-novelty</a>.</li>
</ol>
<h3>Or, if you just like to program a lot:</h3>
<p>Email me. <a href="https://twitter.com/adamwulf" onclick="javascript:_gaq.push(['_trackEvent','outbound-article','twitter.com/adamwulf']);">Twitter me</a>. <a href="http://www.linkedin.com/in/adamwulf" onclick="javascript:_gaq.push(['_trackEvent','outbound-article','www.linkedin.com/in/adamwulf']);">Linkedin me</a>. Get in touch. We won&#8217;t wait for the world any longer. We&#8217;ll do this thing.</p>
<p align="left"></p>]]></content:encoded>
		<wfw:commentRss>http://welcome.totheinter.net/2011/07/05/time-crisis-4-for-ipad-2-in-glasses-free-3d/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
            <media:content url="http://www.gravatar.com/avatar/d0cca62fb577d3a6758022dc583d9af9?s=96&amp;d=http%3A%2F%2Fwww.gravatar.com%2Favatar%2Fad516503a11cd5ca435acc9bb6523536%3Fs%3D96&amp;r=G" medium="image">
            <media:title type="html">Adam Wulf</media:title>
        </media:content>
    		</item>
	<item>
		<title>Turning the page: a new job at Visere!</title>
		<link>http://welcome.totheinter.net/2011/06/05/turning-the-page-a-new-job-at-visere/</link>
		<comments>http://welcome.totheinter.net/2011/06/05/turning-the-page-a-new-job-at-visere/#comments</comments>
		<pubDate>Mon, 06 Jun 2011 06:24:59 +0000</pubDate>
		<dc:creator>Adam Wulf</dc:creator>
				<category><![CDATA[other]]></category>
        
		<guid isPermaLink="false"><![CDATA[http://welcome.totheinter.net//]]></guid>
		<description><![CDATA[I just finished up my first week at Visere, and I couldn&#8217;t be more excited! This past week has been simply phenomenal.


Leaving Jive is bittersweet.]]></description>
		<content:encoded><![CDATA[<p><a href="http://www.visere.com/" onclick="javascript:_gaq.push(['_trackEvent','outbound-article','www.visere.com/']);"><img class="alignright size-full wp-image-2117" title="Screen shot 2011-05-29 at 4.57.38 PM" src="http://welcome.totheinter.net/files/2011/05/Screen-shot-2011-05-29-at-4.57.38-PM.png" alt="" width="303" height="151" style="float:right;margin-left:10px;" /></a>I just finished up my first week at <a href="http://www.visere.com/" onclick="javascript:_gaq.push(['_trackEvent','outbound-article','www.visere.com/']);">Visere</a>, and I couldn&#8217;t be more excited! This past week has been simply phenomenal.</p>
<p>Leaving <a href="http://www.jivesoftware.com/" onclick="javascript:_gaq.push(['_trackEvent','outbound-article','www.jivesoftware.com/']);">Jive</a> is bittersweet. The people I worked with are amazing, I still believe it&#8217;s the best collection of engineering talent in Portland. The company <a href="http://blogs.forbes.com/tomiogeron/2011/03/30/jive-preps-for-ipo-facebook-google-mcafee-execs-on-board/" onclick="javascript:_gaq.push(['_trackEvent','outbound-article','blogs.forbes.com/tomiogeron/2011/03/30/jive-preps-for-ipo-facebook-google-mcafee-execs-on-board/']);">is going places</a>. I&#8217;m proud of <a href="https://community.jivesoftware.com/community/features/blog/2011/03/16/jive-rte-survey-results-and-preview-of-improvements-in-jive-5" onclick="javascript:_gaq.push(['_trackEvent','outbound-article','community.jivesoftware.com/community/features/blog/2011/03/16/jive-rte-survey-results-and-preview-of-improvements-in-jive-5']);">my work there</a>. I&#8217;ve been doing heavy lifting in JavaScript for nearly 6 years, but I&#8217;ve been <a href="http://herefilefile.com/" onclick="javascript:_gaq.push(['_trackEvent','outbound-article','herefilefile.com/']);">stretching my iOS wings</a>, and Visere gives me the opportunity to work on mobile development full time. It&#8217;s incredibly exciting to be working in a tiny startup <a href="http://techcrunch.com/2008/04/06/jive-software-releases-clearspace-20-acquires-jotlet/" onclick="javascript:_gaq.push(['_trackEvent','outbound-article','techcrunch.com/2008/04/06/jive-software-releases-clearspace-20-acquires-jotlet/']);">again</a>!</p>
<p>And this move solidifies it for me &#8211; I love small companies, and not just small: tiny. At Visere, I&#8217;m employee number 9. It&#8217;s such a breath of fresh air for my day to day responsibility to include: project planning, UI/UX design, marking, recruiting, coordinating, budgeting, sales, and of course, programming. I love the variety, I love the chaos, I love fighting for life, for market share, for mind share. And most of all I love the product I&#8217;m working on.</p>
<p>To date, Visere has been primarily focused on contract design work: you may know it from products like Microsoft&#8217;s Courier tablet, the Uncommong iPhone app, or Motorola Droid branding. We&#8217;re also working on a product very much our own, and I hope to have much more detail on it soon <img src='http://welcome.totheinter.net/wp-includes/images/smilies/icon_smile.gif' alt=':)' class='wp-smiley' /> .</p>
<p align="left"></p>]]></content:encoded>
		<wfw:commentRss>http://welcome.totheinter.net/2011/06/05/turning-the-page-a-new-job-at-visere/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
            <media:content url="http://www.gravatar.com/avatar/d0cca62fb577d3a6758022dc583d9af9?s=96&amp;d=http%3A%2F%2Fwww.gravatar.com%2Favatar%2Fad516503a11cd5ca435acc9bb6523536%3Fs%3D96&amp;r=G" medium="image">
            <media:title type="html">Adam Wulf</media:title>
        </media:content>
    		</item>
	<item>
		<title>On Parasites and Delusions</title>
		<link>http://welcome.totheinter.net/notes/2011/05/25/on-parasites-and-delusions/</link>
		<comments>http://welcome.totheinter.net/notes/2011/05/25/on-parasites-and-delusions/#comments</comments>
		<pubDate>Thu, 26 May 2011 06:19:59 +0000</pubDate>
		<dc:creator>Adam Wulf</dc:creator>
				<category><![CDATA[other]]></category>
        
		<guid isPermaLink="false"><![CDATA[http://welcome.totheinter.net/notes/?p=371]]></guid>
		<description><![CDATA[I echo Paul Kedrosky, a fantastic read:



This might just be the best blog post I have read this year. It’s nominally on patients with delusions of parasitic infestations, but it’s so much more.]]></description>
		<content:encoded><![CDATA[<p>I echo <a href="http://paul.kedrosky.com/archives/2011/05/on-parasites-and-delusions.html" onclick="javascript:_gaq.push(['_trackEvent','outbound-article','paul.kedrosky.com/archives/2011/05/on-parasites-and-delusions.html']);">Paul Kedrosky</a>, a fantastic read:</p>
<blockquote><p><a href="http://www.sciencebasedmedicine.org/?p=12499" onclick="javascript:_gaq.push(['_trackEvent','outbound-article','www.sciencebasedmedicine.org/?p=12499']);">This might just be the best blog post</a> I have read this year. It’s nominally on patients with delusions of parasitic infestations, but it’s so much more.</p>
<blockquote><p>I saw a patient recently for parasites.</p>
<p>I get a sinking feeling when I see that diagnosis on the schedule, as it rarely means a real parasite.  The great Pacific NW is mostly parasite free, so either it is a traveler or someone with delusions of parasitism.</p>
<p>The latter comes in two forms: the classic form and Morgellons. Neither are likely to lead to a meaningful patient-doctor interaction, since it usually means conflict between my assessment of the problem and the patients assessment of the problem.  There is rarely a middle ground upon which to meet. The most memorable case of delusions of parasitism I have seen was a patient who  I saw in clinic who, while we talked, ate a raw garlic clove about every minute.</p>
<p>“Why the garlic?” I asked.</p>
<p>“To keep the parasites at bay,” he told me.</p>
<p>I asked him to describe the parasite.  He told me they floated in the air, fell on his skin, and then burrowed in.  Then he later plucked them out of his nose.</p></blockquote>
<p>Much more <a href="http://www.sciencebasedmedicine.org/?p=12499" onclick="javascript:_gaq.push(['_trackEvent','outbound-article','www.sciencebasedmedicine.org/?p=12499']);">here</a>.</p></blockquote>
<p align="left"></p>]]></content:encoded>
		<wfw:commentRss>http://welcome.totheinter.net/notes/2011/05/25/on-parasites-and-delusions/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
            <media:content url="http://www.gravatar.com/avatar/d0cca62fb577d3a6758022dc583d9af9?s=96&amp;d=http%3A%2F%2Fwww.gravatar.com%2Favatar%2Fad516503a11cd5ca435acc9bb6523536%3Fs%3D96&amp;r=G" medium="image">
            <media:title type="html">Adam Wulf</media:title>
        </media:content>
    		</item>
	<item>
		<title>Security Theater Is Good Product Design</title>
		<link>http://welcome.totheinter.net/2011/05/24/security-theater-is-good-product-design/</link>
		<comments>http://welcome.totheinter.net/2011/05/24/security-theater-is-good-product-design/#comments</comments>
		<pubDate>Tue, 24 May 2011 18:30:13 +0000</pubDate>
		<dc:creator>Adam Wulf</dc:creator>
				<category><![CDATA[other]]></category>
        
		<guid isPermaLink="false"><![CDATA[http://welcome.totheinter.net//]]></guid>
		<description><![CDATA[Jon Udell has a great post today on people&#8217;s expectactions about their security:]]></description>
		<content:encoded><![CDATA[<p>Jon Udell has a great post today on <a href="http://blog.jonudell.net/2011/05/23/a-new-appreciation-of-security-theater/" onclick="javascript:_gaq.push(['_trackEvent','outbound-article','blog.jonudell.net/2011/05/23/a-new-appreciation-of-security-theater/']);">people&#8217;s expectactions about their security</a>:</p>
<blockquote><p>In his <a href="http://www.schneier.com/blog/archives/2011/04/ted_talk.html" onclick="javascript:_gaq.push(['_trackEvent','outbound-article','www.schneier.com/blog/archives/2011/04/ted_talk.html']);">recent TED talk</a> he mentions that the Tylenol incident led to tamper-proof caps — a perfect example of what Schneier likes to call “security theater”:</p>
<blockquote><p>As a homework assignment, think of 10 ways to get around it. I’ll give you one, a syringe.</p></blockquote>
<p>So far this is typical Schneier. It’s a great point, but one I’ve heard him make many times before. In the next sentence, though, he breaks new ground:</p>
<blockquote><p>But it made people feel better. It made their feeling of security more match the reality.</p></blockquote>
<p>Bruce Schneier used to mock the theatrical dimension of security. Now it seems his thinking has evolved — and in a really interesting way. He’s alway viewed security in a relativistic way, and as a game of economic tradeoffs. Here he twists the lens to bring something else into focus: the relationship between how secure we feel and how secure we are.</p></blockquote>
<p>This hit home for me, because is exactly the same way I feel about product development, especially mobile development. We can fight all day about <a href="http://welcome.totheinter.net/2010/08/17/native-mobile-apps-vs-web-mobile-apps-is-not-a-feature-war/" >mobile web vs mobile native</a>, but that&#8217;s only half of the issue. An equally important piece of software development is making sure to <a href="http://welcome.totheinter.net/2010/08/07/user-experience-vs-user-expectations/" >set and exceed user expectations</a>.</p>
<p>When developing software, step 1 should be: &#8220;What are my user&#8217;s expectations? Can I change those expectations before they even launch my app? How should those expectations change how I design the user experience?&#8221;</p>
<p align="left"></p>]]></content:encoded>
		<wfw:commentRss>http://welcome.totheinter.net/2011/05/24/security-theater-is-good-product-design/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
            <media:content url="http://www.gravatar.com/avatar/d0cca62fb577d3a6758022dc583d9af9?s=96&amp;d=http%3A%2F%2Fwww.gravatar.com%2Favatar%2Fad516503a11cd5ca435acc9bb6523536%3Fs%3D96&amp;r=G" medium="image">
            <media:title type="html">Adam Wulf</media:title>
        </media:content>
    		</item>
	<item>
		<title>Book: How to Measure Anything</title>
		<link>http://welcome.totheinter.net/notes/2011/05/24/book-how-to-measure-anything/</link>
		<comments>http://welcome.totheinter.net/notes/2011/05/24/book-how-to-measure-anything/#comments</comments>
		<pubDate>Tue, 24 May 2011 07:01:53 +0000</pubDate>
		<dc:creator>Adam Wulf</dc:creator>
				<category><![CDATA[other]]></category>
        
		<guid isPermaLink="false"><![CDATA[http://welcome.totheinter.net/notes/?p=382]]></guid>
		<description><![CDATA[I&#8217;ve been slowly reading through Douglas Hubbard&#8217;s How to Measure Anything.


So far it&#8217;s been a good read, nothing terribly groundbreaking.]]></description>
		<content:encoded><![CDATA[<p>I&#8217;ve been slowly reading through Douglas Hubbard&#8217;s <a href="http://www.amazon.com/gp/product/0470539399?ie=UTF8&amp;tag=mistsofavaloncom&amp;linkCode=xm2&amp;camp=1789&amp;creativeASIN=0470539399" onclick="javascript:_gaq.push(['_trackEvent','outbound-article','www.amazon.com/gp/product/0470539399?ie=UTF8&amp;tag=mistsofavaloncom&amp;linkCode=xm2&amp;camp=1789&amp;creativeASIN=0470539399']);">How to Measure Anything</a>.</p>
<p>So far it&#8217;s been a good read, nothing terribly groundbreaking. The advice seems to come down to this simple process:</p>
<blockquote><p>Confronted with apparently difficult measurements, it helps to put the proposed measurement in context. Before we measure we should ask five questions:</p>
<ol>
<li>What is the decision this is supposed to support?</li>
<li>What really is the thing being measured?</li>
<li>Why does this thing matter to the decision being asked?</li>
<li>What do you know about it now?</li>
<li>What is the value to measuring it further?</li>
</ol>
</blockquote>
<p>All in all, simple stuff, but a great crash course and overview for finding metrics that matter, especially for new managers / leaders.</p>
<p><img class="size-medium wp-image-385 alignleft" title="Screen shot 2011-05-23 at 11.48.53 PM" src="http://welcome.totheinter.net/notes/files/2011/05/Screen-shot-2011-05-23-at-11.48.53-PM-199x300.png" alt="" width="199" height="300" /></p>
<p align="left"></p>]]></content:encoded>
		<wfw:commentRss>http://welcome.totheinter.net/notes/2011/05/24/book-how-to-measure-anything/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
            <media:content url="http://www.gravatar.com/avatar/d0cca62fb577d3a6758022dc583d9af9?s=96&amp;d=http%3A%2F%2Fwww.gravatar.com%2Favatar%2Fad516503a11cd5ca435acc9bb6523536%3Fs%3D96&amp;r=G" medium="image">
            <media:title type="html">Adam Wulf</media:title>
        </media:content>
    		</item>
	<item>
		<title>Perseverance</title>
		<link>http://welcome.totheinter.net/2011/04/20/perseverance/</link>
		<comments>http://welcome.totheinter.net/2011/04/20/perseverance/#comments</comments>
		<pubDate>Thu, 21 Apr 2011 07:47:45 +0000</pubDate>
		<dc:creator>Adam Wulf</dc:creator>
				<category><![CDATA[other]]></category>
        
		<guid isPermaLink="false"><![CDATA[http://welcome.totheinter.net//]]></guid>
		<description><![CDATA[Pro golfer Kevin Na records a 16 in Round 1 of Valero Texas Open (2011), via paul kedrosky]]></description>
		<content:encoded><![CDATA[<p>Pro golfer Kevin Na records a 16 in Round 1 of Valero Texas Open (2011), <a href="http://paul.kedrosky.com/archives/2011/04/one_of_our_golf.html" onclick="javascript:_gaq.push(['_trackEvent','outbound-article','paul.kedrosky.com/archives/2011/04/one_of_our_golf.html']);">via paul kedrosky</a></p>
<p><iframe title="YouTube video player" width="640" height="390" src="http://www.youtube.com/embed/aWTXoNzuk8c" frameborder="0" allowfullscreen></iframe></p>
<p align="left"></p>]]></content:encoded>
		<wfw:commentRss>http://welcome.totheinter.net/2011/04/20/perseverance/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
            <media:content url="http://www.gravatar.com/avatar/d0cca62fb577d3a6758022dc583d9af9?s=96&amp;d=http%3A%2F%2Fwww.gravatar.com%2Favatar%2Fad516503a11cd5ca435acc9bb6523536%3Fs%3D96&amp;r=G" medium="image">
            <media:title type="html">Adam Wulf</media:title>
        </media:content>
    		</item>
	<item>
		<title>A 2009 Video Forecasting Today’s Tablet</title>
		<link>http://welcome.totheinter.net/notes/2011/03/24/the-e-reader-was-waiting-for/</link>
		<comments>http://welcome.totheinter.net/notes/2011/03/24/the-e-reader-was-waiting-for/#comments</comments>
		<pubDate>Thu, 24 Mar 2011 07:20:38 +0000</pubDate>
		<dc:creator>Adam Wulf</dc:creator>
				<category><![CDATA[iphone]]></category>
		<category><![CDATA[other]]></category>
        
		<guid isPermaLink="false"><![CDATA[http://welcome.totheinter.net/notes/?p=288]]></guid>
		<description><![CDATA[I&#8217;ve had this post sitting in my draft pile since mid-2009. This is pre-iPad and the world is knee deep in Kindle.]]></description>
		<content:encoded><![CDATA[<p>I&#8217;ve had this post sitting in my draft pile since mid-2009. This is pre-iPad and the world is knee deep in Kindle. It&#8217;s a shame I didn&#8217;t find + post this earlier, the mockups from the Harper Studio video are almost prescient of <a href="http://flipboard.com/" onclick="javascript:_gaq.push(['_trackEvent','outbound-article','flipboard.com/']);">Flipboard</a>, <a href="http://www.tweetmagapp.com/" onclick="javascript:_gaq.push(['_trackEvent','outbound-article','www.tweetmagapp.com/']);">TweetMag</a>, or <a href="http://www.zite.com/" onclick="javascript:_gaq.push(['_trackEvent','outbound-article','www.zite.com/']);">Zite</a>.</p>
<p>&#8212; begin old post &#8212;</p>
<p>I use <a href="http://eucalyptusapp.com/" onclick="javascript:_gaq.push(['_trackEvent','outbound-article','eucalyptusapp.com/']);">Eucalyptus</a> to read books on my iPhone. I love the feel of the app and the ease of downloading new books. The iPhone&#8217;s small backlit screen bothers me occassionally for reading. It&#8217;s <em>almost</em> perfect. What I&#8217;d love in an e-Reader:</p>
<ol>
<li>It should do three things exceptionally well:
<ol>
<li>read books (like <a href="http://eucalyptusapp.com/" onclick="javascript:_gaq.push(['_trackEvent','outbound-article','eucalyptusapp.com/']);">Eucalyptus</a>)</li>
<li>read RSS (like <a href="http://www.phantomfish.com/byline.html" onclick="javascript:_gaq.push(['_trackEvent','outbound-article','www.phantomfish.com/byline.html']);">Byline</a>)</li>
<li>surf the web (like a <a href="http://www.crunchgear.com/2009/07/04/crunchpad-prototype-coming-this-month-be-available-asap/" onclick="javascript:_gaq.push(['_trackEvent','outbound-article','www.crunchgear.com/2009/07/04/crunchpad-prototype-coming-this-month-be-available-asap/']);">CrunchPad</a>)</li>
</ol>
</li>
<li>Should still &#8216;feel&#8217; like a book, much like Eucalyptus does. It&#8217;s near perfect in this regard. Touch screen <em>required</em>.</li>
<li>Color screen (backlit is ok but not preferred)</li>
<li>Super easy to download / purchase books</li>
<li>Connect over wireless or cell network</li>
<li>5&#8243; x 8&#8243; screen &#8211; ish, something about the size of those lousy romance novels in the supermarket checkoutline, and the thickness of an iPhone. The concept below literally folds like a book, showing 10&#8243; x 8&#8243; of screen space. awesome!</li>
</ol>
<p>The iPhone hits just about all of this list, except it&#8217;s backlit and too small. Also, Eucalyptus is only <a href="http://www.gutenberg.org/wiki/Main_Page" onclick="javascript:_gaq.push(['_trackEvent','outbound-article','www.gutenberg.org/wiki/Main_Page']);">free books</a>, and the Kindle app (a) sucks to read on and (b) doesn&#8217;t have in app store.</p>
<p>The <a href="http://www.amazon.com/Kindle-Amazons-Wireless-Reading-Generation/dp/B00154JDAI/ref=dp_ob_title_def" onclick="javascript:_gaq.push(['_trackEvent','outbound-article','www.amazon.com/Kindle-Amazons-Wireless-Reading-Generation/dp/B00154JDAI/ref=dp_ob_title_def']);">Kindle</a> proper (device, not <a href="http://itunes.apple.com/WebObjects/MZStore.woa/wa/viewSoftware?id=302584613&amp;mt=8" onclick="javascript:_gaq.push(['_trackEvent','outbound-article','itunes.apple.com/WebObjects/MZStore.woa/wa/viewSoftware?id=302584613&amp;mt=8']);">iPhone app</a>) is larger, which is nice, and has a better screen for reading, but frankly, it&#8217;s ugly as sin. If they made blackberries in the 80s, they would look like a Kindle. yuck.</p>
<p>All this brings me to an article that came across <a href="http://theharperstudio.com/2009/07/the-future-of-le-livre/" onclick="javascript:_gaq.push(['_trackEvent','outbound-article','theharperstudio.com/2009/07/the-future-of-le-livre/']);">Harper Studio</a> (via <a href="http://www.core77.com/blog/technology/the_future_of_le_livre_14077.asp" onclick="javascript:_gaq.push(['_trackEvent','outbound-article','www.core77.com/blog/technology/the_future_of_le_livre_14077.asp']);">Corr77</a>, thanks!)  describing a French concept e-Reader / netbook from <a href="http://www.editis.com/" onclick="javascript:_gaq.push(['_trackEvent','outbound-article','www.editis.com/']);">Editis</a>. Click the image below for the 5 minute concept, skip to about 10% to see the eReader section, and yes, it loads exceptionally slow, but it&#8217;s worth it imo!</p>
<p><object classid="clsid:d27cdb6e-ae6d-11cf-96b8-444553540000" width="400" height="230" codebase="http://download.macromedia.com/pub/shockwave/cabs/flash/swflash.cab#version=6,0,40,0"><param name="data" value="http://vimeo.com/moogaloop.swf?clip_id=5650645&amp;server=vimeo.com&amp;show_title=0&amp;show_byline=0&amp;show_portrait=0&amp;color=00ADEF&amp;fullscreen=1" /><param name="allowfullscreen" value="true" /><param name="allowscriptaccess" value="always" /><param name="src" value="http://vimeo.com/moogaloop.swf?clip_id=5650645&amp;server=vimeo.com&amp;show_title=0&amp;show_byline=0&amp;show_portrait=0&amp;color=00ADEF&amp;fullscreen=1" /><embed type="application/x-shockwave-flash" width="400" height="230" src="http://vimeo.com/moogaloop.swf?clip_id=5650645&amp;server=vimeo.com&amp;show_title=0&amp;show_byline=0&amp;show_portrait=0&amp;color=00ADEF&amp;fullscreen=1" allowscriptaccess="always" allowfullscreen="true" data="http://vimeo.com/moogaloop.swf?clip_id=5650645&amp;server=vimeo.com&amp;show_title=0&amp;show_byline=0&amp;show_portrait=0&amp;color=00ADEF&amp;fullscreen=1"></embed></object></p>
<p>I&#8217;d <em>love</em> a netbook that actually looked and acted like a book. Swipe left/right to turn the page, tap for HUD screen, coverflow for book covers, etc. Turn it on it&#8217;s side, and the bottom becomes a HUD style keyboard and screens turn into netbook goodness. Fold it up to protect the screen and minimize footprint, throw in the bag and go.</p>
<p>I&#8217;d buy three, easy.</p>
<p align="left"></p>]]></content:encoded>
		<wfw:commentRss>http://welcome.totheinter.net/notes/2011/03/24/the-e-reader-was-waiting-for/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
            <media:content url="http://www.gravatar.com/avatar/d0cca62fb577d3a6758022dc583d9af9?s=96&amp;d=http%3A%2F%2Fwww.gravatar.com%2Favatar%2Fad516503a11cd5ca435acc9bb6523536%3Fs%3D96&amp;r=G" medium="image">
            <media:title type="html">Adam Wulf</media:title>
        </media:content>
    		</item>
	<item>
		<title>The Future of Education</title>
		<link>http://welcome.totheinter.net/2011/02/16/the-future-of-education/</link>
		<comments>http://welcome.totheinter.net/2011/02/16/the-future-of-education/#comments</comments>
		<pubDate>Wed, 16 Feb 2011 09:08:11 +0000</pubDate>
		<dc:creator>Adam Wulf</dc:creator>
				<category><![CDATA[other]]></category>
        
		<guid isPermaLink="false"><![CDATA[http://welcome.totheinter.net//]]></guid>
		<description><![CDATA[The Khan Academy is changing education forever. Be sure to also read Sigularity Hub&#8217;s review and  watch the walkthrough video below, but rest assured this will change how your child learns.]]></description>
		<content:encoded><![CDATA[<p><img class="size-full wp-image-349 alignleft" title="KhanAcademy-2ilsjfl" src="http://welcome.totheinter.net/notes/files/2011/02/KhanAcademy-2ilsjfl.png" alt="" width="220" height="184" align="left" /><br />
<a href="http://www.khanacademy.org/" onclick="javascript:_gaq.push(['_trackEvent','outbound-article','www.khanacademy.org/']);">The Khan Academy</a> is changing education forever. Be sure to also read <a href="http://singularityhub.com/2011/02/13/yes-the-khan-academy-is-the-future-of-education-video/" onclick="javascript:_gaq.push(['_trackEvent','outbound-article','singularityhub.com/2011/02/13/yes-the-khan-academy-is-the-future-of-education-video/']);">Sigularity Hub&#8217;s review</a> and  <a href="http://www.youtube.com/watch?v=hw5k98GV7po&amp;feature=player_embedded" onclick="javascript:_gaq.push(['_trackEvent','outbound-article','www.youtube.com/watch?v=hw5k98GV7po&amp;feature=player_embedded']);">watch the walkthrough video</a> below, but rest assured this will change how your child learns. My daughter is only 3 years old and now I can&#8217;t wait to get her started on basic arithmatic!</p>
<p>Highlights of the Khan system: Students learn single concepts at a time: step by step by step. First addition, then harder addition, then addition with decimals, then subtraction, etc. Each singular concept has tutorial videos as well as infinite computer generated problems to solve, and every problem has step-by-step hints available to help walk students through solving a problem.</p>
<p>My favorite part &#8211; by far &#8211; is the game machanics built into the system. A skill tree maps all of the provided concepts together, and the student earns &#8220;Energy Points&#8221; for every problem solved. This is just itching for energy point micropayments to upgrade your character/profile page. Even integrations with &#8220;real&#8221; games where you can spend Khan energy points on game time / upgrades / etc. It&#8217;s like <a href="http://www.eveonline.com/Default.asp" onclick="javascript:_gaq.push(['_trackEvent','outbound-article','www.eveonline.com/Default.asp']);">Eve</a>, but for real life and real skills.</p>
<p><a href="http://welcome.totheinter.net/notes/files/2011/02/Screen-shot-2011-02-16-at-12.55.34-AM.png" ><img class="alignnone size-medium wp-image-350" title="Screen shot 2011-02-16 at 12.55.34 AM" src="http://welcome.totheinter.net/notes/files/2011/02/Screen-shot-2011-02-16-at-12.55.34-AM-295x300.png" alt="" width="295" height="300" /></a></p>
<p>Watch the video below and find out how your child will learn differential equations both faster and better than you ever did.</p>
<p><object classid="clsid:d27cdb6e-ae6d-11cf-96b8-444553540000" width="640" height="390" 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/hw5k98GV7po&amp;rel=0&amp;hl=en_US&amp;feature=player_embedded&amp;version=3" /><param name="allowfullscreen" value="true" /><embed type="application/x-shockwave-flash" width="640" height="390" src="http://www.youtube.com/v/hw5k98GV7po&amp;rel=0&amp;hl=en_US&amp;feature=player_embedded&amp;version=3" allowscriptaccess="always" allowfullscreen="true"></embed></object></p>
<p>Khan Academy <a href="http://www.khanacademy.org/" onclick="javascript:_gaq.push(['_trackEvent','outbound-article','www.khanacademy.org/']);">provides literally hundreds of videos</a> ranging from basic <a href="http://www.khanacademy.org/#Arithmetic" onclick="javascript:_gaq.push(['_trackEvent','outbound-article','www.khanacademy.org/#Arithmetic']);">arithmatic</a> to <a href="http://www.khanacademy.org/#Organic%20Chemistry" onclick="javascript:_gaq.push(['_trackEvent','outbound-article','www.khanacademy.org/#Organic%20Chemistry']);">organic chemistry</a> to the <a href="http://www.khanacademy.org/#Paulson%20Bailout" onclick="javascript:_gaq.push(['_trackEvent','outbound-article','www.khanacademy.org/#Paulson%20Bailout']);">Paulson&#8217;s bank bailout plan</a>. The videos are on <a href="http://www.youtube.com/user/khanacademy" onclick="javascript:_gaq.push(['_trackEvent','outbound-article','www.youtube.com/user/khanacademy']);">YouTube</a>, <a href="http://itunes.apple.com/us/institution/khan-academy/id391034778" onclick="javascript:_gaq.push(['_trackEvent','outbound-article','itunes.apple.com/us/institution/khan-academy/id391034778']);">iTunes U</a>, and iPhone apps. Absolutely tons of content. Absolutely 100% free. Incredible.</p>
<p align="left"></p>]]></content:encoded>
		<wfw:commentRss>http://welcome.totheinter.net/2011/02/16/the-future-of-education/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
            <media:content url="http://www.gravatar.com/avatar/d0cca62fb577d3a6758022dc583d9af9?s=96&amp;d=http%3A%2F%2Fwww.gravatar.com%2Favatar%2Fad516503a11cd5ca435acc9bb6523536%3Fs%3D96&amp;r=G" medium="image">
            <media:title type="html">Adam Wulf</media:title>
        </media:content>
    		</item>
	<item>
		<title>Ah the memories.</title>
		<link>http://welcome.totheinter.net/2011/02/06/ah-the-memories/</link>
		<comments>http://welcome.totheinter.net/2011/02/06/ah-the-memories/#comments</comments>
		<pubDate>Mon, 07 Feb 2011 07:44:08 +0000</pubDate>
		<dc:creator>Adam Wulf</dc:creator>
				<category><![CDATA[other]]></category>
		<category><![CDATA[user interface]]></category>
        
		<guid isPermaLink="false"><![CDATA[http://welcome.totheinter.net/?p=1341]]></guid>
		<description><![CDATA[I just found a screenshot of a very old version of Jotlet &#8211; then called Aurora &#8211; cerca 2001.]]></description>
		<content:encoded><![CDATA[<p>I just found a screenshot of a very old version of Jotlet &#8211; then called Aurora &#8211; cerca 2001. It brings back some good memories- built my senior year of high school through freshman year of college, this was <a href="http://blog.buckwilson.me/" onclick="javascript:_gaq.push(['_trackEvent','outbound-article','blog.buckwilson.me/']);">Buck</a>&#8216;s and my first and largest project together at the time. I&#8217;m uploading here for some grins, and so I can keep all these old images somewhere besides a random directory on my server somewhere&#8230;</p>
<p>Aurora &#8211; precursor to <a href="http://www.jotlet.net" onclick="javascript:_gaq.push(['_trackEvent','outbound-article','www.jotlet.net']);">Jotlet</a></p>
<p><a href="http://welcome.totheinter.net/files/2011/02/temp-image_1_168.png" ><img class="size-large wp-image-2087" title="temp-image_1_168" src="http://welcome.totheinter.net/files/2011/02/temp-image_1_168-1024x796.png" alt="" width="512" height="388" /></a></p>
<p>Everything was themeable, the entire chrome could change w/ a click of the button, and check out that amazing logo in the top right: one of <a href="http://blog.buckwilson.me/" onclick="javascript:_gaq.push(['_trackEvent','outbound-article','blog.buckwilson.me/']);">Buck</a>&#8216;s first ever logo/headers <img src='http://welcome.totheinter.net/wp-includes/images/smilies/icon_smile.gif' alt=':)' class='wp-smiley' />  This version was built pre-Firebug, worked in IE6, everything was built <em>in tables. </em>Liberal use of iframes also going on here.</p>
<p align="left"></p>]]></content:encoded>
		<wfw:commentRss>http://welcome.totheinter.net/2011/02/06/ah-the-memories/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
            <media:content url="http://www.gravatar.com/avatar/d0cca62fb577d3a6758022dc583d9af9?s=96&amp;d=http%3A%2F%2Fwww.gravatar.com%2Favatar%2Fad516503a11cd5ca435acc9bb6523536%3Fs%3D96&amp;r=G" medium="image">
            <media:title type="html">Adam Wulf</media:title>
        </media:content>
    		</item>
	<item>
		<title>The New Yorker: The Truth Wears Off</title>
		<link>http://welcome.totheinter.net/notes/2011/01/28/the-new-yorker-the-truth-wears-off/</link>
		<comments>http://welcome.totheinter.net/notes/2011/01/28/the-new-yorker-the-truth-wears-off/#comments</comments>
		<pubDate>Fri, 28 Jan 2011 17:03:02 +0000</pubDate>
		<dc:creator>Adam Wulf</dc:creator>
				<category><![CDATA[other]]></category>
        
		<guid isPermaLink="false"><![CDATA[http://welcome.totheinter.net/notes/?p=327]]></guid>
		<description><![CDATA[The decline effect and the scientific method: the exact same scientific tests and experiments become less and less consistent over time.]]></description>
		<content:encoded><![CDATA[<p>The decline effect and the scientific method: the exact same scientific tests and experiments become less and less consistent over time.</p>
<blockquote><p>But the data presented at the Brussels meeting made it clear that something strange was happening: the therapeutic power of the drugs appeared to be steadily waning. A recent study showed an effect that was less than half of that documented in the first trials, in the early nineteen-nineties. Many researchers began to argue that the expensive pharmaceuticals weren’t any better than first-generation antipsychotics, which have been in use since the fifties. “In fact, sometimes they now look even worse,” John Davis, a professor of psychiatry at the University of Illinois at Chicago, told me.</p>
<p>Before the effectiveness of a drug can be confirmed, it must be tested and tested again. Different scientists in different labs need to repeat the protocols and publish their results. The test of replicability, as it’s known, is the foundation of modern research. Replicability is how the community enforces itself. It’s a safeguard for the creep of subjectivity. Most of the time, scientists know what results they want, and that can influence the results they get. The premise of replicability is that the scientific community can correct for these flaws.</p>
<p>But now all sorts of well-established, multiply confirmed findings have started to look increasingly uncertain. It’s as if our facts were losing their truth: claims that have been enshrined in textbooks are suddenly unprovable.</p></blockquote>
<p><a href="http://www.newyorker.com/reporting/2010/12/13/101213fa_fact_lehrer?currentPage=all" onclick="javascript:_gaq.push(['_trackEvent','outbound-article','www.newyorker.com/reporting/2010/12/13/101213fa_fact_lehrer?currentPage=all']);">more here</a>.</p>
<p align="left"></p>]]></content:encoded>
		<wfw:commentRss>http://welcome.totheinter.net/notes/2011/01/28/the-new-yorker-the-truth-wears-off/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
            <media:content url="http://www.gravatar.com/avatar/d0cca62fb577d3a6758022dc583d9af9?s=96&amp;d=http%3A%2F%2Fwww.gravatar.com%2Favatar%2Fad516503a11cd5ca435acc9bb6523536%3Fs%3D96&amp;r=G" medium="image">
            <media:title type="html">Adam Wulf</media:title>
        </media:content>
    		</item>
	<item>
		<title>Airing Displeasure</title>
		<link>http://welcome.totheinter.net/notes/2011/01/24/airing-displeasure/</link>
		<comments>http://welcome.totheinter.net/notes/2011/01/24/airing-displeasure/#comments</comments>
		<pubDate>Mon, 24 Jan 2011 17:58:38 +0000</pubDate>
		<dc:creator>Adam Wulf</dc:creator>
				<category><![CDATA[iphone]]></category>
		<category><![CDATA[programming]]></category>
        
		<guid isPermaLink="false"><![CDATA[http://welcome.totheinter.net/notes/?p=335]]></guid>
		<description><![CDATA[Jesper is spot on:



Alex Payne on Adobe AIR:



Humans are gifted with extremely sensitive bullshit detectors.]]></description>
		<content:encoded><![CDATA[<p>Jesper is <a href="http://waffle.wootest.net/2011/01/16/airing-displeasure/" onclick="javascript:_gaq.push(['_trackEvent','outbound-article','waffle.wootest.net/2011/01/16/airing-displeasure/']);">spot on</a>:</p>
<blockquote><p><a href="http://al3x.net/2011/01/15/user-hostile-platforms.html" onclick="javascript:_gaq.push(['_trackEvent','outbound-article','al3x.net/2011/01/15/user-hostile-platforms.html']);">Alex Payne</a> on Adobe AIR:</p>
<blockquote><p>Humans are gifted with extremely sensitive bullshit detectors. The average computer user may not internalize the difference between an AIR app and a native app, but he knows when something doesn’t feel right or work correctly. Your tech-stunted uncle may not ever request a “native app” by name, but he’ll sure complain about his computer acting funny. People aren’t dumb.</p>
<p>You better believe that this isn’t just about AIR. As mobile apps become a mandatory part of doing business, more and more cross-platform mobile frameworks are cropping up. As with every cross-platform framework to date, only one in a pile of the resulting applications might even begin to pass for native. These apps just ain’t right, and people can tell.</p></blockquote>
<p>I’ve said it before and I’ll say it again: cross-platform code is good, but it should never define the user interface.</p></blockquote>
<p><a href="http://waffle.wootest.net/2011/01/16/airing-displeasure/" onclick="javascript:_gaq.push(['_trackEvent','outbound-article','waffle.wootest.net/2011/01/16/airing-displeasure/']);">more here</a>.</p>
<p align="left"></p>]]></content:encoded>
		<wfw:commentRss>http://welcome.totheinter.net/notes/2011/01/24/airing-displeasure/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
            <media:content url="http://www.gravatar.com/avatar/d0cca62fb577d3a6758022dc583d9af9?s=96&amp;d=http%3A%2F%2Fwww.gravatar.com%2Favatar%2Fad516503a11cd5ca435acc9bb6523536%3Fs%3D96&amp;r=G" medium="image">
            <media:title type="html">Adam Wulf</media:title>
        </media:content>
    		</item>
	<item>
		<title>ForkBombr: Cultered Code Still Doesn’t Get It</title>
		<link>http://welcome.totheinter.net/notes/2011/01/24/forkbombr-cultered-code-still-doesn%e2%80%99t-get-it/</link>
		<comments>http://welcome.totheinter.net/notes/2011/01/24/forkbombr-cultered-code-still-doesn%e2%80%99t-get-it/#comments</comments>
		<pubDate>Mon, 24 Jan 2011 07:57:53 +0000</pubDate>
		<dc:creator>Adam Wulf</dc:creator>
				<category><![CDATA[other]]></category>
        
		<guid isPermaLink="false"><![CDATA[http://welcome.totheinter.net/notes/?p=339]]></guid>
		<description><![CDATA[absolutely true. ForkBombr:


From the Cultured Code’s FAQ page on cloud sync:



We will be doing a large scale test with quantifiable data to estimate server and bandwidth costs.]]></description>
		<content:encoded><![CDATA[<p>absolutely true. <a href="http://forkbombr.net/cultered-code-still-doesnt-get-it/" onclick="javascript:_gaq.push(['_trackEvent','outbound-article','forkbombr.net/cultered-code-still-doesnt-get-it/']);">ForkBombr</a>:</p>
<p><a href="http://culturedcode.com/things/wiki/index.php/Frequently_Asked_Questions_(Cloud_Sync)" onclick="javascript:_gaq.push(['_trackEvent','outbound-article','culturedcode.com/things/wiki/index.php/Frequently_Asked_Questions_(Cloud_Sync)']);">From the Cultured Code’s FAQ page on cloud sync</a>:</p>
<blockquote><p>We will be doing a large scale test with quantifiable data to estimate server and bandwidth costs. It is not yet clear whether or not it will be necessary to pass any of those costs to the user base. This should not be taken as indication that there will, or will not, be any cost. A final decision will be made later based on the aforementioned testing.</p></blockquote>
<p>They need to offer a cloud service for free. Its like <a href="http://forkbombr.net/cultured-code-problem/" onclick="javascript:_gaq.push(['_trackEvent','outbound-article','forkbombr.net/cultured-code-problem/']);">they don’t understand</a> how unhappy many of their customers (and former customers) are.</p>
<p>The company also doesn’t understand the concept of ‘if you don’t have anything to say, keep your mouth shut.’</p>
<p>[via <a href="http://twitter.com/viticci/status/28073604667146240" onclick="javascript:_gaq.push(['_trackEvent','outbound-article','twitter.com/viticci/status/28073604667146240']);">Federico Viticci</a>]</p>
<p><img src="http://feeds.feedburner.com/~r/forkbombr/rss2/~4/8uThA5ktlKQ" alt="" width="1" height="1" /></p>
<p align="left"></p>]]></content:encoded>
		<wfw:commentRss>http://welcome.totheinter.net/notes/2011/01/24/forkbombr-cultered-code-still-doesn%e2%80%99t-get-it/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
            <media:content url="http://www.gravatar.com/avatar/d0cca62fb577d3a6758022dc583d9af9?s=96&amp;d=http%3A%2F%2Fwww.gravatar.com%2Favatar%2Fad516503a11cd5ca435acc9bb6523536%3Fs%3D96&amp;r=G" medium="image">
            <media:title type="html">Adam Wulf</media:title>
        </media:content>
    		</item>
	<item>
		<title>Scrolling on Twitter for Mac feels backwards</title>
		<link>http://welcome.totheinter.net/notes/2011/01/21/scrolling-on-twitter-for-mac-feels-backwards/</link>
		<comments>http://welcome.totheinter.net/notes/2011/01/21/scrolling-on-twitter-for-mac-feels-backwards/#comments</comments>
		<pubDate>Fri, 21 Jan 2011 09:43:29 +0000</pubDate>
		<dc:creator>Adam Wulf</dc:creator>
				<category><![CDATA[other]]></category>
        
		<guid isPermaLink="false"><![CDATA[http://welcome.totheinter.net/notes/?p=341]]></guid>
		<description><![CDATA[Open Twitter for iPhone. Tap and drag from top to bottom and the list scrolls up, as you&#8217;d expect- as if you&#8217;re dragging the list of tweets up.


Now open Twitter for Mac.]]></description>
		<content:encoded><![CDATA[<p>Open <a href="http://itunes.apple.com/us/app/twitter/id333903271?mt=8" onclick="javascript:_gaq.push(['_trackEvent','outbound-article','itunes.apple.com/us/app/twitter/id333903271?mt=8']);">Twitter for iPhone</a>. Tap and drag from top to bottom and the list scrolls up, as you&#8217;d expect- as if you&#8217;re dragging the list of tweets up.</p>
<p>Now open <a href="http://blog.twitter.com/2011/01/twitter-for-mac.html" onclick="javascript:_gaq.push(['_trackEvent','outbound-article','blog.twitter.com/2011/01/twitter-for-mac.html']);">Twitter for Mac</a>. Tap and drag from top to bottom on your Magic Mouse or Magic Trackpad and the list scrolls <em>down-</em> as you&#8217;d expect for any normal Mac app. Except that Twitter still feels like an iOS app even though its on my Mac, and <a href="http://techcrunch.com/2010/10/20/os-x-lion/" onclick="javascript:_gaq.push(['_trackEvent','outbound-article','techcrunch.com/2010/10/20/os-x-lion/']);">this won&#8217;t change anytime soon</a>.</p>
<p>I can&#8217;t get over how awkward it feels to have the same scrolling gesture produce the exact opposite results. I suppose it&#8217;ll eventually become second nature, but I suddenly feel all upside-down when I&#8217;m working on my Mac!</p>
<p>Any one used <a href="http://www.marcmoini.com/sx_en.html" onclick="javascript:_gaq.push(['_trackEvent','outbound-article','www.marcmoini.com/sx_en.html']);">Smart Scroll</a> before? How long until OS X changes scroll direction to match iOS?</p>
<p align="left"></p>]]></content:encoded>
		<wfw:commentRss>http://welcome.totheinter.net/notes/2011/01/21/scrolling-on-twitter-for-mac-feels-backwards/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
            <media:content url="http://www.gravatar.com/avatar/d0cca62fb577d3a6758022dc583d9af9?s=96&amp;d=http%3A%2F%2Fwww.gravatar.com%2Favatar%2Fad516503a11cd5ca435acc9bb6523536%3Fs%3D96&amp;r=G" medium="image">
            <media:title type="html">Adam Wulf</media:title>
        </media:content>
    		</item>
	<item>
		<title>Stealing Passwords is Easy in Native Mobile Apps Despite OAuth</title>
		<link>http://welcome.totheinter.net/2011/01/12/stealing-passwords-is-easy-in-native-mobile-apps-despite-oauth/</link>
		<comments>http://welcome.totheinter.net/2011/01/12/stealing-passwords-is-easy-in-native-mobile-apps-despite-oauth/#comments</comments>
		<pubDate>Wed, 12 Jan 2011 14:30:19 +0000</pubDate>
		<dc:creator>Adam Wulf</dc:creator>
				<category><![CDATA[iphone]]></category>
		<category><![CDATA[programming]]></category>
        
		<guid isPermaLink="false"><![CDATA[http://welcome.totheinter.net//]]></guid>
		<description><![CDATA[Preface


OAuth is a fantastic login protocol that allows disparate web applications to all use the same login provider.]]></description>
		<content:encoded><![CDATA[<h3>Preface</h3>
<p><img src="http://welcome.totheinter.net/files/2011/01/oauth-broken.png" alt="" title="oauth broken" width="180" height="78" align='right' class="alignright size-full wp-image-2081" /><a href="http://oauth.net/" onclick="javascript:_gaq.push(['_trackEvent','outbound-article','oauth.net/']);">OAuth</a> is a fantastic login protocol that allows disparate web applications to all use the same login provider. However, I&#8217;ve discovered that its use in native mobile applications is borderline dangerous, and in this post I&#8217;ll describe why.</p>
<p>Last year I released <a href="http://herefilefile.com/" onclick="javascript:_gaq.push(['_trackEvent','outbound-article','herefilefile.com/']);">my first (and still only) iPhone application</a>. Even though my app doesn&#8217;t use OAuth, the then recent <a href="http://arstechnica.com/security/guides/2010/09/twitter-a-case-study-on-how-to-do-oauth-wrong.ars" onclick="javascript:_gaq.push(['_trackEvent','outbound-article','arstechnica.com/security/guides/2010/09/twitter-a-case-study-on-how-to-do-oauth-wrong.ars']);">Twitter/OAuth fiasco</a> stoked my interested in mobile OAuth. I was particularly curious how OAuth providers protected their passwords in their mobile SDKs.</p>
<p>I downloaded the Facebook SDK and poked around in the iPhone simulator, and frankly I didn&#8217;t like what I saw. In less than an afternoon, I was able to build an app that could steal a user&#8217;s password as they logged in through Facebook Connect, all 100% transparent to the user, 100% transparent to Facebook, and 100% transparent to Apple. In a word, this is not a good sign for OAuth and native mobile apps. To be clear, <strong>this affects every single OAuth provider and mobile platform, not just Facebook and iOS.</strong></p>
<p>Despite numerous web searches, emails, and even code submission to Facebook, I haven&#8217;t seen anyone talk about this problem on the web at all. Seeing as how the Facebook Connect SDK is <a href="http://developers.facebook.com/blog/post/213" onclick="javascript:_gaq.push(['_trackEvent','outbound-article','developers.facebook.com/blog/post/213']);">almost 2 years old</a>, and <a href="http://blog.twitter.com/2010/08/twitter-applications-and-oauth.html" onclick="javascript:_gaq.push(['_trackEvent','outbound-article','blog.twitter.com/2010/08/twitter-applications-and-oauth.html']);">many</a> <a href="http://developer.yahoo.com/oauth/" onclick="javascript:_gaq.push(['_trackEvent','outbound-article','developer.yahoo.com/oauth/']);">other</a> <a href="http://wiki.developer.myspace.com/index.php?title=OAuth_Overview" onclick="javascript:_gaq.push(['_trackEvent','outbound-article','wiki.developer.myspace.com/index.php?title=OAuth_Overview']);">companies</a> <a href="http://about.digg.com/blog/twitter-anywhere-openid-oauth-and-diggs-support-open-standards" onclick="javascript:_gaq.push(['_trackEvent','outbound-article','about.digg.com/blog/twitter-anywhere-openid-oauth-and-diggs-support-open-standards']);">are following</a> <a href="http://www.readwriteweb.com/archives/ready_for_gmail_mashups_google_adds_oauth_to_imap.php" onclick="javascript:_gaq.push(['_trackEvent','outbound-article','www.readwriteweb.com/archives/ready_for_gmail_mashups_google_adds_oauth_to_imap.php']);">suit</a> with OAuth in native mobile SDKs, I think this conversation is long overdue.</p>
<p>In this post, I&#8217;m going to explain how and why <strong>OAuth in native mobile apps does not secure your password</strong>, and why you should still be wary when logging into Facebook/Twitter/Google/anything through any app except their respective official native mobile apps. I&#8217;m writing this post to expose the still weak security for single sign on services in native mobile apps. I am not providing any source code, though after reading this post I&#8217;m sure you&#8217;ll agree that eavesdropping on an OAuth transaction in a native mobile app is extremely easy even for a novice programmer.</p>
<h3>The Problem</h3>
<p>The purpose of Oauth is to let application developers use Twitter/Facebook/anysite&#8217;s login mechanism, all while keeping the password 100% secret from the application developer. In this world, if the application turns out to be an untrusted malicious application, all the user needs to do is turn off access from that application on Twitter/Facebook/anysite&#8217;s settings page.</p>
<p>However, <strong>native mobile application developers are still able to access (steal) your password even when using OAuth for login</strong>, all 100% undetected. This means that for native mobile apps, using OAuth is not any more secure than using <a href="http://en.wikipedia.org/wiki/Basic_access_authentication" onclick="javascript:_gaq.push(['_trackEvent','outbound-article','en.wikipedia.org/wiki/Basic_access_authentication']);">Basic Auth</a>, and <a href="http://blog.twitter.com/2010/08/twitter-applications-and-oauth.html" onclick="javascript:_gaq.push(['_trackEvent','outbound-article','blog.twitter.com/2010/08/twitter-applications-and-oauth.html']);">Twitter&#8217;s API change from Basic Auth to OAuth</a> does nothing to protect user&#8217;s passwords from malicious application developers.</p>
<p>To be clear, this affects every OAuth implementation in native mobile apps, across iOS, Android, and [I believe] Windows 7.</p>
<h3>When your password <em>is</em> safe: Web Apps</h3>
<p><a href="http://welcome.totheinter.net/files/2011/01/oauth-web-app.png" ><img src="http://welcome.totheinter.net/files/2011/01/oauth-web-app.png" alt="" title="oauth web app" width="400" height="300" class="alignright size-full wp-image-2082" align='right'/></a>As our first example, let&#8217;s take a look at web apps &#8211; this is true for both mobile web apps and desktop web apps.</p>
<p>OAuth succeeds in protecting the user&#8217;s login information because the web browser is a 100% trusted agent and ensures that the application code on the web app&#8217;s domain name cannot access any information on the OAuth providers domain name. This is called <a href="http://en.wikipedia.org/wiki/Same_origin_policy" onclick="javascript:_gaq.push(['_trackEvent','outbound-article','en.wikipedia.org/wiki/Same_origin_policy']);">Same Origin Policy</a>.</p>
<p>For example, when [insert malicious web app here] begins an OAuth login, the browser opens a window/redirects/iframes to the authentication provider (probably Facebook, Twitter, Google, etc). Due to the browser&#8217;s security, it is impossible for the malicious app to eavesdrop as the user types in their password. After the user enters their username + password into the legitimate login screen, approves (or disapproves) the web app from accessing it&#8217;s account, and is then redirected back to the potentially malicious web app.</p>
<p>At no point in this transaction does the malicious web app have access to the user&#8217;s login credentials. Browser security prevents any scripts on the malicious site from interfering/listening to/intercepting the login credentials. It&#8217;s this trusted and neutral 3rd party browser that makes this negotiation possible. The phone&#8217;s built in browser acts as the trusted middleman during the OAuth transaction.</p>
<p>Once the user discovers the malicious apps evil plot, all the user needs to do is login to the OAuth provider&#8217;s trusted site and remove the malicious app from their trusted apps. done.</p>
<p>You&#8217;re safe, the world is happy, and OAuth saves the day. Not so in native mobile apps, let&#8217;s take a look:</p>
<h3>When your password <em>is not</em> safe: Native Mobile Apps</h3>
<p><a href="http://welcome.totheinter.net/files/2011/01/oauth-native-mobile.png" ><img src="http://welcome.totheinter.net/files/2011/01/oauth-native-mobile.png" alt="" title="oauth native mobile" width="400" height="300" class="alignright size-full wp-image-2083"  align='right'/></a>In native mobile apps, the mobile application itself takes the place of the browser, so there is no longer a trusted neutral 3rd party browser to act as the trusted middle man in OAuth transactions &#8211; the mobile app itself acts as both the OAuth client and the OAuth middle man!</p>
<p>So what does this mean? It means any native mobile app implementing OAuth can steal your login credentials, completely transparent to  you the user, the OAuth provider, and even the phone manufacturer/carrier.</p>
<p>Since the mobile app hosts a tiny instance of the web browser inside of itself, that app can see/do/act on anything inside the web content it shows &#8211; no exceptions. This means the Same Origin Policy we discussed above is now out the window. Even though the native app uses WebKit to do the rendering/browsing, that native app can also do absolutely anything to any webpage loaded inside of it, including stealing passwords, without the loaded website even knowing.</p>
<p>I&#8217;m not going to show any code, but I&#8217;ve verified in code that this is in fact possible. I&#8217;ve effectively stolen my own Facebook password using <a href="https://github.com/facebook/facebook-ios-sdk" onclick="javascript:_gaq.push(['_trackEvent','outbound-article','github.com/facebook/facebook-ios-sdk']);">Facebook&#8217;s provided iOS OAuth library</a>. It only took minor modifications using entirely publicly available APIs in iOS. The exact same attack could be used in any app that logins with Twitter, and is not specific to iOS &#8211; this affects Android (and presumably Windows 7 though I haven&#8217;t looked at their API).</p>
<p><strong>How the attack works:</strong></p>
<ol>
<li>Malicious attacker builds native mobile app and uses any publicly available OAuth SDK from Facebook/Twitter/anyone</li>
<li>The attacker loads the legitimate OAuth login screen using a web view available from the phone&#8217;s public SDK</li>
<li>The attacker runs JavaScript on that webview object, attaching JavaScript event handlers to any &lt;input&gt; element on the page</li>
<li>When the value of an &lt;input&gt; changes, the injected JavaScript notifies the wrapping native application about the change</li>
<li>User authenticates, and OAuth transaction is completed as normal &#8211; except the malicious app has been listening to every keystroke! Password: compromised!</li>
<li><a href="http://macapper.com/2010/08/01/android-hack-clarification-and-update/" onclick="javascript:_gaq.push(['_trackEvent','outbound-article','macapper.com/2010/08/01/android-hack-clarification-and-update/']);">Malicious app uploads credentials to anonymous server in China</a></li>
</ol>
<p>Since the attacker is (a) using publicly available APIs to (b) inject JavaScript on the authentication page (even if the page is over SSL), the malicious app developer is able to listen as the user types in their credentials. The OAuth provider has zero visibility that this attack is going on; there is no way to mitigate it from the provider side. Even a walled garden app store wouldn&#8217;t be able to weed out malicious apps based on (a) static analysis of code or (b) watching for malicious network traffic.</p>
<p><strong>This is all because the embedded browser in native applications cannot be the trusted middleman in the OAuth handshake.</strong></p>
<h3>Mobile Web: 1, Mobile Native: 0</h3>
<p>Currently, the only secure way for OAuth to exist in mobile is for mobile <em>web</em> applications. These applications still run in a trusted 3rd party browser that prevents cross domain script execution. Since mobile native apps fill the role of OAuth client <em>and</em> trusted browser, the user&#8217;s login credentials are not secure.</p>
<p>It should be noted that <a href="http://www.oauth.net/" onclick="javascript:_gaq.push(['_trackEvent','outbound-article','www.oauth.net/']);">OAuth&#8217;s website</a> makes no mention of using OAuth for native mobile apps, but clearly mobile app developers are still using it to solve the elusive secure authentication problem.</p>
<p><strong>Again, this affects 100% of OAuth implementations in native mobile applications, regardless of OAuth provider or mobile platform.</strong></p>
<h3>Solutions?</h3>
<p>For a long time, Twitter provided only basic auth for it&#8217;s API, but its more recent OAuth API isn&#8217;t actually any more secure. I believe that the only way to allow secure OAuth within native mobile apps is to have a more strict web browser API for native app developers, and to properly notify OAuth providers when their service is being accessed from an insecure mobile browser. Unfortunately the safest solution right now: don&#8217;t use OAuth.</p>
<p>I&#8217;m not sure what the correct long term solution is for login in native mobile apps, but OAuth currently falls very short. Mobile still has a long way to go to keep users passwords <a href="<a href="http://www.zdnet.com/blog/security/spyphone-app-harvests-personal-data-from-stock-iphones/5078" >and data</a> safe.</p>
<p align="left"></p>]]></content:encoded>
		<wfw:commentRss>http://welcome.totheinter.net/2011/01/12/stealing-passwords-is-easy-in-native-mobile-apps-despite-oauth/feed/</wfw:commentRss>
		<slash:comments>13</slash:comments>
            <media:content url="http://www.gravatar.com/avatar/d0cca62fb577d3a6758022dc583d9af9?s=96&amp;d=http%3A%2F%2Fwww.gravatar.com%2Favatar%2Fad516503a11cd5ca435acc9bb6523536%3Fs%3D96&amp;r=G" medium="image">
            <media:title type="html">Adam Wulf</media:title>
        </media:content>
    		</item>
	<item>
		<title>Adventures in Exotic Domain Buying</title>
		<link>http://welcome.totheinter.net/2010/12/14/adventures-in-exotic-domain-buying/</link>
		<comments>http://welcome.totheinter.net/2010/12/14/adventures-in-exotic-domain-buying/#comments</comments>
		<pubDate>Tue, 14 Dec 2010 14:00:40 +0000</pubDate>
		<dc:creator>Adam Wulf</dc:creator>
				<category><![CDATA[other]]></category>
        
		<guid isPermaLink="false"><![CDATA[http://welcome.totheinter.net//]]></guid>
		<description><![CDATA[This past friday, I was poking around my bit.ly/pro account and couldn&#8217;t help but notice the giant yellow banner telling me I needed a custom short domain for my bit.ly account.]]></description>
		<content:encoded><![CDATA[<p>This past friday, I was poking around my <a href="http://bit.ly/pro/" onclick="javascript:_gaq.push(['_trackEvent','outbound-article','bit.ly/pro/']);">bit.ly/pro</a> account and couldn&#8217;t help but notice the giant yellow banner telling me I <em>needed</em> a custom short domain for my bit.ly account. The nerd that I am just had to get my very own shortener, especially since the <a href="http://downloadsquad.switched.com/2010/03/17/will-twitters-new-url-shortener-kneecap-competitors/" onclick="javascript:_gaq.push(['_trackEvent','outbound-article','downloadsquad.switched.com/2010/03/17/will-twitters-new-url-shortener-kneecap-competitors/']);">window of opportunity</a> might be waning. But what could I do? &#8220;welcome.totheinter.net&#8221; isn&#8217;t exactly short, and &#8220;wtti.net&#8221; isn&#8217;t terribly graceful (or even available!).</p>
<p>I used <a href="http://www.101domain.com/domain_extension.htm" onclick="javascript:_gaq.push(['_trackEvent','outbound-article','www.101domain.com/domain_extension.htm']);">101domain&#8217;s list of TLDs</a> to spur my creativity. I really wanted to get &#8220;ad.am&#8221; or &#8220;re.ad&#8221;, but the second level domain has to be at least 3 characters, so I kept looking until I finally thought of &#8220;ada.ms&#8221;. Perfect! Especially so for a URL shortener; <a href="http://ada.ms/hff-promo" onclick="javascript:_gaq.push(['_trackEvent','outbound-article','ada.ms/hff-promo']);">http://ada.ms/hff-promo</a> will read as &#8220;Adam&#8217;s HFF Promo&#8221;. There was just <em>one</em> catch &#8211; the domain was unavailable.</p>
<p>Hoping I could bargain with the current owner, I did a quick whois of the domain and found <a href="http://whois.domaintools.com/ada.ms" onclick="javascript:_gaq.push(['_trackEvent','outbound-article','whois.domaintools.com/ada.ms']);">this</a>:</p>
<p><a href="http://welcome.totheinter.net/files/2010/12/Screen-shot-2010-12-13-at-9.38.30-PM.png" ><img class="alignnone size-full wp-image-2076" title="Screen shot 2010-12-13 at 9.38.30 PM" src="http://welcome.totheinter.net/files/2010/12/Screen-shot-2010-12-13-at-9.38.30-PM.png" alt="" width="284" height="180" /></a></p>
<p>The domain was indeed registered, and (apparently through 2020!), but it was listed as <em>suspended</em>. Now I&#8217;ve been a bit lax with some of my domains in the past, and I know that &#8220;suspended&#8221; usually means &#8220;expired but with grace,&#8221; and the only reason registrars don&#8217;t outright throw the domain back into the wild is so that they can create another <a href="http://www.havetrustselling.com/building-trust-sales-tips/sales_closing_attempts.php" onclick="javascript:_gaq.push(['_trackEvent','outbound-article','www.havetrustselling.com/building-trust-sales-tips/sales_closing_attempts.php']);">impending event</a> &#8211; &#8220;quick! renew before someone else&#8230;. (probably no one?) snatches up your precious nearly-almost-but-not-quite-expired domain!!&#8221;</p>
<p>Since I was currently browsing a middle man&#8217;s website at 101domain, I decided to seek out the true source of .ms domains and find out for sure. I&#8217;d no idea who the final authority on .ms domains is, but the <a href="http://www.google.com/search?hl=en&amp;source=hp&amp;biw=1655&amp;bih=846&amp;q=mninet&amp;aq=f&amp;aqi=g-s1g1g-s2g1g-s4g1&amp;aql=&amp;oq=&amp;gs_rfai=" onclick="javascript:_gaq.push(['_trackEvent','outbound-article','www.google.com/search?hl=en&amp;source=hp&amp;biw=1655&amp;bih=846&amp;q=mninet&amp;aq=f&amp;aqi=g-s1g1g-s2g1g-s4g1&amp;aql=&amp;oq=&amp;gs_rfai=']);">&#8220;mninet&#8221;</a> from the whois was all the Googling it took to <a href="https://secure.domains.mninet.ms/" onclick="javascript:_gaq.push(['_trackEvent','outbound-article','secure.domains.mninet.ms/']);">find out</a>. I double checked the suspended status on their website &#8211; just in case &#8211; and found that it was, in fact, unavailable for registration. Strike two.</p>
<p>Down but not out, my last ditch effort was to email the <a href="https://secure.domains.mninet.ms/" onclick="javascript:_gaq.push(['_trackEvent','outbound-article','secure.domains.mninet.ms/']);">Montserrat registrar</a> directly:</p>
<blockquote><p>Hello,</p>
<p>I have found that the domain name ada.ms is currently suspended. Is this domain available to be registered? If not, how long does the domain need to stay suspended before it could be registered? I&#8217;d be very eager to register this name if at all possible, and appreciate any information you could give me.</p>
<p>Thanks,</p>
<p>Adam</p></blockquote>
<p>This was late Friday night. Hopeful, I went to sleep.</p>
<p>After an eventful weekend (we bought our Christmas tree!), I awoke extremely excited to see this in my email:</p>
<blockquote><p>Adam,</p>
<p>That name will be Deleted to allow you to Register it.  Look for it around 10AM EST.</p>
<p>Regards,</p>
<p>.MS Domain Management</p></blockquote>
<p>Fantastic! And the casual &#8220;Look for it around 10AM&#8221; combined with the relatively rareness of .ms domains made me hopeful I wouldn&#8217;t be victim to <a href="http://en.wikipedia.org/wiki/Domain_sniping" onclick="javascript:_gaq.push(['_trackEvent','outbound-article','en.wikipedia.org/wiki/Domain_sniping']);">domain sniping</a> in the final moments. I refreshed my iPhone every 2 minutes for the next 2 hours waiting for the domain to become available. Sure enough &#8211; the <a href="http://ada.ms" onclick="javascript:_gaq.push(['_trackEvent','outbound-article','ada.ms']);">ada.ms</a> became available (it was closer to 11AM EST) as I was sitting in a coffee shop right before work this morning. 30 seconds later, my payment was pending and the domain was mine!</p>
<p>For now, I&#8217;ve kept with my plan and setup ada.ms as my custom bit.ly extension, but I&#8217;m open to other ideas. While the custom bit.ly domain is pretty cool, I&#8217;m a little bummed that the root domain redirects to bit.ly instead of allowing me to redirect it to welcome.totheinter.net &#8211; that small feature is <a href="http://bit.ly/pro/help#root" onclick="javascript:_gaq.push(['_trackEvent','outbound-article','bit.ly/pro/help#root']);">for only $995 / mo for Enterprise customers</a>. Instead, I might try <a href="http://blinktag.com/redirect-root-domain-of-custom-short-urls-using-bit-ly-pro/" onclick="javascript:_gaq.push(['_trackEvent','outbound-article','blinktag.com/redirect-root-domain-of-custom-short-urls-using-bit-ly-pro/']);">using .htaccess</a>, but it feels like a hack. Bit.ly already puts 1 hop between you and your destination. Using that hack would put another hop in between that <img src='http://welcome.totheinter.net/wp-includes/images/smilies/icon_sad.gif' alt=':(' class='wp-smiley' /> . Either way, I&#8217;m more than happy for now, and I&#8217;m actually really excited to start using it to send out links. In fact, I have to force myself <em>not</em> to use it so I don&#8217;t turn into an overzelous link spammer peddling every mildly amusing link I come across <img src='http://welcome.totheinter.net/wp-includes/images/smilies/icon_smile.gif' alt=':)' class='wp-smiley' /> .</p>
<p>Lesson learned: short domains are awesome.</p>
<p>Lesson two: Sometimes all it takes is a polite email for opportunities to open up, even when the door seems closed <img src='http://welcome.totheinter.net/wp-includes/images/smilies/icon_smile.gif' alt=':)' class='wp-smiley' /> </p>
<p>And be sure to click the Tweet This button below the post &#8211; your twitter followers will undoubtedly be in awe of your internet savvy when they see the fancy ada.ms link back to the post! <img src='http://welcome.totheinter.net/wp-includes/images/smilies/icon_smile.gif' alt=':)' class='wp-smiley' /> </p>
<p align="left"></p>]]></content:encoded>
		<wfw:commentRss>http://welcome.totheinter.net/2010/12/14/adventures-in-exotic-domain-buying/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
            <media:content url="http://www.gravatar.com/avatar/d0cca62fb577d3a6758022dc583d9af9?s=96&amp;d=http%3A%2F%2Fwww.gravatar.com%2Favatar%2Fad516503a11cd5ca435acc9bb6523536%3Fs%3D96&amp;r=G" medium="image">
            <media:title type="html">Adam Wulf</media:title>
        </media:content>
    		</item>
</channel>
</rss><!-- 166 queries 2.449 seconds. -->

