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

<channel>
	<title>chip the glasses &#187; open source technology</title>
	<atom:link href="http://chiptheglasses.com/category/open-source-technology/feed/" rel="self" type="application/rss+xml" />
	<link>http://chiptheglasses.com</link>
	<description>a garden of forking libraries of babel</description>
	<lastBuildDate>Wed, 11 Aug 2010 14:58:30 +0000</lastBuildDate>
	<language>en</language>
	<sy:updatePeriod>hourly</sy:updatePeriod>
	<sy:updateFrequency>1</sy:updateFrequency>
	<generator>http://wordpress.org/?v=3.0.1</generator>
		<item>
		<title>shakesbot: a shakespeare play performer for twitter</title>
		<link>http://chiptheglasses.com/2010/05/shakesbot-a-shakespeare-play-performer-for-twitter/</link>
		<comments>http://chiptheglasses.com/2010/05/shakesbot-a-shakespeare-play-performer-for-twitter/#comments</comments>
		<pubDate>Sat, 01 May 2010 18:10:45 +0000</pubDate>
		<dc:creator>nathanielksmith</dc:creator>
				<category><![CDATA[art]]></category>
		<category><![CDATA[open source technology]]></category>
		<category><![CDATA[drama]]></category>
		<category><![CDATA[open source]]></category>
		<category><![CDATA[plays]]></category>
		<category><![CDATA[robots]]></category>
		<category><![CDATA[ruby]]></category>
		<category><![CDATA[shakespeare]]></category>
		<category><![CDATA[twitter]]></category>

		<guid isPermaLink="false">http://chiptheglasses.com/?p=190</guid>
		<description><![CDATA[the shakesbot I came across this collection by chance recently. I noticed that the HTML used for each play was clean and well structured, so I thought I&#8217;d write a twitter bot to perform them. I&#8217;ve been waiting for a chance to learn Ruby, too, so I thought I&#8217;d use this as an excuse. features [...]]]></description>
			<content:encoded><![CDATA[<p><a href="http://twitter.com/shakesbot">the shakesbot</a></p>
<p>I came across <a href="http://shakespeare.mit.edu/">this collection</a> by chance recently. I noticed that the HTML used for each play was clean and well structured, so I thought I&#8217;d write a twitter bot to perform them. I&#8217;ve been waiting for a chance to learn Ruby, too, so I thought I&#8217;d use this as an excuse.</p>
<div id="attachment_192" class="wp-caption aligncenter" style="width: 577px"><a href="http://chiptheglasses.com/wp-content/uploads/2010/05/shakesbot.png"><img src="http://chiptheglasses.com/wp-content/uploads/2010/05/shakesbot.png" alt="screenshot of shakesbot" title="shakesbot" width="567" height="408" class="size-full wp-image-192" /></a><p class="wp-caption-text">The Tragedy of Hamlet, Prince of Denmark</p></div>
<h3>features</h3>
<ul>
<li>parses MIT shakespeare plays</li>
<li>can handle an over-capacity twitter</li>
<li>specify tweet interval, rehearsal (dry-run) mode</li>
<li>authenticates to Twitter using the <a href="http://github.com/moomerman/twitter_oauth">twitter_oauth</a> gem</li>
</ul>
<h3>installation</h3>
<p>it&#8217;s just source code for now as it&#8217;s not really useful outside of my one twitter account. However, it could provide a basis for a more general structured-play reader/tweeter, so in the future it may be a releasable tool.</p>
<p>For now, check out the source on <a href="http://github.com/nathanielksmith/shakesbot">github</a>.</p>
<h3>thanks to</h3>
<ul>
<li><a href="http://www.mit.edu/">MIT</a>, for having nicely parse-able plays</li>
<li><a href="http://github.com/mirhampt">mirhampt</a> for getting excited about ruby with me</li>
<li><a href="http://twitter.com">twitter</a> for trying its best to make the oauth conversion less annoying for one-off twitter toy writers like myself</li>
</ul>
]]></content:encoded>
			<wfw:commentRss>http://chiptheglasses.com/2010/05/shakesbot-a-shakespeare-play-performer-for-twitter/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>done: a minimal command line todo list tool</title>
		<link>http://chiptheglasses.com/2010/04/done-a-minimal-command-line-todo-list-tool/</link>
		<comments>http://chiptheglasses.com/2010/04/done-a-minimal-command-line-todo-list-tool/#comments</comments>
		<pubDate>Tue, 06 Apr 2010 01:54:13 +0000</pubDate>
		<dc:creator>nathanielksmith</dc:creator>
				<category><![CDATA[open source technology]]></category>
		<category><![CDATA[command line]]></category>
		<category><![CDATA[done]]></category>
		<category><![CDATA[gtd]]></category>
		<category><![CDATA[linux]]></category>
		<category><![CDATA[open source]]></category>
		<category><![CDATA[python]]></category>
		<category><![CDATA[terminal]]></category>
		<category><![CDATA[todo]]></category>

		<guid isPermaLink="false">http://chiptheglasses.com/?p=182</guid>
		<description><![CDATA[Having tried todo.sh, ikog, and a plain text file I was frustrated with my options for todo list management from the command line. Daily I use timebook for time tracking at work and wanted something similar to manage my todo list. I chose this opportunity to write my own todo list and learn Haskell doing [...]]]></description>
			<content:encoded><![CDATA[<p>Having tried <a href="http://ginatrapani.github.com/todo.txt-cli/">todo.sh</a>, <a href="http://www.henspace.co.uk/ikog/index.html">ikog</a>, and a plain text file I was frustrated with my options for todo list management from the command line. Daily I use <a href="http://pypi.python.org/pypi/timebook/1.1.0">timebook</a> for time tracking at work and wanted something similar to manage my todo list.</p>
<p>I chose this opportunity to write my own todo list and learn Haskell doing it. I managed to produce something basically usable but it didn&#8217;t support due dates and wasn&#8217;t scaling too well. I had grown dependent on the tool, though, so instead of waiting till my Haskell improved I just rewrote it in Python.</p>
<p>Thus, I present done.</p>
<h3>features</h3>
<ul>
<li>natural date parsing (eg. &#8216;tomorrow&#8217;, &#8216;in 2 days&#8217;) for due dates</li>
<li>color-coded due dates (items go from green to red as due date approaches)</li>
<li>tagging</li>
<li>hardly any footprint: minimal in design and in implementation</li>
</ul>
<h3>screenshot</h3>
<div id="attachment_184" class="wp-caption aligncenter" style="width: 478px"><a href="http://chiptheglasses.com/wp-content/uploads/2010/04/done.png"><img src="http://chiptheglasses.com/wp-content/uploads/2010/04/done.png" alt="screenshot of the done tool" title="done in action" width="468" height="523" class="size-full wp-image-184" /></a><p class="wp-caption-text">done in action</p></div>
<h3>installation</h3>
<p>to try out done, you can do:</p>
<p><code>sudo pip install done</code></p>
<p>or <a href="http://pypi.python.org/pypi/done/1.0.3">download it from PyPi</a> and run </p>
<p><code>sudo python setup.py install</code></p>
<p>In both instances, you need setuptools (python-setuptools in the debian repo).</p>
<h3>thanks to</h3>
<ul>
<li>the <a href="http://code.google.com/p/parsedatetime/">parsedatetime</a> library</li>
<li><a href="http://bitbucket.org/mirhampt/sql_interp/">SQLInterp</a> for Python</li>
<li><a href="http://pypi.python.org/pypi/termcolor">termcolor</a></li>
</ul>
<h3>feedback</h3>
<p>I&#8217;d love to hear what you think. Leave a comment or open an issue <a href="http://www.github.com/nathanielksmith/done">on github</a>.</p>
]]></content:encoded>
			<wfw:commentRss>http://chiptheglasses.com/2010/04/done-a-minimal-command-line-todo-list-tool/feed/</wfw:commentRss>
		<slash:comments>4</slash:comments>
		</item>
		<item>
		<title>tabtweet &#8212; a Twitter tab-completion extension for Google Chrome (or Chromium)</title>
		<link>http://chiptheglasses.com/2010/02/announcing-tabtweet-for-chromiume/</link>
		<comments>http://chiptheglasses.com/2010/02/announcing-tabtweet-for-chromiume/#comments</comments>
		<pubDate>Sun, 07 Feb 2010 04:37:15 +0000</pubDate>
		<dc:creator>nathanielksmith</dc:creator>
				<category><![CDATA[open source technology]]></category>
		<category><![CDATA[ajax]]></category>
		<category><![CDATA[autocomplete]]></category>
		<category><![CDATA[chrome]]></category>
		<category><![CDATA[chromium]]></category>
		<category><![CDATA[code]]></category>
		<category><![CDATA[complete]]></category>
		<category><![CDATA[extensions]]></category>
		<category><![CDATA[friends]]></category>
		<category><![CDATA[google]]></category>
		<category><![CDATA[HTML5]]></category>
		<category><![CDATA[javascript]]></category>
		<category><![CDATA[oauth]]></category>
		<category><![CDATA[open source]]></category>
		<category><![CDATA[tab]]></category>
		<category><![CDATA[twitter]]></category>

		<guid isPermaLink="false">http://chiptheglasses.com/?p=151</guid>
		<description><![CDATA[I just uploaded a chrom{e,ium} extension to google&#8217;s extension repository. It adds tab-completion to twitter; when you type an @ symbol into your status box an autocomplete menu pops up with all of your friends&#8217; screen names in it. The project is open source. Here is the code (as well as an issue tracker, if [...]]]></description>
			<content:encoded><![CDATA[<p>I just uploaded a chrom{e,ium} extension to google&#8217;s <a href="https://chrome.google.com/extensions/detail/bfjiajakknijcdpgifedaheifnpbgokn">extension repository</a>. It adds tab-completion to twitter; when you type an @ symbol into your status box an autocomplete menu pops up with all of your friends&#8217; screen names in it.</p>
<div id="attachment_152" class="wp-caption aligncenter" style="width: 799px"><a href="http://chiptheglasses.com/wp-content/uploads/2010/02/screenshot.png"><img src="http://chiptheglasses.com/wp-content/uploads/2010/02/screenshot.png" alt="tabtweet screenshot" title="tabtweet screenshot" width="789" height="221" class="size-full wp-image-152" /></a><p class="wp-caption-text">tabtweet screenshot</p></div>
<p>The project is open source. <a href="http://github.com/nathanielksmith/tabtweet">Here is the code</a> (as well as an issue tracker, if you need to submit a bug report).</p>
<p>Technically speaking it&#8217;s an interesting project. It is a combination of:</p>
<ul>
<li>the Chrom{e,ium} extensions framework / API</li>
<li>the Twitter API</li>
<li>the OAuth specification</li>
<li>HTML5 (local storage)</li>
<li>The jQuery library (with a patched autocomplete plugin)</li>
</ul>
<p>and is the first open source javascript OAuth application I&#8217;ve come across. It uses code from <a href="http://oauth.googlecode.com/svn/code/javascript/">this project</a> (albiet with a small patch) to successfully implement the 7-step OAuth flow using AJAX. This was a pretty tremendous struggle as the internet doesn&#8217;t think you should do that.</p>
<p>The extension is <a href="https://chrome.google.com/extensions/detail/bfjiajakknijcdpgifedaheifnpbgokn">in the Google chrome extensions directory.</a> Try it out!</p>
]]></content:encoded>
			<wfw:commentRss>http://chiptheglasses.com/2010/02/announcing-tabtweet-for-chromiume/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>automated cut-up poetry from large corpora</title>
		<link>http://chiptheglasses.com/2010/01/automated-cut-up-poetry-from-large-corpora/</link>
		<comments>http://chiptheglasses.com/2010/01/automated-cut-up-poetry-from-large-corpora/#comments</comments>
		<pubDate>Thu, 07 Jan 2010 18:37:00 +0000</pubDate>
		<dc:creator>nathanielksmith</dc:creator>
				<category><![CDATA[Uncategorized]]></category>
		<category><![CDATA[art]]></category>
		<category><![CDATA[noise]]></category>
		<category><![CDATA[open source technology]]></category>
		<category><![CDATA[burroughs]]></category>
		<category><![CDATA[earlham]]></category>
		<category><![CDATA[paper]]></category>
		<category><![CDATA[perl]]></category>
		<category><![CDATA[poetry]]></category>
		<category><![CDATA[sqlite]]></category>
		<category><![CDATA[thesis]]></category>
		<category><![CDATA[video]]></category>

		<guid isPermaLink="false">http://chiptheglasses.com/?p=71</guid>
		<description><![CDATA[I have completed my senior thesis project at earlham college. It is stored in its entirety (code+paper) at github; although if you&#8217;d prefer a PDF over tex source there&#8217;s that too. Here&#8217;s the video of my presentation (accompanying slides):]]></description>
			<content:encoded><![CDATA[<p>I have completed my senior thesis project at <a href="http://earlham.edu">earlham college</a>.</p>
<p>It is stored in its entirety (code+paper) at <a href="http://github.com/nathanielksmith/weltanschauung">github</a>; although if you&#8217;d prefer a PDF over tex source <a href="/natethesis.pdf">there&#8217;s that too</a>.</p>
<p>Here&#8217;s the video of my presentation (<a href="http://docs.google.com/present/view?id=dhjsv2bq_14vnthb7d">accompanying slides</a>):<br />
<object width="480" height="385"><param name="movie" value="http://www.youtube.com/p/D700C5DA258EDD9A&amp;hl=en_US&amp;fs=1"></param><param name="allowFullScreen" value="true"></param><param name="allowscriptaccess" value="always"></param><embed src="http://www.youtube.com/p/D700C5DA258EDD9A&amp;hl=en_US&amp;fs=1" type="application/x-shockwave-flash" width="480" height="385" allowscriptaccess="always" allowfullscreen="true"></embed></object></p>
]]></content:encoded>
			<wfw:commentRss>http://chiptheglasses.com/2010/01/automated-cut-up-poetry-from-large-corpora/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>amarok 2 + ampache 3.5.x</title>
		<link>http://chiptheglasses.com/2009/10/amarok-2-ampache-3-5-x/</link>
		<comments>http://chiptheglasses.com/2009/10/amarok-2-ampache-3-5-x/#comments</comments>
		<pubDate>Mon, 19 Oct 2009 17:31:43 +0000</pubDate>
		<dc:creator>nathanielksmith</dc:creator>
				<category><![CDATA[open source technology]]></category>
		<category><![CDATA[amarok]]></category>
		<category><![CDATA[ampache]]></category>
		<category><![CDATA[last.fm]]></category>
		<category><![CDATA[linux]]></category>
		<category><![CDATA[lovecraft]]></category>
		<category><![CDATA[music]]></category>
		<category><![CDATA[open source]]></category>
		<category><![CDATA[streaming]]></category>

		<guid isPermaLink="false">http://chiptheglasses.com/?p=50</guid>
		<description><![CDATA[I&#8217;ve been a longtime fan of ampache. As a way to centralize and broadcast your music library, it&#8217;s fantastic&#8211;easy setup, hardly any configuration, friendly web interface. My one annoyance was that, as long as I had my music in Ampache, I couldn&#8217;t really use it with my preferred media player Amarok. I could export playlists [...]]]></description>
			<content:encoded><![CDATA[<p>I&#8217;ve been a longtime fan of <a href="http://ampache.org/">ampache</a>. As a way to centralize and broadcast your music library, it&#8217;s fantastic&#8211;easy setup, hardly any configuration, friendly web interface. My one annoyance was that, as long as I had my music in Ampache, I couldn&#8217;t really use it with my preferred media player <a href="http://amarok.kde.org/">Amarok</a>. I could export playlists into Amarok (this is back in 1.4.x) but that was it; I manually had to go to Ampache, craft a playlist, export it, listen, repeat. Very tiresome.</p>
<p>Amarok 2 has finally filled the gap with its built-in Ampache plugin. Now, once configured, your Ampache collection can look and behave just like your local collection (sans tag editing features, but c&#8217;est la vie). Even album art is pulled.</p>
<p>There&#8217;s not much to it; one pitfall is that in my haste to make this work I installed Ampache from the Ubuntu repos; don&#8217;t do this. The version you get is 3.4.x which doesn&#8217;t work with Amarok 2&#8242;s plugin. Download 3.5.x from Ampache&#8217;s website and you&#8217;ll be good to go.</p>
<p>I just followed the directions <a href="http://ampache.org/wiki/config:amarok">here</a> and was going in no time.</p>
<p>Now, I keep my music on an external hard drive attached to my eee server, Lovecraft, and access it from my work thinkpad / home thinkpad / on the go eee901 / where ever.</p>
<p>Also: it works with Amarok 2&#8242;s built-in <a href="http://www.last.fm/user/cogitatus">last.fm</a> support.</p>
<p>Hooray.</p>
]]></content:encoded>
			<wfw:commentRss>http://chiptheglasses.com/2009/10/amarok-2-ampache-3-5-x/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>global collaboration</title>
		<link>http://chiptheglasses.com/2009/10/global-collaboration/</link>
		<comments>http://chiptheglasses.com/2009/10/global-collaboration/#comments</comments>
		<pubDate>Fri, 16 Oct 2009 03:01:03 +0000</pubDate>
		<dc:creator>nathanielksmith</dc:creator>
				<category><![CDATA[computer music]]></category>
		<category><![CDATA[noise]]></category>
		<category><![CDATA[open source technology]]></category>
		<category><![CDATA[collaboration]]></category>
		<category><![CDATA[jack rack]]></category>
		<category><![CDATA[linux]]></category>
		<category><![CDATA[music]]></category>
		<category><![CDATA[open source]]></category>
		<category><![CDATA[pdrss]]></category>
		<category><![CDATA[pure data]]></category>
		<category><![CDATA[robots]]></category>
		<category><![CDATA[rosegarden]]></category>
		<category><![CDATA[tracks]]></category>
		<category><![CDATA[twitter]]></category>

		<guid isPermaLink="false">http://chiptheglasses.com/?p=46</guid>
		<description><![CDATA[A friend had the idea to start up a game of musical telephone. The details of it are still somewhat foggy to me but, basically, I make one or more tracks, give them to someone else, and get tracks in return. I do what I want to what I get and trade those in. after [...]]]></description>
			<content:encoded><![CDATA[<p>A friend had the idea to start up a game of musical telephone. The details of it are still somewhat foggy to me but, basically, I make one or more tracks, give them to someone else, and get tracks in return. I do what I want to what I get and trade those in. after some N number of trades, a song appears.</p>
<p>I took this as an opportunity to practice with some new stuff. First, I ran my <a href="http://github.com/nathanielksmith/pdrss">pdrss</a> program through the great <a href="http://jack-rack.sourceforge.net/">jack rack</a> for two minutes, recording into <a href="http://www.rosegardenmusic.com/">Rosegarden</a>. Next, I just programmed some oscillators in <a href="http://puredata.info/">pure data</a>, put them through jack rack, and recorded another two minutes.</p>
<p>It&#8217;s late, and since someone else is going to be hacking these up anyway, I didn&#8217;t strive for perfection. I only did two or three takes for each track. They don&#8217;t match up all that great and their sluggish changes represent my still-neophyte computer music skillz (computer mice are different than mixer knobs).</p>
<p>I had a lot of fun, and since these tracks are for collaboration (and fairly large&#8230;nay, extremely large) I put them up here instead of gmailing them.</p>
<p>Enjoy, and please, take them and destroy them.</p>
<p><a href='http://12.176.100.59/static/nate_track_twitter.wav' >twittertalk</a><br />
<a href='http://12.176.100.59/static/nate_track_oscs.wav' >oscs</a></p>
]]></content:encoded>
			<wfw:commentRss>http://chiptheglasses.com/2009/10/global-collaboration/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
<enclosure url="http://12.176.100.59/static/nate_track_twitter.wav" length="22548596" type="audio/x-wav" />
<enclosure url="http://12.176.100.59/static/nate_track_oscs.wav" length="24039534" type="audio/x-wav" />
		</item>
		<item>
		<title>sd.pl</title>
		<link>http://chiptheglasses.com/2009/10/sd-pl/</link>
		<comments>http://chiptheglasses.com/2009/10/sd-pl/#comments</comments>
		<pubDate>Tue, 13 Oct 2009 18:16:58 +0000</pubDate>
		<dc:creator>nathanielksmith</dc:creator>
				<category><![CDATA[noise]]></category>
		<category><![CDATA[open source technology]]></category>
		<category><![CDATA[bitrot]]></category>
		<category><![CDATA[borges]]></category>
		<category><![CDATA[code]]></category>
		<category><![CDATA[codegolf]]></category>
		<category><![CDATA[open source]]></category>
		<category><![CDATA[perl]]></category>
		<category><![CDATA[string decay]]></category>

		<guid isPermaLink="false">http://chiptheglasses.com/?p=29</guid>
		<description><![CDATA[<div style="font-family:courier, monospace;font-size:70%">@i = split //,(pop @ARGV);print @i,"\n" and $i[rand int $#i]=chr ((int rand 94) + 32) while ($ARGV[0]--);
@i = split //,(pop @ARGV);print @i,"%n" and $i[rand int $#i]=chr ((int rand 94) + 32) while ($ARGV[0]--);
@i = split //,(pop @ARGV);print @i,"%n" and $i[rand int $#i]=chr ((int raOd 94) + 32) while ($ARGV[0]--);
@i = }plit //,(pop @ARGV);print @i,"%n" and $i[rand int $#i]=chr ((int raOd 94) + 32) while ($ARGV[0]--);
@i = }plit //,(pop @ARGV);print @i,"%n" and $i[rand @nt $#i]=chr ((int raOd 94) + 32) while ($ARGV[0]--);
@i = }plit //,(aop @ARGV);print @i,"%n" and $i[rand @nt $#i]=chr ((int raOd 94) + 32) while ($ARGV[0]--);
@i = }plit //,(aop @ARGV);print @i,"%n" and $i[rand @nt $#i]=chr (()nt raOd 94) + 32) while ($ARGV[0]--);</div>]]></description>
			<content:encoded><![CDATA[<div style="font-family:courier, monospace;font-size:70%">@i = split //,(pop @ARGV);print @i,&#8221;\n&#8221; and $i[rand int $#i]=chr ((int rand 94) + 32) while ($ARGV[0]&#8211;);<br />
@i = split //,(pop @ARGV);print @i,&#8221;%n&#8221; and $i[rand int $#i]=chr ((int rand 94) + 32) while ($ARGV[0]&#8211;);<br />
@i = split //,(pop @ARGV);print @i,&#8221;%n&#8221; and $i[rand int $#i]=chr ((int raOd 94) + 32) while ($ARGV[0]&#8211;);<br />
@i = }plit //,(pop @ARGV);print @i,&#8221;%n&#8221; and $i[rand int $#i]=chr ((int raOd 94) + 32) while ($ARGV[0]&#8211;);<br />
@i = }plit //,(pop @ARGV);print @i,&#8221;%n&#8221; and $i[rand @nt $#i]=chr ((int raOd 94) + 32) while ($ARGV[0]&#8211;);<br />
@i = }plit //,(aop @ARGV);print @i,&#8221;%n&#8221; and $i[rand @nt $#i]=chr ((int raOd 94) + 32) while ($ARGV[0]&#8211;);<br />
@i = }plit //,(aop @ARGV);print @i,&#8221;%n&#8221; and $i[rand @nt $#i]=chr (()nt raOd 94) + 32) while ($ARGV[0]&#8211;);<br />
@z = }plit //,(aop @ARGV);print @i,&#8221;%n&#8221; and $i[rand @nt $#i]=chr (()nt raOd 94) + 32) while ($ARGV[0]&#8211;);<br />
@z = }plit //,(aop @ARGV);print @i,&#8221;%n&#8221; avd $i[rand @nt $#i]=chr (()nt raOd 94) + 32) while ($ARGV[0]&#8211;);<br />
@z = }plit //,(aop @ARGV);print @i,&#8221;%n&#8221; avd $i[rand @nt $#i]=chr (()nt raOi 94) + 32) while ($ARGV[0]&#8211;);<br />
@z = }plit //,(aop @ARGV);print @i,&#8221;%n&#8221; avd $i[rand @nt $#i]echr (()nt raOi 94) + 32) while ($ARGV[0]&#8211;);<br />
@z = }plit //,(aop @ARGV);print @i,&#8221;%n&#8221; avd $i[rand @nt $#i]echr (()nt raOi 94) + 32) -hile ($ARGV[0]&#8211;);<br />
@z = }plit //,(aopu@ARGV);print @i,&#8221;%n&#8221; avd $i[rand @nt $#i]echr (()nt raOi 94) + 32) -hile ($ARGV[0]&#8211;);<br />
@z = }plit F/,(aopu@ARGV);print @i,&#8221;%n&#8221; avd $i[rand @nt $#i]echr (()nt raOi 94) + 32) -hile ($ARGV[0]&#8211;);<br />
@z = }plit F/,(aopu@ARGV);print @i,&#8221;%n&#8221; avd $i[rand @nt $#i]echr (()>t raOi 94) + 32) -hile ($ARGV[0]&#8211;);<br />
@z = }plit F/,(aohu@ARGV);print @i,&#8221;%n&#8221; avd $i[rand @nt $#i]echr (()>t raOi 94) + 32) -hile ($ARGV[0]&#8211;);<br />
@z = }plit F/,(aohu@ARGV);print @i,&#8221;%n&#8221; avd $i[rand @nt $#i]echr (()>t raOi 94) + 32) -hile ($ARGI[0]&#8211;);<br />
@z = }plit F/,(aohu@ARGV);print @i,&#8221;%n&#8221; avd $i[rand @n[ $#i]echr (()>t raOi 94) + 32) -hile ($ARGI[0]&#8211;);<br />
@z = }plit F/,(aohu@ARGV);print Si,&#8221;%n&#8221; avd $i[rand @n[ $#i]echr (()>t raOi 94) + 32) -hile ($ARGI[0]&#8211;);<br />
@z = }plit F/,(aohu@ARGV);print Si,&#8221;%n&#8221; axd $i[rand @n[ $#i]echr (()>t raOi 94) + 32) -hile ($ARGI[0]&#8211;);<br />
@z = }plit F/,(aohu@ARGV);print Ei,&#8221;%n&#8221; axd $i[rand @n[ $#i]echr (()>t raOi 94) + 32) -hile ($ARGI[0]&#8211;);<br />
@z = }plit F/,(aohu@ARGV);print Ei,&#8221;%n&#8221; axd $i[rand @n[ $#i]echr (()>t raOi 94) + 32) -hile ($ARGI[0]G-);<br />
@z = }plit F/,(aohu@ARGV);print Ei,&#8221;%n&#8221; axdH$i[rand @n[ $#i]echr (()>t raOi 94) + 32) -hile ($ARGI[0]G-);<br />
@z = }plit F/,(aohu@ARGV);prinJ Ei,&#8221;%n&#8221; axdH$i[rand @n[ $#i]echr (()>t raOi 94) + 32) -hile ($ARGI[0]G-);<br />
@z = }plit F/,(aohu@ARGV);rrinJ Ei,&#8221;%n&#8221; axdH$i[rand @n[ $#i]echr (()>t raOi 94) + 32) -hile ($ARGI[0]G-);<br />
@z = }plit F/,(aohu@ARGV);rrinJ Ei,&#8221;%n&#8221; axdH$i[rand @n[ $#i]echr (()>t raOi 94) + 32) -hile ($ARGI[0]G-);<br />
@z = }plit F/,(aohu@ARGV);rrinJ Ei,&#8221;%n&#8221; axdH$i[rand @n[ $#i]echr (()>t raOi 94) + 32) -hile ($ARrI[0]G-);<br />
@z = }plit F/,(aohu@ARGV);rrinJ Ei,&#8221;%n&#8221; axdH$i[rand @n[ $#i]echr (()>! raOi 94) + 32) -hile ($ARrI[0]G-);<br />
@z = }plit F/,(aohu@ARGV);rrinJ Ei,&#8221;%n&#8221; axdH$i[rand @n[ $#i]echr (()>! raOi 940 + 32) -hile ($ARrI[0]G-);<br />
@z = }plit F/,(aohu@ARGV);rrinJ Ei,&#8221;%n&#8221; axdH$i[rand @n[ $#i]echr (()>! raOi ]40 + 32) -hile ($ARrI[0]G-);<br />
@z = }plit F/,(aohu@ARGV);rrinJ Ei,&#8221;%n&#8221; axdH$i[rand @n[ $#i]echr (()>! raOi ]40 + 32) -vile ($ARrI[0]G-);<br />
@z = }plit F/,(aohu@ARGV);rrinJ Ei,&#8221;%n&#8221; axdH$i[rand @n[ $#i]echr (()>! raOi ]40 + 32) &#038;vile ($ARrI[0]G-);<br />
@z = }plit F/,(aohu@ARGV);rrinJ Ei,&#8221;%n&#8221; axdH$i[rand @n[ $#i]echr (()>! MaOi ]40 + 32) &#038;vile ($ARrI[0]G-);<br />
@z = }plit z/,(aohu@ARGV);rrinJ Ei,&#8221;%n&#8221; axdH$i[rand @n[ $#i]echr (()>! MaOi ]40 + 32) &#038;vile ($ARrI[0]G-);<br />
@z = }plit z/,(2ohu@ARGV);rrinJ Ei,&#8221;%n&#8221; axdH$i[rand @n[ $#i]echr (()>! MaOi ]40 + 32) &#038;vile ($ARrI[0]G-);<br />
@z = }plit z/,(2ohu@ARGV);rrinJ Ei,&#8221;%n&#8221; axdH$i[rand @n[ $#i]echr (()>! MaOi ]40 + 32^ &#038;vile ($ARrI[0]G-);<br />
@z = }plit z/,(2ohu@ARGV);rrinJ Ei,&#8221;%n&#8221; axdHfi[rand @n[ $#i]echr (()>! MaOi ]40 + 32^ &#038;vile ($ARrI[0]G-);<br />
@z = }plit z/,(2ohu@ARGV);rrinJ Ei,&#8221;%n&#8221; ax9Hfi[rand @n[ $#i]echr (()>! MaOi ]40 + 32^ &#038;vile ($ARrI[0]G-);<br />
@z = }plit z/,(2ohu@ARGV);rrinJ Ei,&#8221;%n&#8221; ax9Hfi[rand @n[ $#i]echr (()>! MaOi ]40 + 3<^ &#038;vile ($ARrI[0]G-);<br />
@z = }plit z/,(2ohu@ARGV);rrinJ EiW"%n" ax9Hfi[rand @n[ $#i]echr (()>! MaOi ]40 + 3<^ &#038;vile ($ARrI[0]G-);<br />
@z = }plit z/,(2ohu@ARGV);rrinJ EiW"%!" ax9Hfi[rand @n[ $#i]echr (()>! MaOi ]40 + 3<^ &#038;vile ($ARrI[0]G-);<br />
@z = }plit z/,(2ohu@ARGV);rrinJ EiW"%!" ax9Hfi[rand @n[ $#i]ecJr (()>! MaOi ]40 + 3<^ &#038;vile ($ARrI[0]G-);<br />
@z = }plit z/,(2ogu@ARGV);rrinJ EiW"%!" ax9Hfi[rand @n[ $#i]ecJr (()>! MaOi ]40 + 3<^ &#038;vile ($ARrI[0]G-);<br />
@z = }plit z/,(2ogu@ARGV);rrinJ EiW"%!" ax9Hfi%rand @n[ $#i]ecJr (()>! MaOi ]40 + 3<^ &#038;vile ($ARrI[0]G-);<br />
@z = }plit z/,(2ogu@ARGV);rrinJ EiW"%!" ax9Hfi%rand @n[ $#i]ecJr i()>! MaOi ]40 + 3<^ &#038;vile ($ARrI[0]G-);<br />
@z = }plit z/,(2ogu@ARGq);rrinJ EiW"%!" ax9Hfi%rand @n[ $#i]ecJr i()>! MaOi ]40 + 3<^ &#038;vile ($ARrI[0]G-);<br />
@z = }plzt z/,(2ogu@ARGq);rrinJ EiW"%!" ax9Hfi%rand @n[ $#i]ecJr i()>! MaOi ]40 + 3<^ &#038;vile ($ARrI[0]G-);<br />
@z = }plzt z/,(2ogu$ARGq);rrinJ EiW"%!" ax9Hfi%rand @n[ $#i]ecJr i()>! MaOi ]40 + 3<^ &#038;vile ($ARrI[0]G-);<br />
@z = }p%zt z/,(2ogu$ARGq);rrinJ EiW"%!" ax9Hfi%rand @n[ $#i]ecJr i()>! MaOi ]40 + 3<^ &#038;vile ($ARrI[0]G-);<br />
@z = }p%zt z/,(2ogu$ARGq);rrinJ EiW"%!" ax9Hfi%rand @n[ K#i]ecJr i()>! MaOi ]40 + 3<^ &#038;vile ($ARrI[0]G-);<br />
@z = }p%zt z/,(2ogu$ARGq);rrinJ EiW"_!" ax9Hfi%rand @n[ K#i]ecJr i()>! MaOi ]40 + 3<^ &#038;vile ($ARrI[0]G-);<br />
@z = }p%!t z/,(2ogu$ARGq);rrinJ EiW"_!" ax9Hfi%rand @n[ K#i]ecJr i()>! MaOi ]40 + 3<^ &#038;vile ($ARrI[0]G-);<br />
@z = }p%!t z/,(2ogu$ARGq);rrinJ EiW"_!" ax9Hfi%rand @n[ K#i]ecJr i()>! MaOi \40 + 3<^ &#038;vile ($ARrI[0]G-);<br />
@z = }p%!t z/,(2[gu$ARGq);rrinJ EiW"_!" ax9Hfi%rand @n[ K#i]ecJr i()>! MaOi \40 + 3<^ &#038;vile ($ARrI[0]G-);<br />
@z = }p%!t z/,(2[gu$ARGq);rrinJ EiW"_!" ax9Hfi%rand @n[ K#i]ecJr i()>! MaOi \Y0 + 3<^ &#038;vile ($ARrI[0]G-);<br />
@z = }p%!t z/,(2[gu$ARGq);rrinJ EiW"_!" ax9HPi%rand @n[ K#i]ecJr i()>! MaOi \Y0 + 3<^ &#038;vile ($ARrI[0]G-);<br />
@z = }p%!t z/,(2[gu$ARGq);rrinJ EiW"_!" ax9HPi%rand @n[ K#i]ecJr i()>! MaOi \B0 + 3<^ &#038;vile ($ARrI[0]G-);
</div>
]]></content:encoded>
			<wfw:commentRss>http://chiptheglasses.com/2009/10/sd-pl/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Everything: the detailed history of the future, the true story of your death, the translation of every book in all languages</title>
		<link>http://chiptheglasses.com/2009/10/dead-air-flier-using-stringdecay-and-gimp/</link>
		<comments>http://chiptheglasses.com/2009/10/dead-air-flier-using-stringdecay-and-gimp/#comments</comments>
		<pubDate>Fri, 09 Oct 2009 14:38:42 +0000</pubDate>
		<dc:creator>nathanielksmith</dc:creator>
				<category><![CDATA[art]]></category>
		<category><![CDATA[noise]]></category>
		<category><![CDATA[open source technology]]></category>
		<category><![CDATA[borges]]></category>
		<category><![CDATA[github]]></category>
		<category><![CDATA[open source]]></category>
		<category><![CDATA[perl]]></category>
		<category><![CDATA[weci]]></category>

		<guid isPermaLink="false">http://chiptheglasses.com/?p=22</guid>
		<description><![CDATA[I have a radio show every Monday at 9p on WECI 91.5FM. It&#8217;s (usually) internet streamable from a rando IP address (directions). I wrote a very very simple perl script to destroy a string over time. I find the end result to be pretty aesthetically pleasing, so I use it to make fliers for my [...]]]></description>
			<content:encoded><![CDATA[<p>I have a radio show every Monday at 9p on WECI 91.5FM. It&#8217;s (usually) internet streamable from a rando IP address (<a href="weciradio.org/streaming">directions</a>).</p>
<p>I wrote a very very simple perl script to destroy a string over time. I find the end result to be pretty aesthetically pleasing, so I use it to make fliers for my radio show:</p>
<p><img src="/static/images/new_dead_air_flier_smaller.png" alt="dead air flier" title="radio show flier" /></p>
<p>I used a quote from <a href="http://74.125.95.132/search?q=cache:iHFgqU6SDF4J:jubal.westnet.com/hyperdiscordia/library_of_babel.html+'library+of+babel'&#038;cd=1&#038;hl=en&#038;ct=clnk&#038;gl=us">Borges&#8217;s Library of Babel</a> as input. The code that does the string decay is <a href="http://github.com/nathanielksmith/bitrot">up on github</a>.</p>
<p>If you feel like advertising for me, <a href="/static/images/new_dead_air_flier.png">here&#8217;s a larger printable version</a>.</p>
]]></content:encoded>
			<wfw:commentRss>http://chiptheglasses.com/2009/10/dead-air-flier-using-stringdecay-and-gimp/feed/</wfw:commentRss>
		<slash:comments>1</slash:comments>
		</item>
		<item>
		<title>!blosxom</title>
		<link>http://chiptheglasses.com/2009/10/blosxom/</link>
		<comments>http://chiptheglasses.com/2009/10/blosxom/#comments</comments>
		<pubDate>Wed, 07 Oct 2009 03:10:49 +0000</pubDate>
		<dc:creator>nathanielksmith</dc:creator>
				<category><![CDATA[open source technology]]></category>
		<category><![CDATA[blogging]]></category>
		<category><![CDATA[blosxom]]></category>
		<category><![CDATA[linux]]></category>
		<category><![CDATA[mysql]]></category>
		<category><![CDATA[open source]]></category>
		<category><![CDATA[perl]]></category>
		<category><![CDATA[wordpress]]></category>

		<guid isPermaLink="false">http://chiptheglasses.com/?p=18</guid>
		<description><![CDATA[Originally this blog was a blosxom blog. I learned of blosxom through hobix, which also made me intensely fascinated by why and his subsequent disappearance. Here&#8217;s why I liked blosxom, and eagerly installed it on lovecraft, my eee server: it&#8217;s perl I can use vim to edit my posts it doesn&#8217;t insist on rdbms bloatware [...]]]></description>
			<content:encoded><![CDATA[<p>Originally this blog was a <a href="http://www.blosxom.com/">blosxom</a> blog. I learned of blosxom through <a href="http://rubyforge.org/projects/hobix/">hobix</a>, which also made me intensely fascinated by <a href="http://en.wikipedia.org/wiki/Why_the_lucky_stiff">why</a> and his subsequent disappearance.</p>
<p>Here&#8217;s why I liked blosxom, and eagerly installed it on lovecraft, my eee server:</p>
<ul>
<li>it&#8217;s perl</li>
<li>I can use vim to edit my posts</li>
<li>it doesn&#8217;t insist on rdbms bloatware (I&#8217;m looking at you, mysql)</li>
<li>it&#8217;s hip. I guess.</li>
</ul>
<p>Unfortunately, my experience was less than stellar. It started off great&#8211;the installation was easy and I was up and running within a few minutes. I made my first post with ease. I was still starting at a nineties-looking black-text-on-white-background &#8216;flavour,&#8217; however, and decided to update it; unfortunately blosxom failed to ever find my flavour files and refused to change styles. I read and reread the docs on the blosxom website (which, I began to notice, has many broken links and some links that simply go to the wrong place) to no avail. I googled around; I found no information or documentation more recent than 2007. I finally logged onto #blosxom on freenode and asked there as politely and fully as possible; that was about 24hrs ago (Yes, I&#8217;ve been lurking) and I never received a response from the dozen or so lurkers in there.</p>
<p>I was worried that as I started to add stuff like comments and search that I would have a similar experience, so I made a wordpress blog for myself just like I did for my <a href="http://cracktheplates.com">sweetheart</a>.</p>
<p>And, jeez. WordPress is just awesome. I will gladly overlook the php and the mysql for all the eye candy ease-of-use goodness awesome it provides.</p>
]]></content:encoded>
			<wfw:commentRss>http://chiptheglasses.com/2009/10/blosxom/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
	</channel>
</rss>
