<?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:geo="http://www.w3.org/2003/01/geo/wgs84_pos#" xmlns:creativeCommons="http://backend.userland.com/creativeCommonsRssModule" xmlns:feedburner="http://rssnamespace.org/feedburner/ext/1.0" version="2.0">

<channel>
	<title>dp's blog</title>
	
	<link>http://blog.dp.cx</link>
	<description>Just another WordPress weblog</description>
	<lastBuildDate>Wed, 21 Sep 2011 13:32:49 +0000</lastBuildDate>
	<language>en</language>
	<sy:updatePeriod>hourly</sy:updatePeriod>
	<sy:updateFrequency>1</sy:updateFrequency>
	<generator>http://wordpress.org/?v=3.3-aortic-dissection</generator>
		<feedburner:info uri="dpcx" /><atom10:link xmlns:atom10="http://www.w3.org/2005/Atom" rel="hub" href="http://pubsubhubbub.appspot.com/" /><geo:lat>38.309105</geo:lat><geo:long>-85.720355</geo:long><creativeCommons:license>http://creativecommons.org/licenses/by-sa/2.0/</creativeCommons:license><atom10:link xmlns:atom10="http://www.w3.org/2005/Atom" rel="self" type="application/rss+xml" href="http://www.dp.cx/index.xml" /><feedburner:browserFriendly>This is an XML content feed. It is intended to be viewed in a newsreader or syndicated to another site, subject to copyright and fair use.</feedburner:browserFriendly><item>
		<title>Perl module of the day</title>
		<link>http://feedproxy.google.com/~r/dpcx/~3/gjRJkHYeZA0/</link>
		<comments>http://blog.dp.cx/816/perl-module-of-the-day-2/#comments</comments>
		<pubDate>Tue, 13 Sep 2011 22:52:00 +0000</pubDate>
		<dc:creator>dp</dc:creator>
				<category><![CDATA[Computers]]></category>
		<category><![CDATA[Perl]]></category>
		<category><![CDATA[Options]]></category>
		<category><![CDATA[Perl module]]></category>
		<category><![CDATA[programming]]></category>
		<category><![CDATA[There's more than one way to do it]]></category>

		<guid isPermaLink="false">http://blog.dp.cx/?p=816</guid>
		<description>Next up in the Perl Module of the Day series is Getopt::Long::Descriptive. It gives you the ability to have options passed to your programs like Getopt::Long, but allows you to also set up some descriptive text to be displayed when you need it, formatted in a nice, consistent way. Use is pretty straight-forward. Call it [...]</description>
			<content:encoded><![CDATA[<div class="zemanta-img" style="margin: 1em; display: block;">
<div class="wp-caption alignright" style="width: 257px"><a href="http://en.wikipedia.org/wiki/File:Programming_Perl.jpg"><img title="Programming Perl book cover" src="http://blog.dp.cx/wp-content/uploads/2011/09/Programming_Perl1.jpg" alt="Programming Perl book cover" width="247" height="325" /></a><p class="wp-caption-text">Image via Wikipedia</p></div>
</div>
<p>Next up in the <a class="zem_slink" title="Perl" href="http://www.perl.org" rel="homepage">Perl</a> Module of the Day series is <a href="search.cpan.org/search?q=Getopt::Long::Descriptive">Getopt::Long::Descriptive</a>. It gives you the ability to have options passed to your programs like Getopt::Long, but allows you to also set up some descriptive text to be displayed when you need it, formatted in a nice, consistent way.</p>
<p>Use is pretty straight-forward. Call it via:</p>
<pre>my ($opt, $usage) = describe_options(
 '%c %o',
 [ 'id|i=i', 'the id to look for', { default =&gt; 1 } ],
 [],
 [ 'help|h', 'some help messages' ]
 );
 print($usage-&gt;text), exit if $opt-&gt;help;
</pre>
<p>This will print out a nice help message with both the long <em>and</em> short options detailed, along with their descriptions so the users actually understand what the option actually does.</p>
<p>Here&#8217;s the exact output from the above code, written as &#8216;descriptive.pl&#8217;:</p>
<pre>descriptive.pl [-hi] [long options...]
	-i --id     the id to look for

	-h --help   some help messages</pre>
<p>You&#8217;ll notice that this spits out information based on the above information you supplied, just as you&#8217;d expect. It&#8217;s up to you to determine how detailed you want to make the descriptions. The options work just like <a href="search.cpan.org/search?q=Getopt::Long">Getopt::Long</a> do, so you can have items that you specify multiple times, using arrays (arrayrefs, really) etc. You&#8217;re even offered the ability to give each option a default value.</p>
<p>Recently, I was listing to an older episode of &#8220;<a href="http://5by5.tv/devshow">The Dev Show</a>&#8220;, with <a href="https://twitter.com/#!/jseifer">Jason Seifer</a> and <a class="zem_slink" title="Dan Benjamin" href="http://twitter.com/danbenjamin" rel="twitter">Dan Benjamin</a>, where they stated that perl was a write once, read never language. While this module won&#8217;t keep you from read never, it will at least help you later when you do have to read it again, an also when you have to run it again for the first time in months.</p>
<p>Any module that helps keep your sanity in line is a good module for me.</p>
<div class="zemanta-pixie" style="margin-top: 10px; height: 15px;"><img class="zemanta-pixie-img" style="border: none; float: right;" src="http://img.zemanta.com/pixy.gif?x-id=1bb6b9dd-48f7-41e6-960e-08e22ab6725d" alt="" /></div>
<img src="http://blog.dp.cx/?ak_action=api_record_view&id=816&type=feed" alt="" />
<p><a href="http://feedads.g.doubleclick.net/~a/hrSWiVegVoybOBCBHIMbK2rN_EM/0/da"><img src="http://feedads.g.doubleclick.net/~a/hrSWiVegVoybOBCBHIMbK2rN_EM/0/di" border="0" ismap="true"></img></a><br/>
<a href="http://feedads.g.doubleclick.net/~a/hrSWiVegVoybOBCBHIMbK2rN_EM/1/da"><img src="http://feedads.g.doubleclick.net/~a/hrSWiVegVoybOBCBHIMbK2rN_EM/1/di" border="0" ismap="true"></img></a></p><div class="feedflare">
<a href="http://feeds.feedburner.com/~ff/dpcx?a=gjRJkHYeZA0:RWhTjeWJvHQ:yIl2AUoC8zA"><img src="http://feeds.feedburner.com/~ff/dpcx?d=yIl2AUoC8zA" border="0"></img></a> <a href="http://feeds.feedburner.com/~ff/dpcx?a=gjRJkHYeZA0:RWhTjeWJvHQ:dnMXMwOfBR0"><img src="http://feeds.feedburner.com/~ff/dpcx?d=dnMXMwOfBR0" border="0"></img></a> <a href="http://feeds.feedburner.com/~ff/dpcx?a=gjRJkHYeZA0:RWhTjeWJvHQ:7Q72WNTAKBA"><img src="http://feeds.feedburner.com/~ff/dpcx?d=7Q72WNTAKBA" border="0"></img></a> <a href="http://feeds.feedburner.com/~ff/dpcx?a=gjRJkHYeZA0:RWhTjeWJvHQ:V_sGLiPBpWU"><img src="http://feeds.feedburner.com/~ff/dpcx?i=gjRJkHYeZA0:RWhTjeWJvHQ:V_sGLiPBpWU" border="0"></img></a> <a href="http://feeds.feedburner.com/~ff/dpcx?a=gjRJkHYeZA0:RWhTjeWJvHQ:D7DqB2pKExk"><img src="http://feeds.feedburner.com/~ff/dpcx?i=gjRJkHYeZA0:RWhTjeWJvHQ:D7DqB2pKExk" border="0"></img></a> <a href="http://feeds.feedburner.com/~ff/dpcx?a=gjRJkHYeZA0:RWhTjeWJvHQ:JEwB19i1-c4"><img src="http://feeds.feedburner.com/~ff/dpcx?i=gjRJkHYeZA0:RWhTjeWJvHQ:JEwB19i1-c4" border="0"></img></a>
</div><img src="http://feeds.feedburner.com/~r/dpcx/~4/gjRJkHYeZA0" height="1" width="1"/>]]></content:encoded>
			<wfw:commentRss>http://blog.dp.cx/816/perl-module-of-the-day-2/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		<feedburner:origLink>http://blog.dp.cx/816/perl-module-of-the-day-2/</feedburner:origLink></item>
		<item>
		<title>Stupid Choices</title>
		<link>http://feedproxy.google.com/~r/dpcx/~3/6_n3Q35rNwY/</link>
		<comments>http://blog.dp.cx/809/stupid-choices/#comments</comments>
		<pubDate>Wed, 08 Jun 2011 02:07:08 +0000</pubDate>
		<dc:creator>m</dc:creator>
				<category><![CDATA[Pet Peeves]]></category>
		<category><![CDATA[Relationships]]></category>
		<category><![CDATA[Death]]></category>
		<category><![CDATA[Diabetes]]></category>
		<category><![CDATA[Drug overdose]]></category>

		<guid isPermaLink="false">http://blog.dp.cx/?p=809</guid>
		<description>I just learned that an old friend overdosed a month ago at 31. My cousin passed a little over a week ago today at 36 because of major health related complications. What do these two deaths have in common besides me? Stupid choices! The Old Friend. She died from an oxy-cod overdose May 7th. She [...]</description>
			<content:encoded><![CDATA[<p>I just learned that an old friend overdosed a month ago at 31. My cousin passed a little over a week ago today at 36 because of major health related complications. What do these two deaths have in common besides me? Stupid choices!</p>
<p><strong>The Old Friend</strong>. She died from an oxy-cod overdose May 7<sup>th</sup>. She left behind three small children because she couldn’t handle her partying.</p>
<p><strong>My Cousin</strong>. He died May 23<sup>rd</sup> because he had type two diabetes, failing kidneys, a staff infection, and who knows what else. He died because he did not take care of his diabetes when he was originally diagnosed and it created this down hill spiral for 5 years until the day his mother found him dead in his bed… the day he was supposed to start dialysis.</p>
<p>Stupid decisions! Both of them! Aren&#8217;tyou supposed to grow up and take responsibility for yourself as you grow older? When you have kidsaren&#8217;tyou supposed to put them before any of your wants or desires? Isn’t your health one of the most important things to consider?</p>
<p>Please help me understand why people make suck dumb choices. Leaving behind them hurt and questions of &#8220;why&#8221;.</p>
<div class="zemanta-pixie" style="margin-top: 10px; height: 15px;"><img class="zemanta-pixie-img" style="border: none; float: right;" src="http://img.zemanta.com/pixy.gif?x-id=e8fa916e-f35a-4786-af09-975dcbc006f4" alt="" /></div>
<img src="http://blog.dp.cx/?ak_action=api_record_view&id=809&type=feed" alt="" />
<p><a href="http://feedads.g.doubleclick.net/~a/ONUmzJYyo03SUjSW-302z3K6wGo/0/da"><img src="http://feedads.g.doubleclick.net/~a/ONUmzJYyo03SUjSW-302z3K6wGo/0/di" border="0" ismap="true"></img></a><br/>
<a href="http://feedads.g.doubleclick.net/~a/ONUmzJYyo03SUjSW-302z3K6wGo/1/da"><img src="http://feedads.g.doubleclick.net/~a/ONUmzJYyo03SUjSW-302z3K6wGo/1/di" border="0" ismap="true"></img></a></p><div class="feedflare">
<a href="http://feeds.feedburner.com/~ff/dpcx?a=6_n3Q35rNwY:LdaCXMcWwxs:yIl2AUoC8zA"><img src="http://feeds.feedburner.com/~ff/dpcx?d=yIl2AUoC8zA" border="0"></img></a> <a href="http://feeds.feedburner.com/~ff/dpcx?a=6_n3Q35rNwY:LdaCXMcWwxs:dnMXMwOfBR0"><img src="http://feeds.feedburner.com/~ff/dpcx?d=dnMXMwOfBR0" border="0"></img></a> <a href="http://feeds.feedburner.com/~ff/dpcx?a=6_n3Q35rNwY:LdaCXMcWwxs:7Q72WNTAKBA"><img src="http://feeds.feedburner.com/~ff/dpcx?d=7Q72WNTAKBA" border="0"></img></a> <a href="http://feeds.feedburner.com/~ff/dpcx?a=6_n3Q35rNwY:LdaCXMcWwxs:V_sGLiPBpWU"><img src="http://feeds.feedburner.com/~ff/dpcx?i=6_n3Q35rNwY:LdaCXMcWwxs:V_sGLiPBpWU" border="0"></img></a> <a href="http://feeds.feedburner.com/~ff/dpcx?a=6_n3Q35rNwY:LdaCXMcWwxs:D7DqB2pKExk"><img src="http://feeds.feedburner.com/~ff/dpcx?i=6_n3Q35rNwY:LdaCXMcWwxs:D7DqB2pKExk" border="0"></img></a> <a href="http://feeds.feedburner.com/~ff/dpcx?a=6_n3Q35rNwY:LdaCXMcWwxs:JEwB19i1-c4"><img src="http://feeds.feedburner.com/~ff/dpcx?i=6_n3Q35rNwY:LdaCXMcWwxs:JEwB19i1-c4" border="0"></img></a>
</div><img src="http://feeds.feedburner.com/~r/dpcx/~4/6_n3Q35rNwY" height="1" width="1"/>]]></content:encoded>
			<wfw:commentRss>http://blog.dp.cx/809/stupid-choices/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		<feedburner:origLink>http://blog.dp.cx/809/stupid-choices/</feedburner:origLink></item>
		<item>
		<title>The Most Badass Muscle Car of All Time</title>
		<link>http://feedproxy.google.com/~r/dpcx/~3/5FZgZ_1IKn8/</link>
		<comments>http://blog.dp.cx/763/the-most-badass-muscle-car-of-all-time/#comments</comments>
		<pubDate>Fri, 03 Jun 2011 19:47:41 +0000</pubDate>
		<dc:creator>griffigr</dc:creator>
				<category><![CDATA[Favorites]]></category>
		<category><![CDATA[Camaro]]></category>
		<category><![CDATA[Chevrolet]]></category>
		<category><![CDATA[Chevrolet Camaro]]></category>
		<category><![CDATA[Chevrolet Chevelle]]></category>
		<category><![CDATA[Classic car]]></category>
		<category><![CDATA[General Motors]]></category>
		<category><![CDATA[Muscle car]]></category>

		<guid isPermaLink="false">http://blog.dp.cx/?p=763</guid>
		<description>I&amp;#8217;m a muscle car fanatic. Specifically, I&amp;#8217;m a sucker for all things GM. There a few things in this world that get me as excited as the rumble of a nasty, mechanical flat-tappet cam thumping away at the heart of an eight cylinder Chevrolet mill. The mere sight of a first-generation Camaro puts a huge [...]</description>
			<content:encoded><![CDATA[<p>I&#8217;m a <a class="zem_slink" title="Muscle car" href="http://en.wikipedia.org/wiki/Muscle_car" rel="wikipedia">muscle car</a> fanatic. <img style="padding: 5px; margin: 5px; float: right;" src="http://image.chevyhiperformance.com/f/featuredvehicles/1011chp_1967_chevrolet_chevelle_ss/29110934+pheader_460x1000/1011chp_05_o+1967_chevrolet_chevelle_ss+front.jpg" alt="" />Specifically, I&#8217;m a sucker for all things <a class="zem_slink" title="General Motors" href="http://www.gm.com" rel="homepage">GM</a>. There a few things in this world that get me as excited as the rumble of a nasty, mechanical flat-<a class="zem_slink" title="Tappet" href="http://en.wikipedia.org/wiki/Tappet" rel="wikipedia">tappet</a> cam thumping away at the heart of an eight cylinder <a class="zem_slink" title="Chevrolet" href="http://www.chevrolet.com" rel="homepage">Chevrolet</a> mill. The mere sight of a first-generation <a class="zem_slink" title="Chevrolet Camaro" href="http://www.chevrolet.com/camaro/" rel="homepage">Camaro</a> puts a huge smile on my face. A brief encounter with a second-generation <a class="zem_slink" title="Chevrolet Chevelle" href="http://en.wikipedia.org/wiki/Chevrolet_Chevelle" rel="wikipedia">Chevelle</a> invokes a sense of nostalgia I simply can&#8217;t explain.</p>
<p>Yet, there is one car forged by the hands of GM that encapsulates every characteristic that comprises a great muscle car. It&#8217;s classy. It&#8217;s extremely sexy. It&#8217;s got enough power to transform any frown into a shit-eating grin within a matter of seconds. Most importantly, it&#8217;s unique (due to the fact that this little gem was the last of its kind is largely over-shadowed by many of its predecessors). Of course, I&#8217;m referring to the ever-so-badass 1967 Chevelle SS.</p>
<p>According to the General, the 396 big-block that was available in the SS package cranked out 375 horsepower. Yet, any schmuck knows these power numbers were severely underrated (by as much as 50-75 ponies) from the factory as to avoid higher <a class="zem_slink" title="Insurance" href="http://www.wikinvest.com/industry/Insurance" rel="wikinvest">insurance premiums</a>. Couple gobs of power with a four-speed <a class="zem_slink" title="Transmission (mechanics)" href="http://en.wikipedia.org/wiki/Transmission_%28mechanics%29" rel="wikipedia">gear box</a> and you&#8217;ve got enough fun for a lifetime.</p>
<div class="zemanta-pixie" style="margin-top: 10px; height: 15px;"><img class="zemanta-pixie-img" style="border: none; float: right;" src="http://img.zemanta.com/pixy.gif?x-id=06e706e2-c800-4486-8b23-0423f1759fd9" alt="" /></div>
<img src="http://blog.dp.cx/?ak_action=api_record_view&id=763&type=feed" alt="" />
<p><a href="http://feedads.g.doubleclick.net/~a/6g5YqjVbpZjftAItuRsQg83oaY8/0/da"><img src="http://feedads.g.doubleclick.net/~a/6g5YqjVbpZjftAItuRsQg83oaY8/0/di" border="0" ismap="true"></img></a><br/>
<a href="http://feedads.g.doubleclick.net/~a/6g5YqjVbpZjftAItuRsQg83oaY8/1/da"><img src="http://feedads.g.doubleclick.net/~a/6g5YqjVbpZjftAItuRsQg83oaY8/1/di" border="0" ismap="true"></img></a></p><div class="feedflare">
<a href="http://feeds.feedburner.com/~ff/dpcx?a=5FZgZ_1IKn8:ya9VvQ07JS8:yIl2AUoC8zA"><img src="http://feeds.feedburner.com/~ff/dpcx?d=yIl2AUoC8zA" border="0"></img></a> <a href="http://feeds.feedburner.com/~ff/dpcx?a=5FZgZ_1IKn8:ya9VvQ07JS8:dnMXMwOfBR0"><img src="http://feeds.feedburner.com/~ff/dpcx?d=dnMXMwOfBR0" border="0"></img></a> <a href="http://feeds.feedburner.com/~ff/dpcx?a=5FZgZ_1IKn8:ya9VvQ07JS8:7Q72WNTAKBA"><img src="http://feeds.feedburner.com/~ff/dpcx?d=7Q72WNTAKBA" border="0"></img></a> <a href="http://feeds.feedburner.com/~ff/dpcx?a=5FZgZ_1IKn8:ya9VvQ07JS8:V_sGLiPBpWU"><img src="http://feeds.feedburner.com/~ff/dpcx?i=5FZgZ_1IKn8:ya9VvQ07JS8:V_sGLiPBpWU" border="0"></img></a> <a href="http://feeds.feedburner.com/~ff/dpcx?a=5FZgZ_1IKn8:ya9VvQ07JS8:D7DqB2pKExk"><img src="http://feeds.feedburner.com/~ff/dpcx?i=5FZgZ_1IKn8:ya9VvQ07JS8:D7DqB2pKExk" border="0"></img></a> <a href="http://feeds.feedburner.com/~ff/dpcx?a=5FZgZ_1IKn8:ya9VvQ07JS8:JEwB19i1-c4"><img src="http://feeds.feedburner.com/~ff/dpcx?i=5FZgZ_1IKn8:ya9VvQ07JS8:JEwB19i1-c4" border="0"></img></a>
</div><img src="http://feeds.feedburner.com/~r/dpcx/~4/5FZgZ_1IKn8" height="1" width="1"/>]]></content:encoded>
			<wfw:commentRss>http://blog.dp.cx/763/the-most-badass-muscle-car-of-all-time/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		<feedburner:origLink>http://blog.dp.cx/763/the-most-badass-muscle-car-of-all-time/</feedburner:origLink></item>
		<item>
		<title>Gentoo Install Scripts</title>
		<link>http://feedproxy.google.com/~r/dpcx/~3/wnwVxK9bE7o/</link>
		<comments>http://blog.dp.cx/799/gentoo-install-scripts/#comments</comments>
		<pubDate>Wed, 11 May 2011 13:35:20 +0000</pubDate>
		<dc:creator>dp</dc:creator>
				<category><![CDATA[Computers]]></category>
		<category><![CDATA[Internet]]></category>
		<category><![CDATA[Software]]></category>
		<category><![CDATA[Gentoo]]></category>
		<category><![CDATA[Gentoo Linux]]></category>
		<category><![CDATA[Linux]]></category>

		<guid isPermaLink="false">http://blog.dp.cx/?p=799</guid>
		<description>Recently, I&amp;#8217;ve been installing a lot of Gentoo boxes at work. Because of the tedium of following the Gentoo Handbook every time, and clicking through the steps, I&amp;#8217;ve started working on some install scripts. Currently, there&amp;#8217;s just one, that downloads the stage and portage files from the closest mirror. And I&amp;#8217;ve got other scripts in [...]</description>
			<content:encoded><![CDATA[<div class="zemanta-img" style="margin: 1em; display: block;">
<div class="wp-caption alignright" style="width: 310px"><a href="http://commons.wikipedia.org/wiki/File:Gentoo_Linux_logo_matte.svg"><img title="The Gentoo Linux logo in SVG format, without r..." src="http://blog.dp.cx/wp-content/uploads/2011/05/300px-Gentoo_Linux_logo_matte.svg_.png" alt="The Gentoo Linux logo in SVG format, without r..." width="300" height="314" /></a><p class="wp-caption-text">Image via Wikipedia</p></div>
</div>
<p>Recently, I&#8217;ve been installing a lot of <a class="zem_slink" title="Gentoo Linux" href="http://www.gentoo.org" rel="homepage">Gentoo</a> boxes at work. Because of the tedium of following the Gentoo Handbook every time, and clicking through the steps, I&#8217;ve started working on some install scripts. Currently, there&#8217;s just one, that downloads the stage and portage files from the closest mirror. And I&#8217;ve got other scripts in mind.</p>
<p>But only using them on our specific machines makes for very specific scripts. If anyone out there is setting up new Gentoo boxes, please give these a try, and suggest some improvements. So here it is, the git repository for my <a href="https://github.com/gms8994/Gentoo-Install-Scripts">Gentoo Install Scripts</a>.</p>
<div class="zemanta-pixie" style="margin-top: 10px; height: 15px;"><img class="zemanta-pixie-img" style="border: none; float: right;" src="http://img.zemanta.com/pixy.gif?x-id=d284a021-631d-4c0e-a63a-72b693a7653b" alt="" /></div>
<img src="http://blog.dp.cx/?ak_action=api_record_view&id=799&type=feed" alt="" />
<p><a href="http://feedads.g.doubleclick.net/~a/CGTgXJnAQzQtcG2aViLsFzdIiXA/0/da"><img src="http://feedads.g.doubleclick.net/~a/CGTgXJnAQzQtcG2aViLsFzdIiXA/0/di" border="0" ismap="true"></img></a><br/>
<a href="http://feedads.g.doubleclick.net/~a/CGTgXJnAQzQtcG2aViLsFzdIiXA/1/da"><img src="http://feedads.g.doubleclick.net/~a/CGTgXJnAQzQtcG2aViLsFzdIiXA/1/di" border="0" ismap="true"></img></a></p><div class="feedflare">
<a href="http://feeds.feedburner.com/~ff/dpcx?a=wnwVxK9bE7o:NpkiKnwJCVI:yIl2AUoC8zA"><img src="http://feeds.feedburner.com/~ff/dpcx?d=yIl2AUoC8zA" border="0"></img></a> <a href="http://feeds.feedburner.com/~ff/dpcx?a=wnwVxK9bE7o:NpkiKnwJCVI:dnMXMwOfBR0"><img src="http://feeds.feedburner.com/~ff/dpcx?d=dnMXMwOfBR0" border="0"></img></a> <a href="http://feeds.feedburner.com/~ff/dpcx?a=wnwVxK9bE7o:NpkiKnwJCVI:7Q72WNTAKBA"><img src="http://feeds.feedburner.com/~ff/dpcx?d=7Q72WNTAKBA" border="0"></img></a> <a href="http://feeds.feedburner.com/~ff/dpcx?a=wnwVxK9bE7o:NpkiKnwJCVI:V_sGLiPBpWU"><img src="http://feeds.feedburner.com/~ff/dpcx?i=wnwVxK9bE7o:NpkiKnwJCVI:V_sGLiPBpWU" border="0"></img></a> <a href="http://feeds.feedburner.com/~ff/dpcx?a=wnwVxK9bE7o:NpkiKnwJCVI:D7DqB2pKExk"><img src="http://feeds.feedburner.com/~ff/dpcx?i=wnwVxK9bE7o:NpkiKnwJCVI:D7DqB2pKExk" border="0"></img></a> <a href="http://feeds.feedburner.com/~ff/dpcx?a=wnwVxK9bE7o:NpkiKnwJCVI:JEwB19i1-c4"><img src="http://feeds.feedburner.com/~ff/dpcx?i=wnwVxK9bE7o:NpkiKnwJCVI:JEwB19i1-c4" border="0"></img></a>
</div><img src="http://feeds.feedburner.com/~r/dpcx/~4/wnwVxK9bE7o" height="1" width="1"/>]]></content:encoded>
			<wfw:commentRss>http://blog.dp.cx/799/gentoo-install-scripts/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		<feedburner:origLink>http://blog.dp.cx/799/gentoo-install-scripts/</feedburner:origLink></item>
		<item>
		<title>Perl Module of the Day</title>
		<link>http://feedproxy.google.com/~r/dpcx/~3/NaRZiwWLZjM/</link>
		<comments>http://blog.dp.cx/786/perl-module-of-the-day/#comments</comments>
		<pubDate>Tue, 19 Apr 2011 14:03:53 +0000</pubDate>
		<dc:creator>dp</dc:creator>
				<category><![CDATA[Perl]]></category>
		<category><![CDATA[CPAN]]></category>
		<category><![CDATA[Modules]]></category>

		<guid isPermaLink="false">http://blog.dp.cx/?p=786</guid>
		<description>I&amp;#8217;m going to start a new series on my blog, called Perl Module of the Day. It won&amp;#8217;t have posts every day, but any day that I find an interesting perl module, that I think might help others, I&amp;#8217;ll post it here. Todays module isTime::Duration. It simply takes a number of seconds, and converts it [...]
Related posts:&lt;ol&gt;
&lt;li&gt;&lt;a href='http://blog.dp.cx/816/perl-module-of-the-day-2/' rel='bookmark' title='Perl module of the day'&gt;Perl module of the day&lt;/a&gt; &lt;small&gt;Next up in the Perl Module of the Day series...&lt;/small&gt;&lt;/li&gt;
&lt;/ol&gt;</description>
			<content:encoded><![CDATA[<p>I&#8217;m going to start a new series on my blog, called <a class="zem_slink" title="Perl module" href="http://en.wikipedia.org/wiki/Perl_module" rel="wikipedia">Perl Module</a> of the Day. It won&#8217;t have posts every day, but any day that I find an interesting perl module, that I think might help others, I&#8217;ll post it here.</p>
<p>Todays module is<a href="http://search.cpan.org/perldoc/Time::Duration" target="_blank">Time::Duration</a>. It simply takes a number of seconds, and converts it to a <a class="zem_slink" title="Human-readable medium" href="http://en.wikipedia.org/wiki/Human-readable_medium" rel="wikipedia">human-readable</a> duration. But that&#8217;s not a simple task to do properly, as many (including me) have figured out.</p>
<p>By default, Time::Duration gives you an approximate value, to two expressed units. IE, <strong>1 hour and 4 minutes</strong>. But another method exists to give you the exact value of that duration.</p>
<p>This is a really helpful module that I wish I&#8217;d have known about many years ago, when I wrote my own functions to do this.</p>
<div class="zemanta-pixie" style="margin-top: 10px; height: 15px;"><img class="zemanta-pixie-img" style="border: none; float: right;" src="http://img.zemanta.com/pixy.gif?x-id=b233efcf-d06e-4ffb-9e71-b65e80e29e80" alt="" /></div>
<img src="http://blog.dp.cx/?ak_action=api_record_view&id=786&type=feed" alt="" /><p>Related posts:<ol>
<li><a href='http://blog.dp.cx/816/perl-module-of-the-day-2/' rel='bookmark' title='Perl module of the day'>Perl module of the day</a> <small>Next up in the Perl Module of the Day series...</small></li>
</ol></p>
<p><a href="http://feedads.g.doubleclick.net/~a/59U2jLU69jJsCLRgrzQZ3vU-SXs/0/da"><img src="http://feedads.g.doubleclick.net/~a/59U2jLU69jJsCLRgrzQZ3vU-SXs/0/di" border="0" ismap="true"></img></a><br/>
<a href="http://feedads.g.doubleclick.net/~a/59U2jLU69jJsCLRgrzQZ3vU-SXs/1/da"><img src="http://feedads.g.doubleclick.net/~a/59U2jLU69jJsCLRgrzQZ3vU-SXs/1/di" border="0" ismap="true"></img></a></p><div class="feedflare">
<a href="http://feeds.feedburner.com/~ff/dpcx?a=NaRZiwWLZjM:wJ0Vd8ZVzSI:yIl2AUoC8zA"><img src="http://feeds.feedburner.com/~ff/dpcx?d=yIl2AUoC8zA" border="0"></img></a> <a href="http://feeds.feedburner.com/~ff/dpcx?a=NaRZiwWLZjM:wJ0Vd8ZVzSI:dnMXMwOfBR0"><img src="http://feeds.feedburner.com/~ff/dpcx?d=dnMXMwOfBR0" border="0"></img></a> <a href="http://feeds.feedburner.com/~ff/dpcx?a=NaRZiwWLZjM:wJ0Vd8ZVzSI:7Q72WNTAKBA"><img src="http://feeds.feedburner.com/~ff/dpcx?d=7Q72WNTAKBA" border="0"></img></a> <a href="http://feeds.feedburner.com/~ff/dpcx?a=NaRZiwWLZjM:wJ0Vd8ZVzSI:V_sGLiPBpWU"><img src="http://feeds.feedburner.com/~ff/dpcx?i=NaRZiwWLZjM:wJ0Vd8ZVzSI:V_sGLiPBpWU" border="0"></img></a> <a href="http://feeds.feedburner.com/~ff/dpcx?a=NaRZiwWLZjM:wJ0Vd8ZVzSI:D7DqB2pKExk"><img src="http://feeds.feedburner.com/~ff/dpcx?i=NaRZiwWLZjM:wJ0Vd8ZVzSI:D7DqB2pKExk" border="0"></img></a> <a href="http://feeds.feedburner.com/~ff/dpcx?a=NaRZiwWLZjM:wJ0Vd8ZVzSI:JEwB19i1-c4"><img src="http://feeds.feedburner.com/~ff/dpcx?i=NaRZiwWLZjM:wJ0Vd8ZVzSI:JEwB19i1-c4" border="0"></img></a>
</div><img src="http://feeds.feedburner.com/~r/dpcx/~4/NaRZiwWLZjM" height="1" width="1"/>]]></content:encoded>
			<wfw:commentRss>http://blog.dp.cx/786/perl-module-of-the-day/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		<feedburner:origLink>http://blog.dp.cx/786/perl-module-of-the-day/</feedburner:origLink></item>
		<item>
		<title>Time Lapse Solar Panel Installation</title>
		<link>http://feedproxy.google.com/~r/dpcx/~3/LKl92iFHXHI/</link>
		<comments>http://blog.dp.cx/782/time-lapse-solar-panel-installation/#comments</comments>
		<pubDate>Tue, 29 Mar 2011 14:49:22 +0000</pubDate>
		<dc:creator>dp</dc:creator>
				<category><![CDATA[Frugality]]></category>
		<category><![CDATA[Projects]]></category>
		<category><![CDATA[Ann Arbor]]></category>
		<category><![CDATA[Business]]></category>
		<category><![CDATA[Energy]]></category>
		<category><![CDATA[Renewable]]></category>
		<category><![CDATA[Solar]]></category>
		<category><![CDATA[Solar panel]]></category>
		<category><![CDATA[Time-lapse]]></category>
		<category><![CDATA[YouTube]]></category>

		<guid isPermaLink="false">http://blog.dp.cx/?p=782</guid>
		<description>Very cool time lapse video showing an Ann Arbor mans solar panel installation. Many thousands of dollars were spent to get it all right; he expects a $0 electricity bill &amp;#8220;soon&amp;#8221;. via YouTube &amp;#8211; Ann Arbor Michigan Solar Roof Installation.</description>
			<content:encoded><![CDATA[<p>Very cool <a class="zem_slink" title="Time-lapse" rel="wikipedia" href="http://en.wikipedia.org/wiki/Time-lapse">time lapse</a> video showing an <a class="zem_slink" title="Ann Arbor" rel="geolocation" href="http://maps.google.com/maps?ll=42.2813888889,-83.7483333333&amp;spn=0.1,0.1&amp;q=42.2813888889,-83.7483333333 (Ann%20Arbor)&amp;t=h">Ann Arbor</a> mans <a class="zem_slink" title="Solar panel" rel="wikipedia" href="http://en.wikipedia.org/wiki/Solar_panel">solar panel</a> installation. Many thousands of dollars were spent to get it all right; he expects a $0 electricity bill &#8220;soon&#8221;.</p>
<p><object width="500" height="400"><param name="movie" value="http://www.youtube.com/v/Tea7EipQ7kQ?version=3"></param><param name="allowFullScreen" value="true"></param><param name="allowscriptaccess" value="always"></param><embed src="http://www.youtube.com/v/Tea7EipQ7kQ?version=3" type="application/x-shockwave-flash" width="500" height="400" allowscriptaccess="always" allowfullscreen="true"></embed></object></p>
<p>via <a href="http://www.youtube.com/watch?v=Tea7EipQ7kQ&amp;feature=player_embedded">YouTube &#8211; Ann Arbor Michigan Solar Roof Installation</a>.</p>
<p><object width="425" height="350"><param name="movie" value="http://www.youtube.com/v/Tea7EipQ7kQ&amp;feature=player_embedded" /><param name="wmode" value="transparent" /><embed type="application/x-shockwave-flash" width="425" height="350" src="http://www.youtube.com/v/Tea7EipQ7kQ&amp;feature=player_embedded" wmode="transparent"></embed></object></p>
<div class="zemanta-pixie" style="margin-top: 10px; height: 15px;"><img class="zemanta-pixie-img" style="border: none; float: right;" src="http://img.zemanta.com/pixy.gif?x-id=68e5347a-51f3-4fc3-a8f3-69df99f12245" alt="" /></div>
<img src="http://blog.dp.cx/?ak_action=api_record_view&id=782&type=feed" alt="" />
<p><a href="http://feedads.g.doubleclick.net/~a/bI1JrdB7FmE3qFlKqEMnkysIvz4/0/da"><img src="http://feedads.g.doubleclick.net/~a/bI1JrdB7FmE3qFlKqEMnkysIvz4/0/di" border="0" ismap="true"></img></a><br/>
<a href="http://feedads.g.doubleclick.net/~a/bI1JrdB7FmE3qFlKqEMnkysIvz4/1/da"><img src="http://feedads.g.doubleclick.net/~a/bI1JrdB7FmE3qFlKqEMnkysIvz4/1/di" border="0" ismap="true"></img></a></p><div class="feedflare">
<a href="http://feeds.feedburner.com/~ff/dpcx?a=LKl92iFHXHI:t4fDzf9SXHU:yIl2AUoC8zA"><img src="http://feeds.feedburner.com/~ff/dpcx?d=yIl2AUoC8zA" border="0"></img></a> <a href="http://feeds.feedburner.com/~ff/dpcx?a=LKl92iFHXHI:t4fDzf9SXHU:dnMXMwOfBR0"><img src="http://feeds.feedburner.com/~ff/dpcx?d=dnMXMwOfBR0" border="0"></img></a> <a href="http://feeds.feedburner.com/~ff/dpcx?a=LKl92iFHXHI:t4fDzf9SXHU:7Q72WNTAKBA"><img src="http://feeds.feedburner.com/~ff/dpcx?d=7Q72WNTAKBA" border="0"></img></a> <a href="http://feeds.feedburner.com/~ff/dpcx?a=LKl92iFHXHI:t4fDzf9SXHU:V_sGLiPBpWU"><img src="http://feeds.feedburner.com/~ff/dpcx?i=LKl92iFHXHI:t4fDzf9SXHU:V_sGLiPBpWU" border="0"></img></a> <a href="http://feeds.feedburner.com/~ff/dpcx?a=LKl92iFHXHI:t4fDzf9SXHU:D7DqB2pKExk"><img src="http://feeds.feedburner.com/~ff/dpcx?i=LKl92iFHXHI:t4fDzf9SXHU:D7DqB2pKExk" border="0"></img></a> <a href="http://feeds.feedburner.com/~ff/dpcx?a=LKl92iFHXHI:t4fDzf9SXHU:JEwB19i1-c4"><img src="http://feeds.feedburner.com/~ff/dpcx?i=LKl92iFHXHI:t4fDzf9SXHU:JEwB19i1-c4" border="0"></img></a>
</div><img src="http://feeds.feedburner.com/~r/dpcx/~4/LKl92iFHXHI" height="1" width="1"/>]]></content:encoded>
			<wfw:commentRss>http://blog.dp.cx/782/time-lapse-solar-panel-installation/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		<feedburner:origLink>http://blog.dp.cx/782/time-lapse-solar-panel-installation/</feedburner:origLink></item>
		<item>
		<title>PHP and nl2br</title>
		<link>http://feedproxy.google.com/~r/dpcx/~3/RSAkTt3ZvFc/</link>
		<comments>http://blog.dp.cx/778/php-and-nl2br/#comments</comments>
		<pubDate>Thu, 17 Mar 2011 19:10:10 +0000</pubDate>
		<dc:creator>dp</dc:creator>
				<category><![CDATA[Computers]]></category>
		<category><![CDATA[Software]]></category>
		<category><![CDATA[PHP]]></category>
		<category><![CDATA[programming]]></category>
		<category><![CDATA[XHTML]]></category>

		<guid isPermaLink="false">http://blog.dp.cx/?p=778</guid>
		<description>PHP has a nifty function callednl2br, which will convert newlines within text to tags (optionally enabling the XHTML syntax). I&amp;#8217;m curious though, why a br2nl function was never written? Instead, now I have to hack one together. BLARGH! Related posts: Perl module of the day Next up in the Perl Module of the Day series...
Related posts:&lt;ol&gt;
&lt;li&gt;&lt;a href='http://blog.dp.cx/816/perl-module-of-the-day-2/' rel='bookmark' title='Perl module of the day'&gt;Perl module of the day&lt;/a&gt; &lt;small&gt;Next up in the Perl Module of the Day series...&lt;/small&gt;&lt;/li&gt;
&lt;/ol&gt;</description>
			<content:encoded><![CDATA[<div class="zemanta-img" style="margin: 0em 1em 1em 1em; display: block;">
<div class="wp-caption alignright" style="width: 190px"><a href="http://commons.wikipedia.org/wiki/File:PHP-logo.svg"><img title="The PHP logo displaying the Handel Gothic font." src="http://blog.dp.cx/wp-content/uploads/2011/03/300px-PHP-logo.svg_2.png" alt="The PHP logo displaying the Handel Gothic font." width="180" height="95" /></a><p class="wp-caption-text">Image via Wikipedia</p></div>
</div>
<p><a class="zem_slink" title="PHP" rel="homepage" href="http://www.php.net/">PHP</a> has a nifty function called<a href="http://php.net/nl2br">nl2br</a>, which will convert <a class="zem_slink" title="Newline" rel="wikipedia" href="http://en.wikipedia.org/wiki/Newline">newlines</a> within text to<br />
tags (optionally enabling the <a class="zem_slink" title="XHTML" rel="wikipedia" href="http://en.wikipedia.org/wiki/XHTML">XHTML</a> syntax). I&#8217;m curious though, why a br2nl function was never written? Instead, now I have to hack one together.</p>
<p>BLARGH!</p>
<div class="zemanta-pixie" style="margin-top: 10px; height: 15px;"><img class="zemanta-pixie-img" style="border: none; float: right;" src="http://img.zemanta.com/pixy.gif?x-id=b7075655-ecba-4ff5-b564-f3e86b8e4c08" alt="" /></div>
<img src="http://blog.dp.cx/?ak_action=api_record_view&id=778&type=feed" alt="" /><p>Related posts:<ol>
<li><a href='http://blog.dp.cx/816/perl-module-of-the-day-2/' rel='bookmark' title='Perl module of the day'>Perl module of the day</a> <small>Next up in the Perl Module of the Day series...</small></li>
</ol></p>
<p><a href="http://feedads.g.doubleclick.net/~a/ANX91tGJfImYjb0HeZ5md1fBEA4/0/da"><img src="http://feedads.g.doubleclick.net/~a/ANX91tGJfImYjb0HeZ5md1fBEA4/0/di" border="0" ismap="true"></img></a><br/>
<a href="http://feedads.g.doubleclick.net/~a/ANX91tGJfImYjb0HeZ5md1fBEA4/1/da"><img src="http://feedads.g.doubleclick.net/~a/ANX91tGJfImYjb0HeZ5md1fBEA4/1/di" border="0" ismap="true"></img></a></p><div class="feedflare">
<a href="http://feeds.feedburner.com/~ff/dpcx?a=RSAkTt3ZvFc:63Y_5VNi1Lc:yIl2AUoC8zA"><img src="http://feeds.feedburner.com/~ff/dpcx?d=yIl2AUoC8zA" border="0"></img></a> <a href="http://feeds.feedburner.com/~ff/dpcx?a=RSAkTt3ZvFc:63Y_5VNi1Lc:dnMXMwOfBR0"><img src="http://feeds.feedburner.com/~ff/dpcx?d=dnMXMwOfBR0" border="0"></img></a> <a href="http://feeds.feedburner.com/~ff/dpcx?a=RSAkTt3ZvFc:63Y_5VNi1Lc:7Q72WNTAKBA"><img src="http://feeds.feedburner.com/~ff/dpcx?d=7Q72WNTAKBA" border="0"></img></a> <a href="http://feeds.feedburner.com/~ff/dpcx?a=RSAkTt3ZvFc:63Y_5VNi1Lc:V_sGLiPBpWU"><img src="http://feeds.feedburner.com/~ff/dpcx?i=RSAkTt3ZvFc:63Y_5VNi1Lc:V_sGLiPBpWU" border="0"></img></a> <a href="http://feeds.feedburner.com/~ff/dpcx?a=RSAkTt3ZvFc:63Y_5VNi1Lc:D7DqB2pKExk"><img src="http://feeds.feedburner.com/~ff/dpcx?i=RSAkTt3ZvFc:63Y_5VNi1Lc:D7DqB2pKExk" border="0"></img></a> <a href="http://feeds.feedburner.com/~ff/dpcx?a=RSAkTt3ZvFc:63Y_5VNi1Lc:JEwB19i1-c4"><img src="http://feeds.feedburner.com/~ff/dpcx?i=RSAkTt3ZvFc:63Y_5VNi1Lc:JEwB19i1-c4" border="0"></img></a>
</div><img src="http://feeds.feedburner.com/~r/dpcx/~4/RSAkTt3ZvFc" height="1" width="1"/>]]></content:encoded>
			<wfw:commentRss>http://blog.dp.cx/778/php-and-nl2br/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		<feedburner:origLink>http://blog.dp.cx/778/php-and-nl2br/</feedburner:origLink></item>
		<item>
		<title>Overheard in the office</title>
		<link>http://feedproxy.google.com/~r/dpcx/~3/0tvXOoJcr1U/</link>
		<comments>http://blog.dp.cx/776/overheard-in-the-office/#comments</comments>
		<pubDate>Tue, 15 Mar 2011 20:55:12 +0000</pubDate>
		<dc:creator>dp</dc:creator>
				<category><![CDATA[Overheard in the Office]]></category>

		<guid isPermaLink="false">http://blog.dp.cx/?p=776</guid>
		<description>&amp;#8220;I have to set the date when I create it? Stupid!&amp;#8221;</description>
			<content:encoded><![CDATA[<p>&#8220;I have to set the date when I create it? Stupid!&#8221;</p>
<img src="http://blog.dp.cx/?ak_action=api_record_view&id=776&type=feed" alt="" />
<p><a href="http://feedads.g.doubleclick.net/~a/sQUgdLfqqbWRxw-9Ysap8T1jfhA/0/da"><img src="http://feedads.g.doubleclick.net/~a/sQUgdLfqqbWRxw-9Ysap8T1jfhA/0/di" border="0" ismap="true"></img></a><br/>
<a href="http://feedads.g.doubleclick.net/~a/sQUgdLfqqbWRxw-9Ysap8T1jfhA/1/da"><img src="http://feedads.g.doubleclick.net/~a/sQUgdLfqqbWRxw-9Ysap8T1jfhA/1/di" border="0" ismap="true"></img></a></p><div class="feedflare">
<a href="http://feeds.feedburner.com/~ff/dpcx?a=0tvXOoJcr1U:YcKLVVv4X5M:yIl2AUoC8zA"><img src="http://feeds.feedburner.com/~ff/dpcx?d=yIl2AUoC8zA" border="0"></img></a> <a href="http://feeds.feedburner.com/~ff/dpcx?a=0tvXOoJcr1U:YcKLVVv4X5M:dnMXMwOfBR0"><img src="http://feeds.feedburner.com/~ff/dpcx?d=dnMXMwOfBR0" border="0"></img></a> <a href="http://feeds.feedburner.com/~ff/dpcx?a=0tvXOoJcr1U:YcKLVVv4X5M:7Q72WNTAKBA"><img src="http://feeds.feedburner.com/~ff/dpcx?d=7Q72WNTAKBA" border="0"></img></a> <a href="http://feeds.feedburner.com/~ff/dpcx?a=0tvXOoJcr1U:YcKLVVv4X5M:V_sGLiPBpWU"><img src="http://feeds.feedburner.com/~ff/dpcx?i=0tvXOoJcr1U:YcKLVVv4X5M:V_sGLiPBpWU" border="0"></img></a> <a href="http://feeds.feedburner.com/~ff/dpcx?a=0tvXOoJcr1U:YcKLVVv4X5M:D7DqB2pKExk"><img src="http://feeds.feedburner.com/~ff/dpcx?i=0tvXOoJcr1U:YcKLVVv4X5M:D7DqB2pKExk" border="0"></img></a> <a href="http://feeds.feedburner.com/~ff/dpcx?a=0tvXOoJcr1U:YcKLVVv4X5M:JEwB19i1-c4"><img src="http://feeds.feedburner.com/~ff/dpcx?i=0tvXOoJcr1U:YcKLVVv4X5M:JEwB19i1-c4" border="0"></img></a>
</div><img src="http://feeds.feedburner.com/~r/dpcx/~4/0tvXOoJcr1U" height="1" width="1"/>]]></content:encoded>
			<wfw:commentRss>http://blog.dp.cx/776/overheard-in-the-office/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		<feedburner:origLink>http://blog.dp.cx/776/overheard-in-the-office/</feedburner:origLink></item>
		<item>
		<title>Reasons to use a cartesian join</title>
		<link>http://feedproxy.google.com/~r/dpcx/~3/OHZ_VrnWeEc/</link>
		<comments>http://blog.dp.cx/774/reasons-to-use-a-cartesian-join/#comments</comments>
		<pubDate>Tue, 01 Feb 2011 23:38:16 +0000</pubDate>
		<dc:creator>dp</dc:creator>
				<category><![CDATA[Computers]]></category>
		<category><![CDATA[Software]]></category>
		<category><![CDATA[Join (SQL)]]></category>
		<category><![CDATA[MySQL]]></category>
		<category><![CDATA[Null (SQL)]]></category>
		<category><![CDATA[Select (SQL)]]></category>
		<category><![CDATA[SQL]]></category>
		<category><![CDATA[Table (database)]]></category>

		<guid isPermaLink="false">http://blog.dp.cx/?p=774</guid>
		<description>All over the Internet you&amp;#8217;ll find people telling you that cartesian joins are a bad idea. And for the 99% of the time you&amp;#8217;d run in to them, they are. But I found a legitimate use for them. I needed to get a count of records from table A for all the records in table [...]</description>
			<content:encoded><![CDATA[<div class="zemanta-img" style="margin: 1em; display: block;">
<div class="wp-caption alignright" style="width: 138px"><a href="http://en.wikipedia.org/wiki/File:Db_null.png"><img title="The Greek lowercase omega (ω) character is use..." src="http://blog.dp.cx/wp-content/uploads/2011/02/Db_null.png" alt="The Greek lowercase omega (ω) character is use..." width="128" height="128" /></a><p class="wp-caption-text">Image via Wikipedia</p></div>
</div>
<p>All over the Internet you&#8217;ll <a href="http://www.rampant-books.com/t_hpsdba_77_cartesian_join_operations.htm">find</a> <a href="http://ezinearticles.com/?What-is-a-Cartesian-Join?&amp;id=3560672">people</a> <a href="http://www.articlesbase.com/databases-articles/cartesian-join-what-is-it-and-how-to-avoid-it-1723783.html">telling</a> you that cartesian joins are a bad idea. And for the 99% of the time you&#8217;d run in to them, they are. But I found a legitimate use for them.</p>
<p>I needed to get a count of records from table A for all the records in table B, but the only thing to join them was with a field that was in table C; so, using a <a href="http://blog.dp.cx/757/nested-joins-in-mysql/">nested join</a>, I managed to run the select. The actual select is below:</p>
<pre>﻿﻿SELECT COUNT(*), d.name
FROM rfis r,
(divisions d INNER JOIN division_site_rfis dsr ON d.id = dsr.division_id)
WHERE r.site_id = dsr.site_id
AND r.division_id IS NULL
AND r.site_id = ?
AND MONTH(approval_ts) = ?
AND YEAR(approval_ts) = ?
AND status = 1
GROUP BY d.name</pre>
<p>&nbsp;</p>
<div class="zemanta-pixie" style="margin-top: 10px; height: 15px;"><img class="zemanta-pixie-img" style="border: none; float: right;" src="http://img.zemanta.com/pixy.gif?x-id=62a7050d-9876-4e67-b3f4-7e197edb5b32" alt="" /></div>
<img src="http://blog.dp.cx/?ak_action=api_record_view&id=774&type=feed" alt="" />
<p><a href="http://feedads.g.doubleclick.net/~a/WnJWEj7oymZro1xOlWd_FHfSudw/0/da"><img src="http://feedads.g.doubleclick.net/~a/WnJWEj7oymZro1xOlWd_FHfSudw/0/di" border="0" ismap="true"></img></a><br/>
<a href="http://feedads.g.doubleclick.net/~a/WnJWEj7oymZro1xOlWd_FHfSudw/1/da"><img src="http://feedads.g.doubleclick.net/~a/WnJWEj7oymZro1xOlWd_FHfSudw/1/di" border="0" ismap="true"></img></a></p><div class="feedflare">
<a href="http://feeds.feedburner.com/~ff/dpcx?a=OHZ_VrnWeEc:HI9pQOnb8SQ:yIl2AUoC8zA"><img src="http://feeds.feedburner.com/~ff/dpcx?d=yIl2AUoC8zA" border="0"></img></a> <a href="http://feeds.feedburner.com/~ff/dpcx?a=OHZ_VrnWeEc:HI9pQOnb8SQ:dnMXMwOfBR0"><img src="http://feeds.feedburner.com/~ff/dpcx?d=dnMXMwOfBR0" border="0"></img></a> <a href="http://feeds.feedburner.com/~ff/dpcx?a=OHZ_VrnWeEc:HI9pQOnb8SQ:7Q72WNTAKBA"><img src="http://feeds.feedburner.com/~ff/dpcx?d=7Q72WNTAKBA" border="0"></img></a> <a href="http://feeds.feedburner.com/~ff/dpcx?a=OHZ_VrnWeEc:HI9pQOnb8SQ:V_sGLiPBpWU"><img src="http://feeds.feedburner.com/~ff/dpcx?i=OHZ_VrnWeEc:HI9pQOnb8SQ:V_sGLiPBpWU" border="0"></img></a> <a href="http://feeds.feedburner.com/~ff/dpcx?a=OHZ_VrnWeEc:HI9pQOnb8SQ:D7DqB2pKExk"><img src="http://feeds.feedburner.com/~ff/dpcx?i=OHZ_VrnWeEc:HI9pQOnb8SQ:D7DqB2pKExk" border="0"></img></a> <a href="http://feeds.feedburner.com/~ff/dpcx?a=OHZ_VrnWeEc:HI9pQOnb8SQ:JEwB19i1-c4"><img src="http://feeds.feedburner.com/~ff/dpcx?i=OHZ_VrnWeEc:HI9pQOnb8SQ:JEwB19i1-c4" border="0"></img></a>
</div><img src="http://feeds.feedburner.com/~r/dpcx/~4/OHZ_VrnWeEc" height="1" width="1"/>]]></content:encoded>
			<wfw:commentRss>http://blog.dp.cx/774/reasons-to-use-a-cartesian-join/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		<feedburner:origLink>http://blog.dp.cx/774/reasons-to-use-a-cartesian-join/</feedburner:origLink></item>
		<item>
		<title>How to Correct Grainy Images in Flash</title>
		<link>http://feedproxy.google.com/~r/dpcx/~3/V3oP5LP1EHc/</link>
		<comments>http://blog.dp.cx/765/how-to-correct-grainy-images-in-flash/#comments</comments>
		<pubDate>Fri, 28 Jan 2011 21:16:44 +0000</pubDate>
		<dc:creator>griffigr</dc:creator>
				<category><![CDATA[Computers]]></category>
		<category><![CDATA[Software]]></category>
		<category><![CDATA[Adobe Photoshop]]></category>
		<category><![CDATA[File size]]></category>
		<category><![CDATA[Graphics Interchange Format]]></category>
		<category><![CDATA[Image compression]]></category>
		<category><![CDATA[Image file formats]]></category>
		<category><![CDATA[JPEG]]></category>
		<category><![CDATA[Lossy compression]]></category>
		<category><![CDATA[Portable Network Graphic]]></category>

		<guid isPermaLink="false">http://blog.dp.cx/?p=765</guid>
		<description>When building a new Flash project (from a PSD, for example), you&amp;#8217;ll notice Flash likes to compress the absolute HELL out of all images within the asset library upon import. This causes your project to look like absolute shit, but ALAS! There&amp;#8217;s an easy solution. After you&amp;#8217;ve imported your images to the asset library, right-click [...]</description>
			<content:encoded><![CDATA[<p>When building a new Flash project (from a <a class="zem_slink" title="Adobe Photoshop" rel="wikipedia" href="http://en.wikipedia.org/wiki/Adobe_Photoshop">PSD</a>, for example), you&#8217;ll notice Flash likes to compress the absolute HELL out of all images within the asset library upon import. This causes your project to look like absolute shit, but ALAS! There&#8217;s an easy solution.</p>
<p>After you&#8217;ve imported your images to the asset library, right-click the file you want to drop on to the stage and change the <a class="zem_slink" title="Image compression" rel="wikipedia" href="http://en.wikipedia.org/wiki/Image_compression">image compression</a> settings from <a class="zem_slink" title="Lossy compression" rel="wikipedia" href="http://en.wikipedia.org/wiki/Lossy_compression">lossy</a> (<a class="zem_slink" title="JPEG" rel="wikipedia" href="http://en.wikipedia.org/wiki/JPEG">JPEG</a>) to lossless (<a class="zem_slink" title="Portable Network Graphics" rel="wikipedia" href="http://en.wikipedia.org/wiki/Portable_Network_Graphics">PNG</a>). It&#8217;s that easy.</p>
<p>After the change, you&#8217;ll notice a large improvement in image quality while still retaining a relatively low <a class="zem_slink" title="File size" rel="wikipedia" href="http://en.wikipedia.org/wiki/File_size">file size</a>. Enjoy.</p>
<p><img src="http://blog.dp.cx.s3.amazonaws.com/wp-content/uploads/2011/01/FlashFix2-296x300.png" alt="" /></p>
<div class="zemanta-pixie" style="margin-top: 10px; height: 15px;"><img class="zemanta-pixie-img" style="border: none; float: right;" src="http://img.zemanta.com/pixy.gif?x-id=ecca5a87-b071-40b4-a3cd-3f92d6b8e54c" alt="" /></div>
<img src="http://blog.dp.cx/?ak_action=api_record_view&id=765&type=feed" alt="" />
<p><a href="http://feedads.g.doubleclick.net/~a/A7uTXPHAL8pni8FjApXtfAS8yHY/0/da"><img src="http://feedads.g.doubleclick.net/~a/A7uTXPHAL8pni8FjApXtfAS8yHY/0/di" border="0" ismap="true"></img></a><br/>
<a href="http://feedads.g.doubleclick.net/~a/A7uTXPHAL8pni8FjApXtfAS8yHY/1/da"><img src="http://feedads.g.doubleclick.net/~a/A7uTXPHAL8pni8FjApXtfAS8yHY/1/di" border="0" ismap="true"></img></a></p><div class="feedflare">
<a href="http://feeds.feedburner.com/~ff/dpcx?a=V3oP5LP1EHc:nlpTOwlaocQ:yIl2AUoC8zA"><img src="http://feeds.feedburner.com/~ff/dpcx?d=yIl2AUoC8zA" border="0"></img></a> <a href="http://feeds.feedburner.com/~ff/dpcx?a=V3oP5LP1EHc:nlpTOwlaocQ:dnMXMwOfBR0"><img src="http://feeds.feedburner.com/~ff/dpcx?d=dnMXMwOfBR0" border="0"></img></a> <a href="http://feeds.feedburner.com/~ff/dpcx?a=V3oP5LP1EHc:nlpTOwlaocQ:7Q72WNTAKBA"><img src="http://feeds.feedburner.com/~ff/dpcx?d=7Q72WNTAKBA" border="0"></img></a> <a href="http://feeds.feedburner.com/~ff/dpcx?a=V3oP5LP1EHc:nlpTOwlaocQ:V_sGLiPBpWU"><img src="http://feeds.feedburner.com/~ff/dpcx?i=V3oP5LP1EHc:nlpTOwlaocQ:V_sGLiPBpWU" border="0"></img></a> <a href="http://feeds.feedburner.com/~ff/dpcx?a=V3oP5LP1EHc:nlpTOwlaocQ:D7DqB2pKExk"><img src="http://feeds.feedburner.com/~ff/dpcx?i=V3oP5LP1EHc:nlpTOwlaocQ:D7DqB2pKExk" border="0"></img></a> <a href="http://feeds.feedburner.com/~ff/dpcx?a=V3oP5LP1EHc:nlpTOwlaocQ:JEwB19i1-c4"><img src="http://feeds.feedburner.com/~ff/dpcx?i=V3oP5LP1EHc:nlpTOwlaocQ:JEwB19i1-c4" border="0"></img></a>
</div><img src="http://feeds.feedburner.com/~r/dpcx/~4/V3oP5LP1EHc" height="1" width="1"/>]]></content:encoded>
			<wfw:commentRss>http://blog.dp.cx/765/how-to-correct-grainy-images-in-flash/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		<feedburner:origLink>http://blog.dp.cx/765/how-to-correct-grainy-images-in-flash/</feedburner:origLink></item>
	</channel>
</rss><!-- W3 Total Cache: Page cache debug info:
Engine:             disk: enhanced
Cache key:          feed/_index.xml_gzip
Caching:            enabled
Status:             not cached
Creation Time:      1.376s
Header info:
Set-Cookie:         wpgb_visit_last_php-default=1335693522; expires=Mon, 29-Apr-2013 09:58:42 GMT; path=/
X-Pingback:         http://blog.dp.cx/xmlrpc.php
Content-Type:       text/xml; charset=UTF-8
Last-Modified:      Sun, 29 Apr 2012 09:58:43 GMT
Vary:               Accept-Encoding, Cookie
Expires:            Sun, 29 Apr 2012 10:58:43 GMT
Pragma:             public
Cache-Control:      public, must-revalidate, proxy-revalidate
Etag:               7a8ddefbeab2968c4e05d8c31b84d7d4
X-Powered-By:       W3 Total Cache/0.9.2.4
Content-Encoding:   gzip
-->

