<?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:georss="http://www.georss.org/georss" xmlns:geo="http://www.w3.org/2003/01/geo/wgs84_pos#" xmlns:media="http://search.yahoo.com/mrss/"
	>

<channel>
	<title>The Uprooter</title>
	<atom:link href="http://flangganah.wordpress.com/feed/" rel="self" type="application/rss+xml" />
	<link>http://flangganah.wordpress.com</link>
	<description></description>
	<lastBuildDate>Thu, 22 Jul 2010 08:45:29 +0000</lastBuildDate>
	<language>en</language>
	<sy:updatePeriod>hourly</sy:updatePeriod>
	<sy:updateFrequency>1</sy:updateFrequency>
	<generator>http://wordpress.com/</generator>
<cloud domain='flangganah.wordpress.com' port='80' path='/?rsscloud=notify' registerProcedure='' protocol='http-post' />
<image>
		<url>http://s2.wp.com/i/buttonw-com.png</url>
		<title>The Uprooter</title>
		<link>http://flangganah.wordpress.com</link>
	</image>
	<atom:link rel="search" type="application/opensearchdescription+xml" href="http://flangganah.wordpress.com/osd.xml" title="The Uprooter" />
	<atom:link rel='hub' href='http://flangganah.wordpress.com/?pushpress=hub'/>
		<item>
		<title>Cobwebs</title>
		<link>http://flangganah.wordpress.com/2010/07/22/cobwebs/</link>
		<comments>http://flangganah.wordpress.com/2010/07/22/cobwebs/#comments</comments>
		<pubDate>Thu, 22 Jul 2010 08:42:34 +0000</pubDate>
		<dc:creator>amdg</dc:creator>
				<category><![CDATA[Meta]]></category>

		<guid isPermaLink="false">http://blog.tagabunot.com/?p=74</guid>
		<description><![CDATA[So I haven&#8217;t kept up with this blog, but I haven&#8217;t been offline completely. These days, most of my tinkering happens over at SDF, a public-access Unix system that&#8217;s pretty much one of the quieter, less commercialized corners of the web. I&#8217;ve also been toying with a static site blog generated using Jekyll there, but [...]<img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=flangganah.wordpress.com&amp;blog=1097407&amp;post=74&amp;subd=flangganah&amp;ref=&amp;feed=1" width="1" height="1" />]]></description>
			<content:encoded><![CDATA[<p>So I haven&#8217;t kept up with this blog, but I haven&#8217;t been offline completely.</p>
<p>These days, most of my tinkering happens over at <a href="http://sdf.org/">SDF</a>, a public-access Unix system that&#8217;s pretty much one of the quieter, less commercialized corners of the web.  I&#8217;ve also been toying with a <a href="http://nerfling.motd.org/">static site blog</a> generated using <a href="http://jekyllrb.com/">Jekyll</a> there, but I don&#8217;t know if I care to continue the experiment in handcrafting.  I have some basic web UI skills but designing my blog&#8217;s layout from scratch is not really my thing.</p>
<br />  <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gocomments/flangganah.wordpress.com/74/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/comments/flangganah.wordpress.com/74/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/godelicious/flangganah.wordpress.com/74/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/delicious/flangganah.wordpress.com/74/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gofacebook/flangganah.wordpress.com/74/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/facebook/flangganah.wordpress.com/74/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gotwitter/flangganah.wordpress.com/74/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/twitter/flangganah.wordpress.com/74/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gostumble/flangganah.wordpress.com/74/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/stumble/flangganah.wordpress.com/74/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/godigg/flangganah.wordpress.com/74/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/digg/flangganah.wordpress.com/74/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/goreddit/flangganah.wordpress.com/74/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/reddit/flangganah.wordpress.com/74/" /></a> <img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=flangganah.wordpress.com&amp;blog=1097407&amp;post=74&amp;subd=flangganah&amp;ref=&amp;feed=1" width="1" height="1" />]]></content:encoded>
			<wfw:commentRss>http://flangganah.wordpress.com/2010/07/22/cobwebs/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
	
		<media:content url="http://1.gravatar.com/avatar/f1a6700ad29df7cd20287410558bc81a?s=96&#38;d=identicon&#38;r=G" medium="image">
			<media:title type="html">amdg</media:title>
		</media:content>
	</item>
		<item>
		<title>Madwifi is incompatible with the ath9k kernel driver</title>
		<link>http://flangganah.wordpress.com/2008/12/02/madwifi-is-incompatible-with-the-ath9k-kernel-driver/</link>
		<comments>http://flangganah.wordpress.com/2008/12/02/madwifi-is-incompatible-with-the-ath9k-kernel-driver/#comments</comments>
		<pubDate>Tue, 02 Dec 2008 07:52:35 +0000</pubDate>
		<dc:creator>amdg</dc:creator>
				<category><![CDATA[Atheros]]></category>
		<category><![CDATA[Linux]]></category>
		<category><![CDATA[Wireless]]></category>

		<guid isPermaLink="false">http://flangganah.wordpress.com/?p=64</guid>
		<description><![CDATA[The ath9k driver was merged into Linux kernel 2.6.26. If you switch from the madwifi project to this new kernel driver, don&#8217;t forget to change your wireless driver settings from madwifi to wext too. If you&#8217;re using wpa_supplicant, for example, /etc/conf.d/net should now read: wpa_supplicant_wlan0="-Dwext" Otherwise, you will end up with the following errors: Dec [...]<img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=flangganah.wordpress.com&amp;blog=1097407&amp;post=64&amp;subd=flangganah&amp;ref=&amp;feed=1" width="1" height="1" />]]></description>
			<content:encoded><![CDATA[<p>The ath9k driver was merged into Linux kernel 2.6.26.  If you switch from the madwifi project to this new kernel driver, don&#8217;t forget to change your wireless driver settings from <code>madwifi</code> to <code>wext</code> too.  If you&#8217;re using <code>wpa_supplicant</code>, for example, <code>/etc/conf.d/net</code> should now read:</p>
<p><code>wpa_supplicant_wlan0="-Dwext"</code></p>
<p>Otherwise, you will end up with the following errors:</p>
<p><code>Dec  2 01:39:00 gentoo [  299.964138] wlan0: privacy configuration mismatch and mixed-cell disabled - disassociate<br />
Dec  2 01:39:00 gentoo [  299.965870] wlan0: mismatch in privacy configuration and mixed-cell disabled - abort association</code></p>
<br />  <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gocomments/flangganah.wordpress.com/64/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/comments/flangganah.wordpress.com/64/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/godelicious/flangganah.wordpress.com/64/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/delicious/flangganah.wordpress.com/64/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gofacebook/flangganah.wordpress.com/64/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/facebook/flangganah.wordpress.com/64/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gotwitter/flangganah.wordpress.com/64/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/twitter/flangganah.wordpress.com/64/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gostumble/flangganah.wordpress.com/64/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/stumble/flangganah.wordpress.com/64/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/godigg/flangganah.wordpress.com/64/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/digg/flangganah.wordpress.com/64/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/goreddit/flangganah.wordpress.com/64/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/reddit/flangganah.wordpress.com/64/" /></a> <img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=flangganah.wordpress.com&amp;blog=1097407&amp;post=64&amp;subd=flangganah&amp;ref=&amp;feed=1" width="1" height="1" />]]></content:encoded>
			<wfw:commentRss>http://flangganah.wordpress.com/2008/12/02/madwifi-is-incompatible-with-the-ath9k-kernel-driver/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
	
		<media:content url="http://1.gravatar.com/avatar/f1a6700ad29df7cd20287410558bc81a?s=96&#38;d=identicon&#38;r=G" medium="image">
			<media:title type="html">amdg</media:title>
		</media:content>
	</item>
		<item>
		<title>Open Sound System (OSS) 4.1 in Gentoo Linux</title>
		<link>http://flangganah.wordpress.com/2008/11/30/toshiba-satellite-m305d-working-microphone/</link>
		<comments>http://flangganah.wordpress.com/2008/11/30/toshiba-satellite-m305d-working-microphone/#comments</comments>
		<pubDate>Sun, 30 Nov 2008 10:41:50 +0000</pubDate>
		<dc:creator>amdg</dc:creator>
				<category><![CDATA[Gentoo]]></category>
		<category><![CDATA[Linux]]></category>
		<category><![CDATA[OSS]]></category>

		<guid isPermaLink="false">http://flangganah.wordpress.com/?p=55</guid>
		<description><![CDATA[I finally got the internal microphone on a Toshiba Satellite M305D-S4829 working.  Here's how I did it.<img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=flangganah.wordpress.com&amp;blog=1097407&amp;post=55&amp;subd=flangganah&amp;ref=&amp;feed=1" width="1" height="1" />]]></description>
			<content:encoded><![CDATA[<p><em>NOTE: This was originally entitled &#8220;How to get a working microphone on a Toshiba Satellite M305D-S4829.&#8221;  I have slightly updated the post title and introduction to better reflect the contents of the post.</em></p>
<p>In a nutshell, consider switching to OSS 4.1 if your sound card has a buggy ALSA driver.  My laptop has:</p>
<p><code>00:14.2 Audio devide: ATI Technologies Inc SBx00 Azalia (Intel HDA)</code></p>
<p>With the ALSA drivers, I could hear sound but I couldn&#8217;t get internal or external microphones to work.  After several hours of tinkering with ALSA, switching to OSS 4 was a relief!  With minimal setup, it fixed my microphone woes and incidentally gave me better sound quality.  I imagine (at least) all Intel HDA sound cards with Conexant Hermosa chipset would benefit from this approach.</p>
<p>Now, if you&#8217;ve poked into the sound card support in the kernel before, you might be wondering why a system marked with a huge DEPRECATED tag can have better support than the ALSA driver.  The history of OSS is a bit convoluted (see <a href="http://4front-tech.com/hannublog/?p=5">here</a> if you really want to know) but in short, the Linux kernel was frozen at OSS 3.8 when the OSS programmers decided to switch to a closed-source development model.  Several years and a failed attempt at commercialization later, OSS is back under a BSD license, with greatly improved features and code.</p>
<p>Here&#8217;s how to install it on Gentoo Linux:</p>
<p><strong>Kernel Configuration</strong></p>
<p>You MUST disable kernel level sound card support, or else the OSS modules will have trouble loading.</p>
<p><code>Device Drivers<br />
&lt; &gt; Sound card support</code></p>
<p>Rebuild your new kernel, reboot into it, then continue.</p>
<p><strong>OSS Installation</strong></p>
<p>If you&#8217;ve never set up an overlay before, follow <a href="http://www.gentoo.org/proj/en/overlays/userguide.xml">this guide</a> to install layman first.</p>
<p>Emerge mercurial:</p>
<p><code>$ sudo emerge -av mercurial</code></p>
<p>Grab the OSS overlay:</p>
<p><code>$ sudo layman -a oss-overlay</code></p>
<p>Emerge <code>media-sound/oss</code> or <code>media-sound/oss-devel</code> according to your preference.  The stable version is 4.0 while the development version is 4.1.</p>
<p>By default, the development version will pull from the mercurial repository, but you can change that by adding this line to <code>/etc/portage/package.mask</code>:</p>
<p><code>=media-sound/oss-devel-9999</code></p>
<p>If you are running the stable portage branch, you will definitely have to play with your keywords in <code>/etc/portage/package.keywords</code> to get everything to emerge.  I&#8217;m using unstable on my laptop so I&#8217;m not sure what exactly is masked.</p>
<p><b>Configuration</b></p>
<p>Once the packages have been emerged, configure OSS and run it:</p>
<p><code>$ sudo /usr/sbin/ossdetect<br />
$ sudo /usr/sbin/soundon</code></p>
<p>At this point you can use <code>osstest</code> to verify that your speakers are working properly, <code>ossrecord</code> and <code>ossplay</code> to test the microphone input, and <code>ossxmix</code> to set the mixer levels.  If all goes well, you can then add it to your default runlevel:</p>
<p><code>$ sudo rc-update add oss default</code></p>
<p>And that&#8217;s it.  Rebuild your audio programs with the <code>oss</code> USE flag if they don&#8217;t have it, and enjoy your fully working sound card.</p>
<br />  <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gocomments/flangganah.wordpress.com/55/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/comments/flangganah.wordpress.com/55/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/godelicious/flangganah.wordpress.com/55/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/delicious/flangganah.wordpress.com/55/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gofacebook/flangganah.wordpress.com/55/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/facebook/flangganah.wordpress.com/55/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gotwitter/flangganah.wordpress.com/55/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/twitter/flangganah.wordpress.com/55/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gostumble/flangganah.wordpress.com/55/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/stumble/flangganah.wordpress.com/55/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/godigg/flangganah.wordpress.com/55/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/digg/flangganah.wordpress.com/55/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/goreddit/flangganah.wordpress.com/55/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/reddit/flangganah.wordpress.com/55/" /></a> <img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=flangganah.wordpress.com&amp;blog=1097407&amp;post=55&amp;subd=flangganah&amp;ref=&amp;feed=1" width="1" height="1" />]]></content:encoded>
			<wfw:commentRss>http://flangganah.wordpress.com/2008/11/30/toshiba-satellite-m305d-working-microphone/feed/</wfw:commentRss>
		<slash:comments>3</slash:comments>
	
		<media:content url="http://1.gravatar.com/avatar/f1a6700ad29df7cd20287410558bc81a?s=96&#38;d=identicon&#38;r=G" medium="image">
			<media:title type="html">amdg</media:title>
		</media:content>
	</item>
		<item>
		<title>VirtualBox Guest Additions, the Gentoo Way</title>
		<link>http://flangganah.wordpress.com/2008/10/29/virtualbox-guest-additions-the-gentoo-way/</link>
		<comments>http://flangganah.wordpress.com/2008/10/29/virtualbox-guest-additions-the-gentoo-way/#comments</comments>
		<pubDate>Wed, 29 Oct 2008 03:18:32 +0000</pubDate>
		<dc:creator>amdg</dc:creator>
				<category><![CDATA[Linux]]></category>
		<category><![CDATA[Virtualization]]></category>

		<guid isPermaLink="false">http://flangganah.wordpress.com/?p=20</guid>
		<description><![CDATA[It is possible to install VirtualBox guest additions through portage. Add the following lines to /etc/portage/package.keywords: &#62;=dev-util/kbuild-0.1.4 =app-emulation/virtualbox-guest-additions-2.0.2 =x11-drivers/xf86-input-virtualbox-2.0.2 =x11-drivers/xf86-video-virtualbox-2.0.2 Emerge the kernel sources. $ sudo emerge gentoo-sources Configure and build the kernel. The exact steps are outside the scope of this post but you could follow the configuration settings here. (Installing the kernel created [...]<img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=flangganah.wordpress.com&amp;blog=1097407&amp;post=20&amp;subd=flangganah&amp;ref=&amp;feed=1" width="1" height="1" />]]></description>
			<content:encoded><![CDATA[<p>It is possible to install VirtualBox guest additions through portage.</p>
<ol>
<li>Add the following lines to <code>/etc/portage/package.keywords</code>:<br />
<blockquote><p><code>&gt;=dev-util/kbuild-0.1.4<br />
=app-emulation/virtualbox-guest-additions-2.0.2<br />
=x11-drivers/xf86-input-virtualbox-2.0.2<br />
=x11-drivers/xf86-video-virtualbox-2.0.2</code></p></blockquote>
</li>
<li>Emerge the kernel sources.<br />
<blockquote><p><code>$ sudo emerge gentoo-sources</code></p></blockquote>
</li>
<li>Configure and build the kernel. The exact steps are outside the scope of this post but you could follow the configuration settings <a href="http://www.softerblue.com/?p=15">here</a>. (Installing the kernel created by this step is optional.  You only have to execute <code>make</code>.)</li>
<li>Emerge the guest additions.<br />
<blockquote><p><code>$ sudo emerge virtualbox-guest-additions xf86-input-virtualbox xf86-video-virtualbox</code></p></blockquote>
</li>
<li>Add virtualbox-guest-additions to the default runlevel.<br />
<blockquote><p><code>$ sudo rc-update add virtualbox-guest-additions default</code></p></blockquote>
</li>
<li>Reboot (or run <code>/etc/init.d/virtualbox-guest-additions start</code>) to get things working.</li>
</ol>
<br />  <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gocomments/flangganah.wordpress.com/20/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/comments/flangganah.wordpress.com/20/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/godelicious/flangganah.wordpress.com/20/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/delicious/flangganah.wordpress.com/20/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gofacebook/flangganah.wordpress.com/20/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/facebook/flangganah.wordpress.com/20/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gotwitter/flangganah.wordpress.com/20/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/twitter/flangganah.wordpress.com/20/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gostumble/flangganah.wordpress.com/20/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/stumble/flangganah.wordpress.com/20/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/godigg/flangganah.wordpress.com/20/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/digg/flangganah.wordpress.com/20/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/goreddit/flangganah.wordpress.com/20/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/reddit/flangganah.wordpress.com/20/" /></a> <img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=flangganah.wordpress.com&amp;blog=1097407&amp;post=20&amp;subd=flangganah&amp;ref=&amp;feed=1" width="1" height="1" />]]></content:encoded>
			<wfw:commentRss>http://flangganah.wordpress.com/2008/10/29/virtualbox-guest-additions-the-gentoo-way/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
	
		<media:content url="http://1.gravatar.com/avatar/f1a6700ad29df7cd20287410558bc81a?s=96&#38;d=identicon&#38;r=G" medium="image">
			<media:title type="html">amdg</media:title>
		</media:content>
	</item>
		<item>
		<title>Nifty PHP Functions of the Day</title>
		<link>http://flangganah.wordpress.com/2008/10/22/nifty-php-functions-of-the-day/</link>
		<comments>http://flangganah.wordpress.com/2008/10/22/nifty-php-functions-of-the-day/#comments</comments>
		<pubDate>Wed, 22 Oct 2008 08:57:48 +0000</pubDate>
		<dc:creator>amdg</dc:creator>
				<category><![CDATA[PHP]]></category>

		<guid isPermaLink="false">http://fsterchronicles.wordpress.com/2008/10/22/obscure-but-useful-php-functions/</guid>
		<description><![CDATA[php_strip_whitespace() – strips whitespace and comments from PHP code token_get_all() – parses code into PHP language tokens using the internal Zend lexical scanner (but see this post for certain limitations)<img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=flangganah.wordpress.com&amp;blog=1097407&amp;post=39&amp;subd=flangganah&amp;ref=&amp;feed=1" width="1" height="1" />]]></description>
			<content:encoded><![CDATA[<ul>
<li><a href="http://us.php.net/manual/en/function.php-strip-whitespace.php">php_strip_whitespace()</a> – strips whitespace and comments from PHP code</li>
<li><a href="http://us.php.net/manual/en/function.token-get-all.php">token_get_all()</a> – parses code into PHP language tokens using the internal Zend lexical scanner (but see <a href="http://www.antlr.org:8080/pipermail/antlr-interest/2008-March/027096.html">this post</a> for certain limitations)</li>
</ul>
<br />  <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gocomments/flangganah.wordpress.com/39/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/comments/flangganah.wordpress.com/39/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/godelicious/flangganah.wordpress.com/39/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/delicious/flangganah.wordpress.com/39/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gofacebook/flangganah.wordpress.com/39/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/facebook/flangganah.wordpress.com/39/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gotwitter/flangganah.wordpress.com/39/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/twitter/flangganah.wordpress.com/39/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gostumble/flangganah.wordpress.com/39/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/stumble/flangganah.wordpress.com/39/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/godigg/flangganah.wordpress.com/39/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/digg/flangganah.wordpress.com/39/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/goreddit/flangganah.wordpress.com/39/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/reddit/flangganah.wordpress.com/39/" /></a> <img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=flangganah.wordpress.com&amp;blog=1097407&amp;post=39&amp;subd=flangganah&amp;ref=&amp;feed=1" width="1" height="1" />]]></content:encoded>
			<wfw:commentRss>http://flangganah.wordpress.com/2008/10/22/nifty-php-functions-of-the-day/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
	
		<media:content url="http://1.gravatar.com/avatar/f1a6700ad29df7cd20287410558bc81a?s=96&#38;d=identicon&#38;r=G" medium="image">
			<media:title type="html">amdg</media:title>
		</media:content>
	</item>
		<item>
		<title>Adventures in PHP Language Parsing</title>
		<link>http://flangganah.wordpress.com/2008/10/22/adventures-in-php-language-parsing/</link>
		<comments>http://flangganah.wordpress.com/2008/10/22/adventures-in-php-language-parsing/#comments</comments>
		<pubDate>Wed, 22 Oct 2008 07:21:22 +0000</pubDate>
		<dc:creator>amdg</dc:creator>
				<category><![CDATA[Performance]]></category>
		<category><![CDATA[PHP]]></category>

		<guid isPermaLink="false">http://fsterchronicles.wordpress.com/2008/10/22/adventures-in-php-language-parsing/</guid>
		<description><![CDATA[It was supposed to be simple. I wanted to find a PHP parser to help me pinpoint unused XSL resources. After eight hours of tinkering I have discovered that: phpParseTree, which seemed to be the closest fit to what I want, is unfortunately buggy and unmaintained.&#160; The Windows DLL kept complaining about unexpected T_DOC_COMMENT tokens; [...]<img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=flangganah.wordpress.com&amp;blog=1097407&amp;post=38&amp;subd=flangganah&amp;ref=&amp;feed=1" width="1" height="1" />]]></description>
			<content:encoded><![CDATA[<p>It was supposed to be simple. I wanted to find a PHP parser to help me pinpoint unused XSL resources.</p>
<p>After eight hours of tinkering I have discovered that:</p>
<ul>
<li><a href="http://pecl.php.net/package/Parse_Tree">phpParseTree</a>, which seemed to be the closest fit to what I want, is unfortunately buggy and unmaintained.&#160; The Windows DLL kept complaining about unexpected T_DOC_COMMENT tokens; the Linux version I built from source experienced segmentation faults and memory corruption.&#160; It seems to work well enough on simple PHP examples, but I need something more robust for our codebase. </li>
<li><a href="http://code.google.com/p/yaxx/">YAXX</a>, the <a href="http://www.gnu.org/software/bison/">bison</a> extension which phpParseTree uses as a base, is also unmaintained.&#160; I tried using it with both the latest and the recommended versions of bison, but I kept getting this error:<br />
<blockquote><code>zend_language_parser.y: fatal error: invalid token in skeleton: @output @output_parser_name@</code></p></blockquote>
</li>
<li><a href="http://www.icosaedro.it/phplint/index.html">PHPLint</a> would be more useful if it didn’t have <a href="http://www.icosaedro.it/phplint/tutorial.html">special formatting requirements</a>. </li>
<li><a href="http://www.phpunit.de/">PHPUnit</a> has nifty support for various code metrics in later versions. We need to upgrade. </li>
<li><a href="http://trac2.assembla.com/php-ast">php-ast</a> looked promising, but it was only available through its subversion repository.&#160; Building that from source is more of a fuss than I can be bothered with at the moment. </li>
<li>There are many other alternatives for lexing and parsing out there, each with its own quirks and limitations.&#160; I’ve checked out <a href="http://www.antlr.org/">ANTLR</a>, <a href="http://i.loveruby.net/en/projects/racc/">racc</a>, <a href="http://www.complang.org/ragel/">ragel</a>, <a href="http://treetop.rubyforge.org/">Treetop</a>, and even <a href="http://www.faqs.org/docs/Linux-HOWTO/Lex-YACC-HOWTO.html">the classic lex and yacc combination</a>.&#160; I might go back to play with Treetop when I have the time.</li>
<li>Windows is a terrible platform for working with things that need to be built from source.&#160; Then again, I already knew that.</li>
</ul>
<p>Next candidate: <a href="http://www.phpcompiler.org/index.html">phc</a>, billed as an open source PHP compiler.&#160; More as soon as I manage to get it working.</p>
<br />  <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gocomments/flangganah.wordpress.com/38/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/comments/flangganah.wordpress.com/38/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/godelicious/flangganah.wordpress.com/38/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/delicious/flangganah.wordpress.com/38/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gofacebook/flangganah.wordpress.com/38/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/facebook/flangganah.wordpress.com/38/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gotwitter/flangganah.wordpress.com/38/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/twitter/flangganah.wordpress.com/38/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gostumble/flangganah.wordpress.com/38/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/stumble/flangganah.wordpress.com/38/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/godigg/flangganah.wordpress.com/38/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/digg/flangganah.wordpress.com/38/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/goreddit/flangganah.wordpress.com/38/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/reddit/flangganah.wordpress.com/38/" /></a> <img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=flangganah.wordpress.com&amp;blog=1097407&amp;post=38&amp;subd=flangganah&amp;ref=&amp;feed=1" width="1" height="1" />]]></content:encoded>
			<wfw:commentRss>http://flangganah.wordpress.com/2008/10/22/adventures-in-php-language-parsing/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
	
		<media:content url="http://1.gravatar.com/avatar/f1a6700ad29df7cd20287410558bc81a?s=96&#38;d=identicon&#38;r=G" medium="image">
			<media:title type="html">amdg</media:title>
		</media:content>
	</item>
		<item>
		<title>BASH Redirection Cheat Sheet</title>
		<link>http://flangganah.wordpress.com/2008/10/16/redirection-and-process-substitution/</link>
		<comments>http://flangganah.wordpress.com/2008/10/16/redirection-and-process-substitution/#comments</comments>
		<pubDate>Thu, 16 Oct 2008 07:28:50 +0000</pubDate>
		<dc:creator>amdg</dc:creator>
				<category><![CDATA[Command Line]]></category>

		<guid isPermaLink="false">http://fsterchronicles.wordpress.com/?p=26</guid>
		<description><![CDATA[Operator Effect &#62; redirect standard output into a file, overwriting existing content &#62;&#62; redirect standard output into a file, appending to existing content &#60; redirect contents of file into a command &#38;&#62; redirect standard output and standard error into a file Reference: Redirection and Process Substitution at SS64.com<img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=flangganah.wordpress.com&amp;blog=1097407&amp;post=26&amp;subd=flangganah&amp;ref=&amp;feed=1" width="1" height="1" />]]></description>
			<content:encoded><![CDATA[<table cellspacing="0" cellpadding="2" width="400" border="0">
<tbody>
<tr>
<th>Operator</th>
<th valign="top" width="200">Effect</th>
</tr>
<tr>
<td>&gt;</td>
<td>redirect standard output into a file, overwriting existing content</td>
</tr>
<tr>
<td>&gt;&gt; </td>
<td>redirect standard output into a file, appending to existing content</td>
</tr>
<tr>
<td>&lt;</td>
<td>redirect contents of file into a command</td>
</tr>
<tr>
<td>&amp;&gt;</td>
<td>redirect standard output and standard error into a file</td>
</tr>
</tbody>
</table>
<p><strong>Reference:</strong> <a title="http://www.ss64.com/bash/syntax-redirection.html" href="http://www.ss64.com/bash/syntax-redirection.html">Redirection and Process Substitution</a> at SS64.com</p>
<br />  <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gocomments/flangganah.wordpress.com/26/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/comments/flangganah.wordpress.com/26/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/godelicious/flangganah.wordpress.com/26/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/delicious/flangganah.wordpress.com/26/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gofacebook/flangganah.wordpress.com/26/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/facebook/flangganah.wordpress.com/26/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gotwitter/flangganah.wordpress.com/26/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/twitter/flangganah.wordpress.com/26/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gostumble/flangganah.wordpress.com/26/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/stumble/flangganah.wordpress.com/26/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/godigg/flangganah.wordpress.com/26/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/digg/flangganah.wordpress.com/26/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/goreddit/flangganah.wordpress.com/26/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/reddit/flangganah.wordpress.com/26/" /></a> <img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=flangganah.wordpress.com&amp;blog=1097407&amp;post=26&amp;subd=flangganah&amp;ref=&amp;feed=1" width="1" height="1" />]]></content:encoded>
			<wfw:commentRss>http://flangganah.wordpress.com/2008/10/16/redirection-and-process-substitution/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
	
		<media:content url="http://1.gravatar.com/avatar/f1a6700ad29df7cd20287410558bc81a?s=96&#38;d=identicon&#38;r=G" medium="image">
			<media:title type="html">amdg</media:title>
		</media:content>
	</item>
		<item>
		<title>Manually Installing Ruby in Windows Vista</title>
		<link>http://flangganah.wordpress.com/2008/10/02/manually-installing-ruby-in-windows/</link>
		<comments>http://flangganah.wordpress.com/2008/10/02/manually-installing-ruby-in-windows/#comments</comments>
		<pubDate>Thu, 02 Oct 2008 09:11:20 +0000</pubDate>
		<dc:creator>amdg</dc:creator>
				<category><![CDATA[Ruby]]></category>
		<category><![CDATA[Windows Vista]]></category>

		<guid isPermaLink="false">http://flangganah.wordpress.com/2008/10/02/manually-installing-ruby-in-windows/</guid>
		<description><![CDATA[Follow these steps to install versions not supported by the one-click installer. Download the version you want at the official Ruby website.&#160; Make sure to select a Windows binary archive, not a source code archive. Extract the contents of the archive to the directory of your choice (e.g. c:\ruby). Add the Ruby binaries to your [...]<img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=flangganah.wordpress.com&amp;blog=1097407&amp;post=12&amp;subd=flangganah&amp;ref=&amp;feed=1" width="1" height="1" />]]></description>
			<content:encoded><![CDATA[<p>Follow these steps to install versions not supported by the <a href="http://rubyinstaller.rubyforge.org/wiki/wiki.pl">one-click installer</a>.</p>
<ol>
<li>Download the version you want at the <a href="http://www.ruby-lang.org/en/downloads/">official Ruby website</a>.&#160; Make sure to select a Windows binary archive, not a source code archive. </li>
<li>Extract the contents of the archive to the directory of your choice (e.g. c:\ruby). </li>
<li>Add the Ruby binaries to your system path.&#160; In Windows Vista, open the <strong>Start Menu</strong>, right-click <strong>Computer</strong>, then select <strong>Properties &gt; Advanced System Settings &gt; Environment Variables</strong>.&#160; Append <code>;c:\ruby\bin</code> to the <code>PATH</code> system variable. (If you extracted Ruby to a different location, modify your entry accordingly.) </li>
<li>Click <strong>OK</strong> to save your settings. </li>
<li>Get <a title="http://www.zlib.net/zlib123-dll.zip" href="http://www.zlib.net/zlib123-dll.zip">http://www.zlib.net/zlib123-dll.zip</a>.&#160;&#160; <br />Extract zlib1.dll to your Ruby installation’s bin directory, then rename it to zlib.dll. </li>
<li>Get version 1.2.0 of <a href="http://rubyforge.org/frs/?group_id=126">RubyGems</a> (1.3.0 doesn’t work on Windows as of this writing).&#160; Make sure to select one of the source archives, not the update gem. </li>
<li>Extract the contents of the archive to a temporary directory, then run <code>setup.rb</code>. </li>
<li>Go back to the Environment Variables tab in step 3.&#160; Create a new system variable called <code>RUBYOPT</code> and set its value to <code>–rubygems</code>. </li>
<li>Open a command prompt window and run <code>gem install rake</code>. </li>
</ol>
<p>You should now have a working installation of your desired version of Ruby.</p>
<br />  <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gocomments/flangganah.wordpress.com/12/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/comments/flangganah.wordpress.com/12/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/godelicious/flangganah.wordpress.com/12/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/delicious/flangganah.wordpress.com/12/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gofacebook/flangganah.wordpress.com/12/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/facebook/flangganah.wordpress.com/12/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gotwitter/flangganah.wordpress.com/12/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/twitter/flangganah.wordpress.com/12/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gostumble/flangganah.wordpress.com/12/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/stumble/flangganah.wordpress.com/12/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/godigg/flangganah.wordpress.com/12/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/digg/flangganah.wordpress.com/12/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/goreddit/flangganah.wordpress.com/12/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/reddit/flangganah.wordpress.com/12/" /></a> <img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=flangganah.wordpress.com&amp;blog=1097407&amp;post=12&amp;subd=flangganah&amp;ref=&amp;feed=1" width="1" height="1" />]]></content:encoded>
			<wfw:commentRss>http://flangganah.wordpress.com/2008/10/02/manually-installing-ruby-in-windows/feed/</wfw:commentRss>
		<slash:comments>3</slash:comments>
	
		<media:content url="http://1.gravatar.com/avatar/f1a6700ad29df7cd20287410558bc81a?s=96&#38;d=identicon&#38;r=G" medium="image">
			<media:title type="html">amdg</media:title>
		</media:content>
	</item>
		<item>
		<title>Gentoo in Sun VirtualBox: Post-Installation</title>
		<link>http://flangganah.wordpress.com/2008/07/10/gentoo-guest-os-in-sun-virtualbox-post-installation/</link>
		<comments>http://flangganah.wordpress.com/2008/07/10/gentoo-guest-os-in-sun-virtualbox-post-installation/#comments</comments>
		<pubDate>Thu, 10 Jul 2008 17:02:40 +0000</pubDate>
		<dc:creator>amdg</dc:creator>
				<category><![CDATA[Linux]]></category>
		<category><![CDATA[Virtualization]]></category>

		<guid isPermaLink="false">http://flangganah.wordpress.com/2008/07/10/gentoo-guest-os-in-sun-virtualbox-post-installation/</guid>
		<description><![CDATA[I installed Gentoo 2008.0 using the GUI installer without a hitch, but a few issues surfaced after reboot. Networking is disabled The appropriate network module is not loaded by default. To fix this for the current session, execute modprobe pcnet32. Add pcnet32 to /etc/modules.autoload.d/kernel-2.6 to load it automatically at startup. This page outlines a different [...]<img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=flangganah.wordpress.com&amp;blog=1097407&amp;post=9&amp;subd=flangganah&amp;ref=&amp;feed=1" width="1" height="1" />]]></description>
			<content:encoded><![CDATA[<p>I installed Gentoo 2008.0 using the GUI installer without a hitch, but a few issues surfaced after reboot.</p>
<p><strong>Networking is disabled</strong></p>
<p>The appropriate network module is not loaded by default. To fix this for the current session, execute <code>modprobe pcnet32</code>. Add <code>pcnet32</code> to <code>/etc/modules.autoload.d/kernel-2.6</code> to load it automatically at startup.</p>
<p><a href="http://www.softerblue.com/?p=15">This page</a> outlines a different fix, which involves building a custom kernel. Unfortunately, doing this after the GUI installation causes the following problem.</p>
<p><strong>Block device names change mysteriously</strong></p>
<p>Even with the virtual SATA controller disabled, the kernel generated by genkernel named my block devices <code>/dev/sda</code> and <code>/dev/sdb</code>. I still don&#8217;t know why this happens, or why the custom kernel produced by the HOWTO above names them <code>/dev/hda</code> and <code>/dev/hdb</code>.</p>
<p>It was easy enough to deal with GRUB configuration, but the fstab entries posed a problem. <a href="http://forums.gentoo.org/viewtopic-t-698267.html">One solution</a> is to use labels instead of block device names in fstab to find the partitions.</p>
<p>First, apply a unique label to all partitions referenced in <code>/etc/fstab</code>:</p>
<ul>
<li>For ext2 and ext3 partitions, use <code>e2label &lt;device&gt; &lt;label&gt;</code>.</li>
<li>For swap partitions, use <code>mkswap -L &lt;label&gt; &lt;device&gt;</code>. Turn off the partition first with <code>swapoff &lt;device&gt;</code> if necessary.</li>
</ul>
<p>Use <code>blkid</code> to confirm that the labels are set correctly:</p>
<p><code>$ sudo /sbin/blkid<br />
/dev/hda1: LABEL="boot" UUID="8a9ce81b-4fdd-4861-8d5c-215bbcabe47e" TYPE="ext2"<br />
/dev/hda2: TYPE="swap" LABEL="swap" UUID="90a15ec6-1d7c-434a-a037-40c2408a5b65"<br />
/dev/hda3: LABEL="root" UUID="29e918dd-1307-4758-9bdf-b3984dbafeb1" SEC_TYPE="ext2" TYPE="ext3"<br />
/dev/hdb1: LABEL="home" UUID="cbbf5a7c-9626-4349-920a-d96e2ebf0e78" SEC_TYPE="ext2" TYPE="ext3"</code></p>
<p>Now edit <code>/etc/fstab</code> to use (for example) <code>LABEL=root</code> instead of <code>/dev/hda3</code>.</p>
<p>The system should be able to find the partitions no matter what the kernel decides to name them. I kept the generic kernel beside the custom kernel since I also hoped to build a <a href="http://gentoo-wiki.com/HOWTO_Custom_Stage4">stage4</a> for another PC.</p>
<p><strong>Xorg doesn&#8217;t work</strong></p>
<p><a href="2008/10/29/virtualbox-guest-additions-the-gentoo-way/">Installing the VirtualBox guest additions</a> fixed this.</p>
<br /><img alt="" border="0" src="http://feeds.wordpress.com/1.0/categories/flangganah.wordpress.com/9/" /> <img alt="" border="0" src="http://feeds.wordpress.com/1.0/tags/flangganah.wordpress.com/9/" /> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gocomments/flangganah.wordpress.com/9/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/comments/flangganah.wordpress.com/9/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/godelicious/flangganah.wordpress.com/9/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/delicious/flangganah.wordpress.com/9/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gofacebook/flangganah.wordpress.com/9/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/facebook/flangganah.wordpress.com/9/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gotwitter/flangganah.wordpress.com/9/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/twitter/flangganah.wordpress.com/9/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gostumble/flangganah.wordpress.com/9/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/stumble/flangganah.wordpress.com/9/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/godigg/flangganah.wordpress.com/9/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/digg/flangganah.wordpress.com/9/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/goreddit/flangganah.wordpress.com/9/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/reddit/flangganah.wordpress.com/9/" /></a> <img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=flangganah.wordpress.com&amp;blog=1097407&amp;post=9&amp;subd=flangganah&amp;ref=&amp;feed=1" width="1" height="1" />]]></content:encoded>
			<wfw:commentRss>http://flangganah.wordpress.com/2008/07/10/gentoo-guest-os-in-sun-virtualbox-post-installation/feed/</wfw:commentRss>
		<slash:comments>3</slash:comments>
	
		<media:content url="http://1.gravatar.com/avatar/f1a6700ad29df7cd20287410558bc81a?s=96&#38;d=identicon&#38;r=G" medium="image">
			<media:title type="html">amdg</media:title>
		</media:content>
	</item>
		<item>
		<title>The Law of Demeter</title>
		<link>http://flangganah.wordpress.com/2007/06/14/the-law-of-demeter/</link>
		<comments>http://flangganah.wordpress.com/2007/06/14/the-law-of-demeter/#comments</comments>
		<pubDate>Thu, 14 Jun 2007 07:01:07 +0000</pubDate>
		<dc:creator>amdg</dc:creator>
				<category><![CDATA[Ruby]]></category>

		<guid isPermaLink="false">http://flangganah.wordpress.com/2007/06/14/the-law-of-demeter/</guid>
		<description><![CDATA[You can play with yourself. You can play with your own toys (but you can&#8217;t take them apart). You can play with toys that were given to you. And you can play with toys you&#8217;ve made yourself. Fortunately, Ruby&#8217;s standard libraries include a library to quickly define delegations.<img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=flangganah.wordpress.com&amp;blog=1097407&amp;post=3&amp;subd=flangganah&amp;ref=&amp;feed=1" width="1" height="1" />]]></description>
			<content:encoded><![CDATA[<ul>
<li>You can play with yourself. </li>
<li>You can play with your own toys (but you can&#8217;t take them apart). </li>
<li>You can play with toys that were given to you. </li>
<li>And you can play with toys you&#8217;ve made yourself. </li>
</ul>
<p>Fortunately, Ruby&#8217;s standard libraries include <a href="http://rubygarden.org/Ruby/page/show/LawOfDemeterInRuby">a library to quickly define delegations</a>.</p>
<br /><img alt="" border="0" src="http://feeds.wordpress.com/1.0/categories/flangganah.wordpress.com/3/" /> <img alt="" border="0" src="http://feeds.wordpress.com/1.0/tags/flangganah.wordpress.com/3/" /> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gocomments/flangganah.wordpress.com/3/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/comments/flangganah.wordpress.com/3/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/godelicious/flangganah.wordpress.com/3/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/delicious/flangganah.wordpress.com/3/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gofacebook/flangganah.wordpress.com/3/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/facebook/flangganah.wordpress.com/3/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gotwitter/flangganah.wordpress.com/3/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/twitter/flangganah.wordpress.com/3/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gostumble/flangganah.wordpress.com/3/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/stumble/flangganah.wordpress.com/3/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/godigg/flangganah.wordpress.com/3/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/digg/flangganah.wordpress.com/3/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/goreddit/flangganah.wordpress.com/3/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/reddit/flangganah.wordpress.com/3/" /></a> <img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=flangganah.wordpress.com&amp;blog=1097407&amp;post=3&amp;subd=flangganah&amp;ref=&amp;feed=1" width="1" height="1" />]]></content:encoded>
			<wfw:commentRss>http://flangganah.wordpress.com/2007/06/14/the-law-of-demeter/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
	
		<media:content url="http://1.gravatar.com/avatar/f1a6700ad29df7cd20287410558bc81a?s=96&#38;d=identicon&#38;r=G" medium="image">
			<media:title type="html">amdg</media:title>
		</media:content>
	</item>
	</channel>
</rss>
