<?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/"
	xmlns:series="http://unfoldingneurons.com/"
	>

<channel>
	<title>whit.info</title>
	<atom:link href="http://whit.info/blog/feed/" rel="self" type="application/rss+xml" />
	<link>http://whit.info/blog</link>
	<description>tech without the saavy</description>
	<lastBuildDate>Mon, 05 Dec 2011 20:30:02 +0000</lastBuildDate>
	<language>en</language>
	<sy:updatePeriod>hourly</sy:updatePeriod>
	<sy:updateFrequency>1</sy:updateFrequency>
	<generator>http://wordpress.org/?v=3.2.1</generator>
		<item>
		<title>Simpler Button Handling in Flash AS3</title>
		<link>http://whit.info/blog/2011/06/05/simple-button-code-in-as3/</link>
		<comments>http://whit.info/blog/2011/06/05/simple-button-code-in-as3/#comments</comments>
		<pubDate>Sun, 05 Jun 2011 23:38:10 +0000</pubDate>
		<dc:creator>Whit Nelson</dc:creator>
				<category><![CDATA[Code]]></category>
		<category><![CDATA[as3]]></category>
		<category><![CDATA[flash]]></category>
		<category><![CDATA[how-to]]></category>

		<guid isPermaLink="false">http://whit.info/blog/?p=840</guid>
		<description><![CDATA[Back when I started coding in AS3 for Flash, I would create a separate event handler for each button. After a few revisions on these projects, I quickly realized that this was completely impractical. I found a far easier solution by creating a single onclick handler function for all the buttons, and switch based on [...]]]></description>
			<content:encoded><![CDATA[<p>Back when I started coding in AS3 for Flash, I would create a separate event handler for each button. After a few revisions on these projects, I quickly realized that this was completely impractical. I found a far easier solution by creating a single onclick handler function for all the buttons, and switch based on the name of the button. Now, I share it with you.</p>

<div class="wp_syntax"><div class="code"><pre class="actionscript3" style="font-family:monospace;">btn_1.<span style="color: #004993;">addEventListener</span><span style="color: #000000;">&#40;</span><span style="color: #004993;">MouseEvent</span>.<span style="color: #004993;">CLICK</span>, linkHandler<span style="color: #000000;">&#41;</span>;
btn_2.<span style="color: #004993;">addEventListener</span><span style="color: #000000;">&#40;</span><span style="color: #004993;">MouseEvent</span>.<span style="color: #004993;">CLICK</span>, linkHandler<span style="color: #000000;">&#41;</span>;
&nbsp;
<span style="color: #339966; font-weight: bold;">function</span> linkHandler<span style="color: #000000;">&#40;</span>me<span style="color: #000000; font-weight: bold;">:</span><span style="color: #004993;">MouseEvent</span><span style="color: #000000;">&#41;</span><span style="color: #000000; font-weight: bold;">:</span><span style="color: #0033ff; font-weight: bold;">void</span> <span style="color: #000000;">&#123;</span>
	<span style="color: #0033ff; font-weight: bold;">switch</span><span style="color: #000000;">&#40;</span>me.<span style="color: #004993;">target</span>.<span style="color: #004993;">name</span><span style="color: #000000;">&#41;</span> <span style="color: #000000;">&#123;</span>
		<span style="color: #0033ff; font-weight: bold;">case</span> <span style="color: #990000;">'btn_1'</span><span style="color: #000000; font-weight: bold;">:</span>
			<span style="color: #009900;">// The code for button 1</span>
			<span style="color: #0033ff; font-weight: bold;">break</span>;
		<span style="color: #0033ff; font-weight: bold;">case</span> <span style="color: #990000;">'btn_2'</span><span style="color: #000000; font-weight: bold;">:</span>
			<span style="color: #009900;">// The code for button 2</span>
			<span style="color: #0033ff; font-weight: bold;">break</span>;
	<span style="color: #000000;">&#125;</span>
<span style="color: #000000;">&#125;</span></pre></div></div>

]]></content:encoded>
			<wfw:commentRss>http://whit.info/blog/2011/06/05/simple-button-code-in-as3/feed/</wfw:commentRss>
		<slash:comments>2</slash:comments>
		</item>
		<item>
		<title>The Social Media Haunted Mental Institution</title>
		<link>http://whit.info/blog/2011/06/05/the-social-media-haunted-mental-institution/</link>
		<comments>http://whit.info/blog/2011/06/05/the-social-media-haunted-mental-institution/#comments</comments>
		<pubDate>Sun, 05 Jun 2011 15:17:04 +0000</pubDate>
		<dc:creator>Whit Nelson</dc:creator>
				<category><![CDATA[Web]]></category>
		<category><![CDATA[facebook]]></category>
		<category><![CDATA[social media]]></category>
		<category><![CDATA[twitter]]></category>

		<guid isPermaLink="false">http://whit.info/blog/?p=713</guid>
		<description><![CDATA[&#8220;A lot of people thought this dream must be madness, but we are not crazy.&#8221; - Gloria Trevi While implementing the Add This widget for a client, I stumbled upon a curious list. Since Add This allows companies to add their services to their widget, the list of available services has grown to a level [...]]]></description>
			<content:encoded><![CDATA[<p><span style='left: 20px;display:block; background: #ddd; padding: 10px; border: 1px solid #ccc;font-size:16px; line-height:24px;'>&#8220;A lot of people thought this dream must be madness, but we are not crazy.&#8221;<br />
- Gloria Trevi<br />
</span><br />
<a href="http://whit.info/blog/wp-content/uploads/2011/06/mental.jpg"><img class="alignleft size-medium wp-image-798" title="mental" src="http://whit.info/blog/wp-content/uploads/2011/06/mental-176x300.jpg" alt="" width="176" height="300" /></a></p>
<p>While implementing the <b>Add This</b> widget for a client, I stumbled upon a curious list. Since <b>Add This</b> allows companies to add their services to their widget, the list of available services has grown to a level of absurdity. <br/><br/>While some of the services are standards like Facebook and Twitter, Digg, or Reddit, most of the rest comprise what I call the <i>Social Media Haunted Mental Institution</i>. With names like BleetBox, CiteULike and Grumper, this may be one of the most comprehensive list of shattered website dreams, representing millions of lost investment dollars.</p>
<p>In the quest to create the next Facebook, they built a hall of madness.<br/><br/>So much effort, so many dreams, crushed in the stamped to create the next great social network. For example, are just the ones that start with &#8220;fav&#8221;: FAVable, Faves, favlog, Favoriten.de, Favoritus.<br/><br/>I know, it is far easier to criticize than to create, but honestly, Blurpalicious?</p>
<p>Checkout the full list after the jump.<br />
<span id="more-713"></span><br />
<a href="http://whit.info/blog/wp-content/uploads/2011/06/haunded_mansion.jpg"><img src="http://whit.info/blog/wp-content/uploads/2011/06/haunded_mansion.jpg" alt="" title="haunded_mansion" width="600" height="2235" class="alignleft size-full wp-image-802" /></a><br />
<br/><br/><br />
<span style="font-size: 2px;color:#fff; width: 600px; float:left;">The full list: 100zakladok, 2 Tag, 2linkme, 7Live7.com, A1-Webmarks, A97abi, Add.io, Adfty, Adifni, aero, All My Faves, Amazon, Amen Me!, Aol Lifestream, AOL Mail, Armenix, Arto, Aviary Capture, Baang, Baidu, Bebo, Bentio, BiggerPockets, Bit.ly, bizSugar, Bleetbox, Blinklist, Blip, Blogger, Bloggy, Blogmarks, Blogtrottr, Blurpalicious, Boardlite, Bobrdobr, BonzoBox, BookmarkedByUs, BookmarkingNet, Bookmarky.cz, Bookmerken, Bordom, Box.net, Brainify, Bryderi, BuddyMarks, Buzzzy, Camyoo, Care2, Chiq, Cirip, CiteULike, ClassicalPlace, Clickazoo, Cndig, Colivia.de, Communicate, Connotea, cOOtopia, COSMiQ, Curate.Us, Delicious, DesignBump, Designmoo, Dig This Webhost, DigaCultura, Digg, Diggita, diglog, Digo, Digzign, Diigo, Dipdive, doMelhor, Dosti, DotNetKicks, DotNetShoutout, DotShare, Douban, Draugiem.lv, Drimio, Dropjack, Dwellicious, dzone, edelight, EFactor, eKudos, elefanta.pl, Email, Embarkons, euCliquei, Evernote, extraplay, EzySpot, Fabulously40, Facebook, Fai Informazione, Fark, Farkinda, Fashiolista, Fashion BURNER, FAVable, Faves, favlog, Favoriten.de, Favoritus, Flaker, Floss.pro, Folkd, FollowTags, forceindya, Formspring, FreeDictionary, Fresqui, FriendFeed, Friendster, funP, fwisp, Gabbr, Gacetilla, Gamekicker, GiveALink, GlobalGrind, Gmail, Good Noows, Google, Google Buzz, Google Reader, Google Translate, Gravee, GreaterDebater, Grono.net, Grumper, Haber.gen.tr, Hacker News, Hadash Hot, Hatena, Hazarkor, Healthimize, Hedgehogs.net, HelloTxt, hipstr, Historious, Hitmarks, Hot Bookmark, Hotklix, Hotmail, HTML Validator, Hyves, ideaREF!, Identica, iGoogle, ihavegot, Index4, Indexor, Instapaper, InvestorLinks, iOrbix, iSociety, iWiW, Jamespot, Jisko, JoliPrint, Jumptags, KaBlog, Kaboodle, Kaevur, Kipup, KiRTSY, Kledy, Kommenting, La tafanera, Laaikit, Ladenzeile, Librerio, Link Ninja, Link-a-Gogo, LinkedIn, Links Gutter, LinkShares, Linkuj.cz, Livefavoris, LiveJournal, LockerBlogger, Logger24.com, Lynki, Mail.ru, Markme, Mashbord, Mawindo, Meccho, meinVZ, Mekusharim, Memori.ru, Menéame, Messenger, Mindbodygreen, Mister Wong, Mixx, Moemesto.ru, mototagz, mRcNEtwORK, Multiply, myAOL, mylinkvault, Myspace, N4G, Nasza-klasa, NetLog, Netvibes, Netvouz, NewsMeBack, NewsTrust, Newsvine, Nujij, OKNOtizie, oneview, OnGoBee, orkut, Osmosus, Oyyla, Packg, pafnet.de, PDF Online, PDFmyURL, PhoneFavs, PimpThisBlog, Ping.fm, Planypus, Plaxo, Plurk, Pochval.cz, PopEdition, Posteezy, Posterous, Prati.ba, PrintFriendly, Pusha, QRF.in, Quantcast, Qzone, Read It Later, Reddit, Rediff MyPage, RedKum, RideFix, Scoop.at, Segnalo, Sekoman, Select2Gether, Shaveh, SheToldMe, ShirIntarIn, Simpy, Sina Weibo, Slashdot, SMI, SodaHead, Sonico, Speedtile, Sphinn, SpinSnap, Spoken To You, sportpost, Spread.ly, springpad, Spruzer, Squidoo, Startaid, Startlap, Story Follower, studiVZ, Stuffpit, StumbleUpon, Stumpedia, Stylehive, Surfpeople, Svejo, Symbaloo, Taaza, TagMarks.de, Tagvn, Tagza, tarpipe, TellMyPolitician, The Web Blend, Thinkfinity, ThisNext, Throwpile, Tip&#8217;d, TopSiteler, Transferr, Tuenti, Tulinq, Tumblr, Tusul, Tvinx, TweetMeme, Twitter, TwitThis, Typepad, Upnews.it, Urlaubswerk, Viadeo, Virb, Visitez Mon Site, Vkontakte, vybrali SME, Vyoom, Webnews, Whois Lookup, Windy Citizen, WireFan, WordPress, Worio, Wykop, Xanga, XING, Y! Bookmarks, Y! Mail, Yammer, Yardbarker, Yemle, Yigg, Yoolink, Yorumcuyum, Youblr., Youbookmarks, YouMob, Yuuby, Zakladok.net, Zanatic, ZicZac, Zootool</span></p>
]]></content:encoded>
			<wfw:commentRss>http://whit.info/blog/2011/06/05/the-social-media-haunted-mental-institution/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Load Your Model With Data in CodeIgniter</title>
		<link>http://whit.info/blog/2011/02/21/load-up-your-model-in-codeigniter/</link>
		<comments>http://whit.info/blog/2011/02/21/load-up-your-model-in-codeigniter/#comments</comments>
		<pubDate>Mon, 21 Feb 2011 03:04:41 +0000</pubDate>
		<dc:creator>Whit Nelson</dc:creator>
				<category><![CDATA[Code]]></category>
		<category><![CDATA[codeigniter]]></category>
		<category><![CDATA[php]]></category>

		<guid isPermaLink="false">http://whit.info/blog/?p=780</guid>
		<description><![CDATA[Much like fashion models, it seems that managing CodeIgniter models can be a little tricky. I always ended up with a massive pile of set_value() calls for each of the elements I wanted to load in. In order to &#8216;bosh this, I wrote this function to do it automagically. It will grab all the variables [...]]]></description>
			<content:encoded><![CDATA[<p>Much like fashion models, it seems that managing CodeIgniter models can be a little tricky. I always ended up with a massive pile of set_value() calls for each of the elements I wanted to load in. In order to &#8216;bosh this, I wrote this function to do it automagically.</p>
<p>It will grab all the variables you&#8217;ve declared for the model, then try to load them up with submitted data. Nifty.</p>

<div class="wp_syntax"><div class="code"><pre class="php" style="font-family:monospace;"><span style="color: #000000; font-weight: bold;">function</span> load_model<span style="color: #009900;">&#40;</span><span style="color: #009900;">&#41;</span> <span style="color: #009900;">&#123;</span>
     <span style="color: #000088;">$vars</span> <span style="color: #339933;">=</span> <span style="color: #990000;">get_class_vars</span><span style="color: #009900;">&#40;</span><span style="color: #990000;">get_class</span><span style="color: #009900;">&#40;</span><span style="color: #000088;">$this</span><span style="color: #009900;">&#41;</span><span style="color: #009900;">&#41;</span><span style="color: #339933;">;</span>
     <span style="color: #990000;">unset</span><span style="color: #009900;">&#40;</span><span style="color: #000088;">$vars</span><span style="color: #009900;">&#91;</span><span style="color: #0000ff;">'_parent_name'</span><span style="color: #009900;">&#93;</span><span style="color: #009900;">&#41;</span><span style="color: #339933;">;</span>
     <span style="color: #b1b100;">foreach</span><span style="color: #009900;">&#40;</span><span style="color: #000088;">$vars</span> <span style="color: #b1b100;">as</span> <span style="color: #000088;">$key</span> <span style="color: #339933;">=&gt;</span> <span style="color: #000088;">$value</span><span style="color: #009900;">&#41;</span> <span style="color: #009900;">&#123;</span>
          <span style="color: #000088;">$this</span><span style="color: #339933;">-&gt;</span><span style="color: #000088;">$key</span> <span style="color: #339933;">=</span> <span style="color: #000088;">$this</span><span style="color: #339933;">-&gt;</span><span style="color: #004000;">input</span><span style="color: #339933;">-&gt;</span><span style="color: #004000;">post</span><span style="color: #009900;">&#40;</span><span style="color: #000088;">$key</span><span style="color: #009900;">&#41;</span><span style="color: #339933;">;</span>
     <span style="color: #009900;">&#125;</span>
<span style="color: #009900;">&#125;</span></pre></div></div>

]]></content:encoded>
			<wfw:commentRss>http://whit.info/blog/2011/02/21/load-up-your-model-in-codeigniter/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Left On My Answering Machine</title>
		<link>http://whit.info/blog/2010/08/02/left-on-my-answering-machine/</link>
		<comments>http://whit.info/blog/2010/08/02/left-on-my-answering-machine/#comments</comments>
		<pubDate>Mon, 02 Aug 2010 18:56:42 +0000</pubDate>
		<dc:creator>Whit Nelson</dc:creator>
				<category><![CDATA[Uncategorized]]></category>

		<guid isPermaLink="false">http://whit.info/blog/?p=752</guid>
		<description><![CDATA[My good buddy Will Garrison (pictured left) recorded this on my answering machine. Also check his band Spirits of the Red City if you like delicious earfood. On a completely unrelated note, if you can&#8217;t get your WordPress Audio Player plugin to work, don&#8217;t just search Google for &#8220;Why does my WordPress Audio Player Plugin [...]]]></description>
			<content:encoded><![CDATA[<p><img src="http://whit.info/blog/wp-content/uploads/2010/08/Portrait-of-a-Bearded-Man.jpeg" alt="" title="Portrait of a Bearded Man" width="300" height="450" class="alignleft size-full wp-image-763" /></p>
<p>My good buddy Will Garrison (pictured left) recorded this on my answering machine. Also check his band <a href="http://spiritsoftheredcity.com">Spirits of the Red City</a> if you like delicious earfood.</p>
<p>On a completely unrelated note, if you can&#8217;t get your WordPress Audio Player plugin to work, don&#8217;t just search Google for &#8220;Why does my WordPress Audio Player Plugin show up blank?&#8221;, (Although that search should now lead you here &#8230; ) just check the <a href="http://wpaudioplayer.com/support/troubleshooting">Troubleshooting</a> page! Apparently your header.php needs to call <code>&lt;?php wp_head(); ?&gt;</code>, and your footer.php needs to call <code>&lt;?php wp_footer(); ?&gt;</code>.</p>
<p>Whew, toofer!</p>
]]></content:encoded>
			<wfw:commentRss>http://whit.info/blog/2010/08/02/left-on-my-answering-machine/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
<enclosure url="http://whit.info/blog/wp-content/uploads/2010/08/This-Aint-No-Party-Time.mp3" length="680777" type="audio/mpeg" />
		</item>
		<item>
		<title>Why You Shouldn&#8217;t Use The Yelp API</title>
		<link>http://whit.info/blog/2010/07/15/why-you-shouldnt-use-the-yelp-api/</link>
		<comments>http://whit.info/blog/2010/07/15/why-you-shouldnt-use-the-yelp-api/#comments</comments>
		<pubDate>Thu, 15 Jul 2010 19:18:18 +0000</pubDate>
		<dc:creator>Whit Nelson</dc:creator>
				<category><![CDATA[Misc.]]></category>
		<category><![CDATA[api]]></category>
		<category><![CDATA[yelp]]></category>

		<guid isPermaLink="false">http://whit.info/blog/?p=731</guid>
		<description><![CDATA[In an effort to create a local micro-search for a client, I used the Yelp API to get listings, and the Google Maps API to display them. Using the demo code, the results were almost miraculous. Yelp does a great job of returning relevant results, and blending them with Google Maps was a breeze. Yet [...]]]></description>
			<content:encoded><![CDATA[<p><img src="http://whit.info/blog/wp-content/uploads/2010/07/logo-yelp.gif" alt="" title="logo-yelp" width="150" height="100" class="alignright size-full wp-image-733" />In an effort to create a local micro-search for a client, I used the <a href="http://www.yelp.com/developers/documentation">Yelp API</a> to get listings, and the <a href="http://code.google.com/apis/maps/index.html">Google Maps API</a> to display them. Using the <a href="http://www.yelp.com/developers/examples">demo code</a>, the results were almost miraculous. Yelp does a great job of returning relevant results, and blending them with Google Maps was a breeze. Yet something felt off about the whole operation.</p>
<p>Searches on the Yelp homepage were different than via the API. It took a bit of sleuthing, but I finally discovered the reason:</p>
<p><strong>Yelp API doesn&#8217;t return unreviewed listings.</strong></p>
<p>You heard that right. A search on the homepage will wield vastly different results than a search via the API because listings without any reviews don&#8217;t show up. This has something of a deleterious effect on searches which are less than urban.</p>
<p>For instance, when I search for &#8220;Hospitals&#8221; in a small town on the homepage, I get a big pile of them. When I search via the API, I get BBQ joints. That&#8217;s right. Since the hospitals have no reviews, and the BBQ reviewers used phrases like &#8220;<em>The ribs may land you in the hospital, but they sure are delicious&#8221;</em>, these show up in a search for hospitals.</p>
<p>It is perhaps darkly comic to consider the man having a heart attack and using Yelp to find a hospital, only to be presented with a list of BBQ restaurants. However, if you&#8217;re dumb enough to use Yelp to find a hospital, well, there you go.</p>
<p>So now I don&#8217;t use the Yelp API, and Google wins again.</p>
]]></content:encoded>
			<wfw:commentRss>http://whit.info/blog/2010/07/15/why-you-shouldnt-use-the-yelp-api/feed/</wfw:commentRss>
		<slash:comments>4</slash:comments>
		</item>
		<item>
		<title>10 Seconds With Matt Lang: Episode 7</title>
		<link>http://whit.info/blog/2010/06/24/10-seconds-with-matt-lang-episode-7/</link>
		<comments>http://whit.info/blog/2010/06/24/10-seconds-with-matt-lang-episode-7/#comments</comments>
		<pubDate>Thu, 24 Jun 2010 14:35:10 +0000</pubDate>
		<dc:creator>Whit Nelson</dc:creator>
				<category><![CDATA[Uncategorized]]></category>

		<guid isPermaLink="false">http://whit.info/blog/2010/06/24/10-seconds-with-matt-lang-episode-7/</guid>
		<description><![CDATA[]]></description>
			<content:encoded><![CDATA[<p><object width="650" height="366"><param name="allowfullscreen" value="true" /><param name="allowscriptaccess" value="always" /><param name="movie" value="http://vimeo.com/moogaloop.swf?clip_id=10875549&amp;server=vimeo.com&amp;show_title=0&amp;show_byline=0&amp;show_portrait=0&amp;color=00ADEF&amp;fullscreen=1" /><embed src="http://vimeo.com/moogaloop.swf?clip_id=10875549&amp;server=vimeo.com&amp;show_title=0&amp;show_byline=0&amp;show_portrait=0&amp;color=00ADEF&amp;fullscreen=1" type="application/x-shockwave-flash" allowfullscreen="true" allowscriptaccess="always" width="650" height="366"></embed></object></p>
]]></content:encoded>
			<wfw:commentRss>http://whit.info/blog/2010/06/24/10-seconds-with-matt-lang-episode-7/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>10 Seconds With Matt Lang: Episode 6</title>
		<link>http://whit.info/blog/2010/06/14/10-seconds-with-matt-lang-episode-6/</link>
		<comments>http://whit.info/blog/2010/06/14/10-seconds-with-matt-lang-episode-6/#comments</comments>
		<pubDate>Mon, 14 Jun 2010 23:20:50 +0000</pubDate>
		<dc:creator>Whit Nelson</dc:creator>
				<category><![CDATA[Uncategorized]]></category>

		<guid isPermaLink="false">http://whit.info/blog/2010/06/14/10-seconds-with-matt-lang-episode-6/</guid>
		<description><![CDATA[]]></description>
			<content:encoded><![CDATA[<p><object width="650" height="366"><param name="allowfullscreen" value="true" /><param name="allowscriptaccess" value="always" /><param name="movie" value="http://vimeo.com/moogaloop.swf?clip_id=10912028&amp;server=vimeo.com&amp;show_title=0&amp;show_byline=0&amp;show_portrait=0&amp;color=00ADEF&amp;fullscreen=1" /><embed src="http://vimeo.com/moogaloop.swf?clip_id=10912028&amp;server=vimeo.com&amp;show_title=0&amp;show_byline=0&amp;show_portrait=0&amp;color=00ADEF&amp;fullscreen=1" type="application/x-shockwave-flash" allowfullscreen="true" allowscriptaccess="always" width="650" height="366"></embed></object></p>
]]></content:encoded>
			<wfw:commentRss>http://whit.info/blog/2010/06/14/10-seconds-with-matt-lang-episode-6/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>How Progressive Enhancement Can Kill IE6</title>
		<link>http://whit.info/blog/2010/06/09/how-progressive-enhancement-can-kill-ie6/</link>
		<comments>http://whit.info/blog/2010/06/09/how-progressive-enhancement-can-kill-ie6/#comments</comments>
		<pubDate>Wed, 09 Jun 2010 00:55:41 +0000</pubDate>
		<dc:creator>Whit Nelson</dc:creator>
				<category><![CDATA[Uncategorized]]></category>

		<guid isPermaLink="false">http://whit.info/blog/?p=711</guid>
		<description><![CDATA[Call it positive reinforcement. Call it Pavlovian conditioning. I call it a path to a world free of ancient browsers and hands full of freshly pulled-out hair. But I&#8217;m getting ahead of myself. Ever since the days of the blink and marquee tags, browser have ventured to set themselves apart from the pack. By implementing [...]]]></description>
			<content:encoded><![CDATA[<p><a href="http://ie6funeral.com/"><img src="http://whit.info/blog/wp-content/uploads/2010/06/iedeath.png" alt="" title="iedeath" width="256" height="338" class="alignleft size-full wp-image-725" /></a>Call it positive reinforcement. Call it Pavlovian conditioning. I call it a path to a world free of ancient browsers and hands full of freshly pulled-out hair. But I&#8217;m getting ahead of myself.</p>
<p>Ever since the days of the blink and marquee tags, browser have ventured to set themselves apart from the pack. By implementing features ahead of the standards, they offer a progressive enhancement for the developers and users of that browser. Utilizing these new features, unsurprisingly, became known as <a href="http://en.wikipedia.org/wiki/Progressive_enhancement">progressive enhancement</a>, and it has often lead the standards writers by the nose in the adoption of these fancy techniques. (See <a href="http://www.apple.com/html5/">HTML5</a>, <a href="http://www.css3.info/preview/">CSS3</a>)</p>
<p>Browser markets have diversified. Choice is abundant, but often the choice that developer <em>wants</em> the user to make, isn&#8217;t the one they <strong>do</strong> make. If my subtext is unclear, allow me to transcribe it into text: A great majority of developers want users to choose a standards compliant browser over Internet Explorer, or at the very least, IE the Younger over IE the Elder, for IE discontentment is inversely proportional to version number. </p>
<p>Users however, are a stubborn bunch. Despite the seemingly apparent improvements in speed, security, feature availability and handsomeness, individuals and corporations alike choose to stay with a browser that drives developers mad, instead of fast gorgeous browsers like <a href="http://www.google.com/chrome">Chrome</a> and <a href="http://www.apple.com/safari/">Safari</a>. (Sorry Firefox, but you&#8217;ve been a dog of late.) There seem to be a few choices, all bad, in this regard. </p>
<p>Bad solution: We could ignore the browsers we don&#8217;t like.<br />
Why this is a bad solution: We know in our heart of hearts that we cannot turn our back on these netizens. Is it their fault that their companies force them to use IE6 at work? What about Grandma? She uses IE6 because that&#8217;s what came on her computer, and asking her to &#8220;updating her software&#8221; is like asking her to do her own dental work. I mean come on, she&#8217;s on the freakin&#8217; Internet after all.</p>
<p>Bad solution: We could grin and bear it.<br />
Why this is a bad solution: These antediluvian browsers, by their very use, are holding back the progress of all of web-kind. Developers are not using cool modern techniques because the ecosystem doesn&#8217;t fully support them. Also, for the cost of <em>nothing</em> grandma can improve her web experience by an order of magnitude. She must be brought to know this. </p>
<p>So how does a developer balance human progress without leaving humans behind? Progressive enhancement. That is, give dapper things to those who will accept them, and don&#8217;t bother with the rest. </p>
<p>In order to embrace this philosophy you need to first accept a concept which virtually no employer will support: <strong>Websites do not have to look the same in every browser.</strong> This was a difficult thing to embrace, both for myself and my clients. It does however make sense in the grand scheme of web design, and here is why.</p>
<p>The website must work. In all browsers. Grandma gets the same content, just not the same experience. If we incrementally add spiff for browsers that use it, then we improve the user experience for those browsers. Improved experience means that users will prefer it in that browser, even if it&#8217;s incremental, and even if they dont&#8217; know why. </p>
<p>Eventually, if we use these new features, they will do what they were intended to do originally by the browser-smiths: Lure users away from other browsers. Basically all we need is the grapes to tell Grandma &#8220;No&#8221;.</p>
]]></content:encoded>
			<wfw:commentRss>http://whit.info/blog/2010/06/09/how-progressive-enhancement-can-kill-ie6/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>10 Seconds With Matt Lang: Episode 5</title>
		<link>http://whit.info/blog/2010/06/04/10-seconds-with-matt-lang-episode-5/</link>
		<comments>http://whit.info/blog/2010/06/04/10-seconds-with-matt-lang-episode-5/#comments</comments>
		<pubDate>Fri, 04 Jun 2010 18:06:29 +0000</pubDate>
		<dc:creator>Whit Nelson</dc:creator>
				<category><![CDATA[Uncategorized]]></category>

		<guid isPermaLink="false">http://whit.info/blog/?p=709</guid>
		<description><![CDATA[]]></description>
			<content:encoded><![CDATA[<p><object width="650" height="366"><param name="allowfullscreen" value="true" /><param name="allowscriptaccess" value="always" /><param name="movie" value="http://vimeo.com/moogaloop.swf?clip_id=10881054&amp;server=vimeo.com&amp;show_title=0&amp;show_byline=0&amp;show_portrait=0&amp;color=00ADEF&amp;fullscreen=1" /><embed src="http://vimeo.com/moogaloop.swf?clip_id=10881054&amp;server=vimeo.com&amp;show_title=0&amp;show_byline=0&amp;show_portrait=0&amp;color=00ADEF&amp;fullscreen=1" type="application/x-shockwave-flash" allowfullscreen="true" allowscriptaccess="always" width="650" height="366"></embed></object></p>
]]></content:encoded>
			<wfw:commentRss>http://whit.info/blog/2010/06/04/10-seconds-with-matt-lang-episode-5/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>linkub.us 1.0: it&#8217;s alive!</title>
		<link>http://whit.info/blog/2010/06/02/linkub-us-1-0-its-alive/</link>
		<comments>http://whit.info/blog/2010/06/02/linkub-us-1-0-its-alive/#comments</comments>
		<pubDate>Wed, 02 Jun 2010 01:37:41 +0000</pubDate>
		<dc:creator>Whit Nelson</dc:creator>
				<category><![CDATA[Uncategorized]]></category>

		<guid isPermaLink="false">http://whit.info/blog/?p=705</guid>
		<description><![CDATA[I would like to announce version 1.0 of a new web application I&#8217;ve built called linkubus. It is designed to replace your homepage, and manage all the links you need on a regular basis. My plan is to add bits and features, but I encourage you to have at the beta! http://linkub.us]]></description>
			<content:encoded><![CDATA[<p><a href="http://whit.info/blog/wp-content/uploads/2010/06/linkubus.png"><img src="http://whit.info/blog/wp-content/uploads/2010/06/linkubus.png" alt="" title="linkubus" width="309" height="292" class="alignleft size-full wp-image-706" /></a>I would like to announce version 1.0 of a new web application I&#8217;ve built called <a href="http://linkub.us">linkubus</a>. It is designed to replace your homepage, and manage all the links you need on a regular basis. My plan is to add bits and features, but I encourage you to have at the beta!</p>
<p><a href="http://linkub.us">http://linkub.us</a></p>
]]></content:encoded>
			<wfw:commentRss>http://whit.info/blog/2010/06/02/linkub-us-1-0-its-alive/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
	</channel>
</rss>

