<?xml version="1.0" encoding="UTF-8"?>
<rss version="2.0"
	xmlns:content="http://purl.org/rss/1.0/modules/content/"
	xmlns:wfw="http://wellformedweb.org/CommentAPI/"
	xmlns:dc="http://purl.org/dc/elements/1.1/"
	xmlns:atom="http://www.w3.org/2005/Atom"
	xmlns:sy="http://purl.org/rss/1.0/modules/syndication/"
	xmlns:slash="http://purl.org/rss/1.0/modules/slash/"
	>

<channel>
	<title>KevBurnsJr - Blog</title>
	<atom:link href="http://blog.kevburnsjr.com/feed" rel="self" type="application/rss+xml" />
	<link>http://blog.kevburnsjr.com</link>
	<description>Web Application Engineer</description>
	<lastBuildDate>Sat, 03 Jul 2010 22:20:10 +0000</lastBuildDate>
	<generator>http://wordpress.org/?v=2.8</generator>
	<language>en</language>
	<sy:updatePeriod>hourly</sy:updatePeriod>
	<sy:updateFrequency>1</sy:updateFrequency>
			<item>
		<title>Zombies and Dubstep</title>
		<link>http://blog.kevburnsjr.com/zombies-and-dubstep</link>
		<comments>http://blog.kevburnsjr.com/zombies-and-dubstep#comments</comments>
		<pubDate>Sat, 03 Jul 2010 22:20:10 +0000</pubDate>
		<dc:creator>KevBurnsJr</dc:creator>
				<category><![CDATA[Uncategorized]]></category>

		<guid isPermaLink="false">http://blog.kevburnsjr.com/?p=1253</guid>
		<description><![CDATA[
]]></description>
			<content:encoded><![CDATA[<p class="wrap"><object width="720" height="568"><param name="movie" value="http://www.youtube.com/v/_IiXBP1ZAM4&amp;hl=en_US&amp;fs=1"></param><param name="allowFullScreen" value="true"></param><param name="allowscriptaccess" value="always"></param><embed src="http://www.youtube.com/v/_IiXBP1ZAM4&amp;hl=en_US&amp;fs=1" type="application/x-shockwave-flash" allowscriptaccess="always" allowfullscreen="true" width="720" height="568"></embed></object></p>
]]></content:encoded>
			<wfw:commentRss>http://blog.kevburnsjr.com/zombies-and-dubstep/feed</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Tripling up</title>
		<link>http://blog.kevburnsjr.com/tripling-up</link>
		<comments>http://blog.kevburnsjr.com/tripling-up#comments</comments>
		<pubDate>Thu, 01 Jul 2010 19:02:07 +0000</pubDate>
		<dc:creator>KevBurnsJr</dc:creator>
				<category><![CDATA[Uncategorized]]></category>

		<guid isPermaLink="false">http://blog.kevburnsjr.com/?p=1247</guid>
		<description><![CDATA[
I have another 22&#8243; Acer and an HDMI slot for it, but I&#8217;m all out of desk space.
]]></description>
			<content:encoded><![CDATA[<p class="wrap"><img src="http://d.kevburnsjr.com/trip-monitors.jpg" alt="trip-monitors" /></p>
<p class="wrap">I have another 22&#8243; Acer and an HDMI slot for it,<br/> but I&#8217;m all out of desk space.</p>
]]></content:encoded>
			<wfw:commentRss>http://blog.kevburnsjr.com/tripling-up/feed</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Do iframe pages show up in browser history?</title>
		<link>http://blog.kevburnsjr.com/do-iframe-pages-show-up-in-browser-history</link>
		<comments>http://blog.kevburnsjr.com/do-iframe-pages-show-up-in-browser-history#comments</comments>
		<pubDate>Fri, 25 Jun 2010 23:43:40 +0000</pubDate>
		<dc:creator>KevBurnsJr</dc:creator>
				<category><![CDATA[Uncategorized]]></category>

		<guid isPermaLink="false">http://blog.kevburnsjr.com/do-iframe-pages-show-up-in-browser-history</guid>
		<description><![CDATA[The answer is yes and no.
This Google R&#038;D guy gives a good rundown.
http://codinginparadise.org/weblog/2005/08/ajax-tutorial-tale-of-two-iframes-or.html
Long story short&#8230; The first IFrame src url will not be included in the browser history for static IFrames.  However, all subsequent page urls within the IFrame will.
Unless&#8230; You do something tricky like insert the IFrame using JS or manipulate the src [...]]]></description>
			<content:encoded><![CDATA[<p>The answer is yes and no.</p>
<p>This Google R&#038;D guy gives a good rundown.<br />
<a href="http://codinginparadise.org/weblog/2005/08/ajax-tutorial-tale-of-two-iframes-or.html">http://codinginparadise.org/weblog/2005/08/ajax-tutorial-tale-of-two-iframes-or.html</a></p>
<p><span style="color:white">Long story short&#8230; </span >The first IFrame src url will not be included in the browser history for static IFrames.  However, all subsequent page urls within the IFrame will.</p>
<p><span style="color:white">Unless&#8230; </span >You do something tricky like insert the IFrame using JS or manipulate the src attribute in which case the behavior differs by browser and version.</p>
]]></content:encoded>
			<wfw:commentRss>http://blog.kevburnsjr.com/do-iframe-pages-show-up-in-browser-history/feed</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>What&#8217;s in a name</title>
		<link>http://blog.kevburnsjr.com/whats-in-a-name</link>
		<comments>http://blog.kevburnsjr.com/whats-in-a-name#comments</comments>
		<pubDate>Fri, 18 Jun 2010 01:19:07 +0000</pubDate>
		<dc:creator>KevBurnsJr</dc:creator>
				<category><![CDATA[Uncategorized]]></category>

		<guid isPermaLink="false">http://blog.kevburnsjr.com/?p=1226</guid>
		<description><![CDATA[I&#8217;ve been using this as my source of device names for several years.
http://www.playdota.com/items
I have or used to have:


TRAVS &#8211; An Asus Eee 1002HA netbook named after Boots of Travel


MJOLLNIR &#8211; A new Core i7 desktop named after Thor&#8217;s hammer, Mjollnir


DEFIANCE &#8211; A used 1U dual 3.06Ghz HP Proliant DL360 G3 webserver with 2Gb RAM running [...]]]></description>
			<content:encoded><![CDATA[<p>I&#8217;ve been using this as my source of device names for several years.<br />
<a href="http://www.playdota.com/items">http://www.playdota.com/items</a></p>
<p>I have or used to have:</p>
<ul>
<li style="clear:left; padding-top: 10px;"><img src="http://www.playdota.com/img/items/92/icon.jpg" style="float:left;" />
<div style="margin-left:64px;padding:10px;"><strong style="color:white;">TRAVS</strong> &#8211; An <a href="http://usa.asus.com/product.aspx?P_ID=AoJKUxt3S3yQLqnS">Asus Eee 1002HA netbook</a> named after Boots of Travel</div>
</li>
<li style="clear:left; padding-top: 10px;"><img src="http://www.playdota.com/img/items/86/icon.jpg" style="float:left;"/>
<div style="margin-left:64px;padding:10px;"><strong style="color:white;">MJOLLNIR</strong> &#8211; A <a href="http://blog.kevburnsjr.com/we-have-the-technology">new Core i7 desktop</a> named after Thor&#8217;s hammer, Mjollnir</div>
</li>
<li style="clear:left; padding-top: 10px;"><img src="http://www.playdota.com/img/items/116/icon.jpg" style="float:left;" />
<div style="margin-left:64px;padding:10px;"><strong style="color:white;">DEFIANCE</strong> &#8211; A used 1U dual 3.06Ghz <a href="http://cgi.ebay.com/ws/eBayISAPI.dll?ViewItem&#038;item=310219719292&#038;ssPageName=STRK:MEWNX:IT">HP Proliant DL360 G3</a> webserver with 2Gb RAM running Centos 5.5 in a rack at HE in Fremont named after Hood of Defiance</div>
</li>
<li style="clear:left; padding-top: 10px;"><img src="http://www.playdota.com/img/items/32/icon.jpg" style="float:left;" />
<div style="margin-left:64px;padding:10px;"><strong style="color:white;">MANTLE</strong> &#8211; A new Ubuntu VMWare guest instance running on Mjollnir with shared folders named after Mantle of Intelligence</div>
</li>
<li style="clear:left; padding-top: 10px;"><img src="http://www.playdota.com/img/items/34/icon.jpg" style="float:left;" />
<div style="margin-left:64px;padding:10px;"><strong style="color:white;">IRONWOOD</strong> &#8211; A deceased Ubuntu VirtualBox VM instance named after Ironwood Branch</div>
</li>
<li style="clear:left; padding-top: 10px;"><img src="http://www.playdota.com/img/items/79/icon.jpg" style="float:left;" /><img src="http://www.playdota.com/img/items/80/icon.jpg" style="float:left;" />
<div style="margin-left:64px;padding:10px;"><strong style="color:white;">SANGE</strong> &#8211; A deceased desktop named after Sange (Sange and Yasha)</div>
</li>
<li style="clear:left; padding-top: 10px;"><img src="http://www.playdota.com/img/items/78/icon.jpg" style="float:left;" /><img src="http://www.playdota.com/img/items/80/icon.jpg" style="float:left;" />
<div style="margin-left:64px;padding:10px;"><strong style="color:white;">YASHA</strong> &#8211; A deceased desktop named after Yasha (Sange and Yasha)</div>
</li>
<li style="clear:left; padding-top: 10px;"><img src="http://www.playdota.com/img/items/69/icon.jpg" style="float:left;"/>
<div style="margin-left:64px;padding:10px;"><strong style="color:white;">RADIANCE</strong> &#8211; A previous company-owned laptop named after Radiance</div>
</li>
</ul>
<div style="clear:both;"></div>
]]></content:encoded>
			<wfw:commentRss>http://blog.kevburnsjr.com/whats-in-a-name/feed</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Linus Torvalds thinks you are ugly.</title>
		<link>http://blog.kevburnsjr.com/linus-torvalds-thinks-you-are-ugly</link>
		<comments>http://blog.kevburnsjr.com/linus-torvalds-thinks-you-are-ugly#comments</comments>
		<pubDate>Tue, 15 Jun 2010 18:05:28 +0000</pubDate>
		<dc:creator>KevBurnsJr</dc:creator>
				<category><![CDATA[Uncategorized]]></category>

		<guid isPermaLink="false">http://blog.kevburnsjr.com/?p=1222</guid>
		<description><![CDATA[&#8230; ugly AND STUPID (unless you use git).

]]></description>
			<content:encoded><![CDATA[<p>&#8230; ugly <strong>AND STUPID</strong> (unless you use git).</p>
<p class="wrap"><object width="480" height="385"><param name="movie" value="http://www.youtube.com/v/4XpnKHJAok8&#038;hl=en_US&#038;fs=1&#038;"></param><param name="allowFullScreen" value="true"></param><param name="allowscriptaccess" value="always"></param><embed src="http://www.youtube.com/v/4XpnKHJAok8&#038;hl=en_US&#038;fs=1&#038;" type="application/x-shockwave-flash" allowscriptaccess="always" allowfullscreen="true" width="480" height="385"></embed></object></p>
]]></content:encoded>
			<wfw:commentRss>http://blog.kevburnsjr.com/linus-torvalds-thinks-you-are-ugly/feed</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Best way to store an ip in mysql</title>
		<link>http://blog.kevburnsjr.com/best-way-to-store-an-ip-in-mysql</link>
		<comments>http://blog.kevburnsjr.com/best-way-to-store-an-ip-in-mysql#comments</comments>
		<pubDate>Wed, 09 Jun 2010 01:24:36 +0000</pubDate>
		<dc:creator>KevBurnsJr</dc:creator>
				<category><![CDATA[Uncategorized]]></category>

		<guid isPermaLink="false">http://blog.kevburnsjr.com/?p=1203</guid>
		<description><![CDATA[I used to use varchar(15).
But a little poking around yielded a better solution.
Turns out there&#8217;s a standard set of MySQL functions for translating an IP address to and from an integer.

ALTER TABLE `sessions` ADD `client_ip` INT NOT NULL AFTER `created_at`;
&#160;
mysql&#62; SELECT INET_ATON&#40;'192.168.10.50'&#41; AS ipn;
+------------+
&#124; ipn        &#124;
+------------+
&#124; 3232238130 &#124;
+------------+
&#160;
mysql&#62; [...]]]></description>
			<content:encoded><![CDATA[<p>I used to use varchar(15).</p>
<p>But a little poking around yielded a better solution.</p>
<p>Turns out there&#8217;s a standard set of MySQL functions for translating an IP address to and from an integer.</p>

<div class="wp_syntax"><div class="code"><pre class="sql" style="font-family:monospace;"><span class="kw1">ALTER</span> <span class="kw1">TABLE</span> <span class="st0">`sessions`</span> <span class="kw1">ADD</span> <span class="st0">`client_ip`</span> INT <span class="kw1">NOT</span> <span class="kw1">NULL</span> AFTER <span class="st0">`created_at`</span>;
&nbsp;
mysql<span class="sy0">&gt;</span> <span class="kw1">SELECT</span> INET_ATON<span class="br0">&#40;</span><span class="st0">'192.168.10.50'</span><span class="br0">&#41;</span> <span class="kw1">AS</span> ipn;
<span class="sy0">+</span><span class="co1">------------+</span>
<span class="sy0">|</span> ipn        <span class="sy0">|</span>
<span class="sy0">+</span><span class="co1">------------+</span>
<span class="sy0">|</span> <span class="nu0">3232238130</span> <span class="sy0">|</span>
<span class="sy0">+</span><span class="co1">------------+</span>
&nbsp;
mysql<span class="sy0">&gt;</span> <span class="kw1">SELECT</span> INET_NTOA<span class="br0">&#40;</span><span class="nu0">3232238130</span><span class="br0">&#41;</span> <span class="kw1">AS</span> ipa;
<span class="sy0">+</span><span class="co1">--------------+</span>
<span class="sy0">|</span> ipa          <span class="sy0">|</span>
<span class="sy0">+</span><span class="co1">--------------+</span>
<span class="sy0">|</span> 192<span class="sy0">.</span>168<span class="sy0">.</span>10<span class="sy0">.</span>50 <span class="sy0">|</span>
<span class="sy0">+</span><span class="co1">--------------+</span></pre></div></div>

<p>Here&#8217;s the algo in case you&#8217;re curious:</p>

<div class="wp_syntax"><div class="code"><pre class="text" style="font-family:monospace;">(192 * 2^24) + (168 * 2^16) + (10 * 2^8) + 50 = 3232238130</pre></div></div>

]]></content:encoded>
			<wfw:commentRss>http://blog.kevburnsjr.com/best-way-to-store-an-ip-in-mysql/feed</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>UI anti-pattern: Cross Column Alpha Sort</title>
		<link>http://blog.kevburnsjr.com/ui-anti-pattern-cross-column-alpha-sort</link>
		<comments>http://blog.kevburnsjr.com/ui-anti-pattern-cross-column-alpha-sort#comments</comments>
		<pubDate>Sat, 05 Jun 2010 19:53:05 +0000</pubDate>
		<dc:creator>KevBurnsJr</dc:creator>
				<category><![CDATA[Uncategorized]]></category>

		<guid isPermaLink="false">http://blog.kevburnsjr.com/?p=1192</guid>
		<description><![CDATA[The human eye is trained to follow edges.  In the case of a list such as this, the eye&#8217;s natural inclination is to move from top to bottom along the column of icons, not left to right across jagged gaps between columns.  Splitting the first 4 in the sort across 4 columns is [...]]]></description>
			<content:encoded><![CDATA[<p>The human eye is trained to follow edges.  In the case of a list such as this, the eye&#8217;s natural inclination is to move from top to bottom along the column of icons, not left to right across jagged gaps between columns.  Splitting the first 4 in the sort across 4 columns is highly illegible.</p>
<div style="margin-left: -130px;"><img src="http://d.kevburnsjr.com/cross-column-alpha.png" alt="" /></div>
<p style="clear: both;">&nbsp;</p>
<p style="clear: both;"> Shame on you, Microsoft.  You should know better.</p>
]]></content:encoded>
			<wfw:commentRss>http://blog.kevburnsjr.com/ui-anti-pattern-cross-column-alpha-sort/feed</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Don&#8217;t write apologetic code</title>
		<link>http://blog.kevburnsjr.com/apologetic-code</link>
		<comments>http://blog.kevburnsjr.com/apologetic-code#comments</comments>
		<pubDate>Sat, 29 May 2010 20:44:18 +0000</pubDate>
		<dc:creator>KevBurnsJr</dc:creator>
				<category><![CDATA[Uncategorized]]></category>

		<guid isPermaLink="false">http://blog.kevburnsjr.com/?p=1099</guid>
		<description><![CDATA[If your code needs explaining, you&#8217;re doing it wrong.  Rewrite it.

/* Bad */
&#160;
$tuucount=0; // total unique users
$tlcount=0;  // total lead count 
$tlrcount=0; // total lead rev
$tarcount = 0; // total aftermarket revenue
$trcount=0; // total toal


/* Better */
&#160;
$total_unique_users = 0;
$total_lead_count = 0; 
$total_lead_revenue = 0; 
$total_aftermarket_revenue = 0;
$total = 0;

]]></description>
			<content:encoded><![CDATA[<p>If your code needs explaining, you&#8217;re doing it wrong.  Rewrite it.</p>

<div class="wp_syntax"><div class="code"><pre class="php" style="font-family:monospace;"><span class="coMULTI">/* Bad */</span>
&nbsp;
<span class="re0">$tuucount</span><span class="sy0">=</span><span class="nu0">0</span><span class="sy0">;</span> <span class="co1">// total unique users</span>
<span class="re0">$tlcount</span><span class="sy0">=</span><span class="nu0">0</span><span class="sy0">;</span>  <span class="co1">// total lead count </span>
<span class="re0">$tlrcount</span><span class="sy0">=</span><span class="nu0">0</span><span class="sy0">;</span> <span class="co1">// total lead rev</span>
<span class="re0">$tarcount</span> <span class="sy0">=</span> <span class="nu0">0</span><span class="sy0">;</span> <span class="co1">// total aftermarket revenue</span>
<span class="re0">$trcount</span><span class="sy0">=</span><span class="nu0">0</span><span class="sy0">;</span> <span class="co1">// total toal</span></pre></div></div>


<div class="wp_syntax"><div class="code"><pre class="php" style="font-family:monospace;"><span class="coMULTI">/* Better */</span>
&nbsp;
<span class="re0">$total_unique_users</span> <span class="sy0">=</span> <span class="nu0">0</span><span class="sy0">;</span>
<span class="re0">$total_lead_count</span> <span class="sy0">=</span> <span class="nu0">0</span><span class="sy0">;</span> 
<span class="re0">$total_lead_revenue</span> <span class="sy0">=</span> <span class="nu0">0</span><span class="sy0">;</span> 
<span class="re0">$total_aftermarket_revenue</span> <span class="sy0">=</span> <span class="nu0">0</span><span class="sy0">;</span>
<span class="re0">$total</span> <span class="sy0">=</span> <span class="nu0">0</span><span class="sy0">;</span></pre></div></div>

]]></content:encoded>
			<wfw:commentRss>http://blog.kevburnsjr.com/apologetic-code/feed</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Git batch deploy</title>
		<link>http://blog.kevburnsjr.com/git-batch-deploy</link>
		<comments>http://blog.kevburnsjr.com/git-batch-deploy#comments</comments>
		<pubDate>Fri, 28 May 2010 18:49:23 +0000</pubDate>
		<dc:creator>KevBurnsJr</dc:creator>
				<category><![CDATA[Uncategorized]]></category>

		<guid isPermaLink="false">http://blog.kevburnsjr.com/?p=1164</guid>
		<description><![CDATA[I should have done this ages ago.  1-click blast is awesome.

deploy.bat

cd c:\web\site\dev
call git push dev master
call git push stage master
call git push appsrv01 master
call git push appsrv02 master
call git push tasksrv01 master
pause



.file .wp_syntax { border: 1px solid #333; }
.file h5 { background: transparent url(http://d.kevburnsjr.com/page_white_text.png) no-repeat left center;padding-left: 20px; color: #fff }

]]></description>
			<content:encoded><![CDATA[<p>I should have done this ages ago.  1-click blast is awesome.</p>
<div class="file">
<h5>deploy.bat</h5>

<div class="wp_syntax"><div class="code"><pre class="text" style="font-family:monospace;">cd c:\web\site\dev
call git push dev master
call git push stage master
call git push appsrv01 master
call git push appsrv02 master
call git push tasksrv01 master
pause</pre></div></div>

</div>
<style>
.file .wp_syntax { border: 1px solid #333; }
.file h5 { background: transparent url(http://d.kevburnsjr.com/page_white_text.png) no-repeat left center;padding-left: 20px; color: #fff }
</style>
]]></content:encoded>
			<wfw:commentRss>http://blog.kevburnsjr.com/git-batch-deploy/feed</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Ocean Beach</title>
		<link>http://blog.kevburnsjr.com/ocean-beach</link>
		<comments>http://blog.kevburnsjr.com/ocean-beach#comments</comments>
		<pubDate>Thu, 13 May 2010 07:34:14 +0000</pubDate>
		<dc:creator>KevBurnsJr</dc:creator>
				<category><![CDATA[Uncategorized]]></category>

		<guid isPermaLink="false">http://blog.kevburnsjr.com/?p=1156</guid>
		<description><![CDATA[
]]></description>
			<content:encoded><![CDATA[<p class="wrap"><embed src="http://blip.tv/play/AYqeBAI" type="application/x-shockwave-flash" width="480" height="370" allowscriptaccess="always" allowfullscreen="true"></embed></p>
]]></content:encoded>
			<wfw:commentRss>http://blog.kevburnsjr.com/ocean-beach/feed</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
	</channel>
</rss>
