<?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:feedburner="http://rssnamespace.org/feedburner/ext/1.0" version="2.0">

<channel>
	<title>Chris Miller</title>
	
	<link>http://chris-miller.org</link>
	<description>Life, and how to live it!</description>
	<lastBuildDate>Mon, 22 Feb 2010 23:23:11 +0000</lastBuildDate>
	<generator>http://wordpress.org/?v=2.9.2</generator>
	<language>en</language>
	<sy:updatePeriod>hourly</sy:updatePeriod>
	<sy:updateFrequency>1</sy:updateFrequency>
			<atom10:link xmlns:atom10="http://www.w3.org/2005/Atom" rel="self" type="application/rss+xml" href="http://feeds.feedburner.com/chris-miller" /><feedburner:info uri="chris-miller" /><atom10:link xmlns:atom10="http://www.w3.org/2005/Atom" rel="hub" href="http://pubsubhubbub.appspot.com/" /><item>
		<title>Connectivity in Social Media</title>
		<link>http://feedproxy.google.com/~r/chris-miller/~3/-eH331x0T2U/</link>
		<comments>http://chris-miller.org/archives/2009/12/17/connectivity-in-social-media/#comments</comments>
		<pubDate>Thu, 17 Dec 2009 01:31:15 +0000</pubDate>
		<dc:creator>Chris</dc:creator>
				<category><![CDATA[Personal]]></category>
		<category><![CDATA[blog]]></category>
		<category><![CDATA[delicious]]></category>
		<category><![CDATA[facebook]]></category>
		<category><![CDATA[flickr]]></category>
		<category><![CDATA[last.fm]]></category>
		<category><![CDATA[linkedin]]></category>
		<category><![CDATA[media]]></category>
		<category><![CDATA[social]]></category>
		<category><![CDATA[Social Media]]></category>
		<category><![CDATA[twitter]]></category>

		<guid isPermaLink="false">http://chris-miller.org/?p=391</guid>
		<description><![CDATA[I&#8217;ve been playing around with various social media sites lately, trying to integrate them so my wealth of assorted knowledge gets to as many of the various places as possible.  My Twitter feed now updates my Facebook and Linkedin statuses; Last.fm scrobbled tracks appear here in the sidebar and on Facebook; Flickr photos appear [...]]]></description>
			<content:encoded><![CDATA[<p>I&#8217;ve been playing around with various social media sites lately, trying to integrate them so my wealth of assorted knowledge gets to as many of the various places as possible.  My Twitter feed now updates my Facebook and Linkedin statuses; Last.fm scrobbled tracks appear here in the sidebar and on Facebook; Flickr photos appear here as well as on Facebook.</p>
<p>This got me to thinking about the types of people I connect to on each of these social media networking sites.  In my eyes this blog serves a different purpose and has a separate target audience to my Linkedin or Facebook profiles.</p>
<p>In light of this I&#8217;m giving a rundown of the groups and categories of people I connect to via each of these sites and their envisioned usage in my eyes.</p>
<p><span id="more-391"></span><br />
<h3>
<a target="_blank" href="/" title="Blog">Blog</a><br />
</h3>
<p><img src="http://chris-miller.org/wp-content/uploads/2009/12/blog-128x128.png" alt="Blog" title="Blog" width="128" height="128" class="alignright size-full wp-image-406" />The hub of this particular Chris Miller on the web.  It&#8217;s where you&#8217;ll be able to find out about who I am and what I&#8217;m up to.  From here you can branch out onto each of the social media sites I&#8217;m to be found on where more information in each of their specific focuses can be found.</p>
<p>Although technically not a <em>social</em> site it does mark the start of a web of profiles on various other sites as well as providing a blogroll (which is terminally out of date) of other people and sites I follow on the web.</p>
<ul>
<li>My blog is for: me to post random nonsense and technical articles to.</li>
<li>My blog connects me to: other sites I syndicate.</li>
</ul>
<h3>
<a target="_blank" href="http://delicious.com/chrismiller" title="Delicious">Delicious</a><br />
</h3>
<p><img src="http://chris-miller.org/wp-content/uploads/2009/12/delicious-128x128.png" alt="Delicious" title="Delicious" width="128" height="128" class="alignright size-full wp-image-406" />I&#8217;m terrible at using Delicious for bookmarking as well as bookmarking things locally.  I tend to read an article that&#8217;s relevant to the thoughts running around my head at a particular moment then move on, forever forgetting said article (much trolling of web history ensues at a later date).</p>
<p>Although this site allows connections to other people I&#8217;ve shunned away from doing so.  Feeds from the likes of Reddit and the BBC combined with Twitter tends to keep me up to date with any relevant articles flying around.</p>
<ul>
<li>Delicious is for: posting links to interesting/relevant/funny articles and categorising/tagging them.</li>
<li>Delicious connects me to: nobody at the moment.</li>
</ul>
<h3>
<a target="_blank" href="http://www.facebook.com/christopheralexandermiller" title="Facebook">Facebook</a><br />
</h3>
<p><img src="http://chris-miller.org/wp-content/uploads/2009/12/facebook-128x128.png" alt="Facebook" title="Facebook" width="128" height="128" class="alignright size-full wp-image-406" />Facebook is the only site in this list that I&#8217;d truly describe as a <em>social media site</em>.  By this I mean that it serves no other purpose than to be a platform to connect and keep-in-touch with people I know socially.  All the other sites in this list are quite focused in their purpose.</p>
<p>In light of this, Facebook is where most of the connecting comes into play for me.  I have friends on Facebook from various facets of my life: school, university, work and other social situations.  The one thing that sets Facebook apart from most of these other sites is that anyone I am friends with I have actually met, interacted with and have subsequently added as a friend.</p>
<p>The site itself is easy to use, little or no expertise is required to set up an account and start connecting with friends.  There are various &#8216;applications&#8217; to be added, groups to be joined, photos to be looked at&#8230; essentially it&#8217;s a procrastinators wet dream.  This of course means it has no real focus or goal for me other than being stayintouchwithpeople.com.</p>
<ul>
<li>Facebook is for: everyone! Staying in contact with people I know socially.</li>
<li>Facebook connects me to: pretty much everyone I know personally.</li>
</ul>
<h3>
<a target="_blank" href="http://flickr.com/photos/chrismiller" title="Flickr">Flickr</a><br />
</h3>
<p><img src="http://chris-miller.org/wp-content/uploads/2009/12/flickr-128x128.png" alt="Flickr" title="Flickr" width="128" height="128" class="alignright size-full wp-image-406" />Flickr, certainly for me, started out as a tool for online photo storage and organisation.  I jumped on Flickr not long after it started up, before those pesky Yahoo! logins, and a tool was certainly what I was using it solely for.</p>
<p>Over time as the site developed and the whole social media <em>thing</em> took off Flickr added some nice functionality for discovering other people and building a photography community.</p>
<p>Connections I have via Flickr tend to be people I know with a smattering of people who have some interesting photos up.  For the most part I find Flickr a useful tool for distributing photos onto other social media sites and it serves as an online repository of all my photos.  That said however, it does make it very easy to keep up-to-date with photos of peers and colleagues who have a ton more photography skill than I (particularly <a target="_blank" href="http://www.flickr.com/photos/chrishannah/">Chris Hannah</a>, <a target="_blank" href="http://www.flickr.com/photos/filtre/">Jim Moore</a>, <a target="_blank" href="http://www.flickr.com/photos/sdstrowes/">Steve Strowes</a> and <a target="_blank" href="http://www.flickr.com/photos/deanwright/">Dean Wright</a> being of note).</p>
<ul>
<li>Flickr is for: hosting, organising and sharing my photos online.</li>
<li>Flickr connects me to: people I know and other Flickr users with interesting posts.</li>
</ul>
<h3>
<a target="_blank" href="http://www.last.fm/user/chrismiller" title="Last.fm">Last.fm</a><br />
</h3>
<p><img src="http://chris-miller.org/wp-content/uploads/2009/12/lastfm-128x128.png" alt="Last.fm" title="Last.fm" width="128" height="128" class="alignright size-full wp-image-406" />I think I initially signed up to Last.fm just to see what it was, what it offered and to see if it&#8217;d be useful.  Since then I&#8217;ve been off and on using the service to capture the tracks I&#8217;ve been listening to with iTunes.  That is until recently with the switch for most of my music listening to Spotify which offers integrated Last.fm scrobbling.</p>
<p>The stats over time from tracks you&#8217;ve listened to are interesting and the music recommendations can be good especially if, like me, you generally don&#8217;t listen to music that&#8217;s very recent.  I tend to view this more like I did Flickr initially, as a tool to draw information into other social media sites.  That being said, I do have friends added on the site.  The friends I have added tend to be actual friends I know and have somewhat similar music tastes to.</p>
<ul>
<li>Last.fm is for: collecting information about my music listening trends and sharing them on other sites.</li>
<li>Last.fm connects me to: friends I know with similar music tastes.</li>
</ul>
<h3>
<a target="_blank" href="http://uk.linkedin.com/in/camiller" title="Linkedin">Linkedin</a><br />
</h3>
<p><img src="http://chris-miller.org/wp-content/uploads/2009/12/linkedin-128x128.png" alt="Linkedin" title="Linkedin" width="128" height="128" class="alignright size-full wp-image-406" />By far the most professionally oriented of any of the sites listed here and again on my part initially used as a tool rather than a networking site.  Linkedin for me initially was a convenient way of creating an online, plain and simple CV which could be easily updated and seed any full written CVs I&#8217;d need to write.</p>
<p>The focus of this site has shifted quite dramatically for me over time, I view this site as more of a networking site than I did previously.  Now it provides a forum for me to stay contacted with people I&#8217;ve worked and studied with, without as many social faux pas such like drunken photographs or questionable music tastes.  Ok they&#8217;re not hard to find, but the site does provide a professional front for me.</p>
<p>As I&#8217;ve said above, the people I connect with on Linkedin are those I&#8217;ve previously worked and studied with, aside from a few recruitment agencies who try and cram job offers down your throat (can&#8217;t hurt can it?).</p>
<ul>
<li>Linkedin is for: providing a professional front.</li>
<li>Linkedin connects me to: those people who have had the privilege of working or studying with me.</li>
</ul>
<h3>
<a target="_blank" href="http://twitter.com/chrismiller" title="Twitter">Twitter</a><br />
</h3>
<p><img src="http://chris-miller.org/wp-content/uploads/2009/12/twitter-128x128.png" alt="Twitter" title="Twitter" width="128" height="128" class="alignright size-full wp-image-406" />Twitter in my eyes is by far the most loosely defined group of people I follow.  I view Twitter as a pick-it-up put-it-down source of random pieces of information, friend status updates and broadcasts from various companies.</p>
<p>My follow list generally reflects this.  I follow people I know as a means of staying up-to-date with them; companies whose services I use as well as updates on various pieces of software I utilise on a daily basis; and pretty much anyone who posts something interesting or funny.  So the list of Twitter updates I see in my client varies between lunch orders, company/software bulletins, 160 character quips and interesting links.</p>
<p>Twitter is by far the social media service that I read and post to most often, though I tend to skim over a lot of tweets to find those that are relevant or interesting to me.</p>
<ul>
<li>Twitter is for: quickly posting interesting links, thoughts, lazy discussions, product updates&#8230; disseminating information.</li>
<li>Twitter connects me to: absolutely anyone, friends are a given but other than that, anything that interests me.</li>
</ul>
<p>So that&#8217;s my rundown of the social media sites you&#8217;ll see me on and my usage of and connectivity on them.  I&#8217;d assume most people use each of these sites in a similar manner (barring Twitter which has various marketing and advertising uses that I&#8217;m not really clued up on).  Any other uses or different perspectives are welcomed.<br />
- Chris</p>
<div class="feedflare">
<a href="http://feeds.feedburner.com/~ff/chris-miller?a=-eH331x0T2U:cLKpTbqERQc:yIl2AUoC8zA"><img src="http://feeds.feedburner.com/~ff/chris-miller?d=yIl2AUoC8zA" border="0"></img></a> <a href="http://feeds.feedburner.com/~ff/chris-miller?a=-eH331x0T2U:cLKpTbqERQc:D7DqB2pKExk"><img src="http://feeds.feedburner.com/~ff/chris-miller?i=-eH331x0T2U:cLKpTbqERQc:D7DqB2pKExk" border="0"></img></a> <a href="http://feeds.feedburner.com/~ff/chris-miller?a=-eH331x0T2U:cLKpTbqERQc:F7zBnMyn0Lo"><img src="http://feeds.feedburner.com/~ff/chris-miller?i=-eH331x0T2U:cLKpTbqERQc:F7zBnMyn0Lo" border="0"></img></a> <a href="http://feeds.feedburner.com/~ff/chris-miller?a=-eH331x0T2U:cLKpTbqERQc:V_sGLiPBpWU"><img src="http://feeds.feedburner.com/~ff/chris-miller?i=-eH331x0T2U:cLKpTbqERQc:V_sGLiPBpWU" border="0"></img></a> <a href="http://feeds.feedburner.com/~ff/chris-miller?a=-eH331x0T2U:cLKpTbqERQc:qj6IDK7rITs"><img src="http://feeds.feedburner.com/~ff/chris-miller?d=qj6IDK7rITs" border="0"></img></a> <a href="http://feeds.feedburner.com/~ff/chris-miller?a=-eH331x0T2U:cLKpTbqERQc:gIN9vFwOqvQ"><img src="http://feeds.feedburner.com/~ff/chris-miller?i=-eH331x0T2U:cLKpTbqERQc:gIN9vFwOqvQ" border="0"></img></a>
</div><img src="http://feeds.feedburner.com/~r/chris-miller/~4/-eH331x0T2U" height="1" width="1"/>]]></content:encoded>
			<wfw:commentRss>http://chris-miller.org/archives/2009/12/17/connectivity-in-social-media/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		<feedburner:origLink>http://chris-miller.org/archives/2009/12/17/connectivity-in-social-media/</feedburner:origLink></item>
		<item>
		<title>Batch renaming files in Mac OS X</title>
		<link>http://feedproxy.google.com/~r/chris-miller/~3/A0mNJp_0SU8/</link>
		<comments>http://chris-miller.org/archives/2009/12/08/batch-renaming-files-in-mac-os-x/#comments</comments>
		<pubDate>Tue, 08 Dec 2009 20:02:12 +0000</pubDate>
		<dc:creator>Chris</dc:creator>
				<category><![CDATA[Essential Apps]]></category>
		<category><![CDATA[Mac OS X]]></category>
		<category><![CDATA[Finder]]></category>
		<category><![CDATA[NameChanger]]></category>
		<category><![CDATA[rename]]></category>
		<category><![CDATA[Software]]></category>
		<category><![CDATA[spotlight]]></category>

		<guid isPermaLink="false">http://chris-miller.org/?p=349</guid>
		<description><![CDATA[The Finder is brilliant.  It does exactly what it says on the tin.  You can zoom around your filesystem and find things with relative ease; copy, cut, paste and move files.  It does it all, but it lacks any batch renaming to help any of us who have the laborious task of [...]]]></description>
			<content:encoded><![CDATA[<p><img src="http://chris-miller.org/wp-content/uploads/2009/12/NameChangerIcon-150x150.png" alt="NameChanger" title="NameChanger" width="150" height="150" class="alignright size-thumbnail wp-image-350" />The Finder is brilliant.  It does exactly what it says on the tin.  You can zoom around your filesystem and find things with relative ease; copy, cut, paste and move files.  It does it all, but it lacks any batch renaming to help any of us who have the laborious task of renaming dozens, or worse, hundreds of files.</p>
<p>That&#8217;s where <a href="http://www.mrrsoftware.com/MRRSoftware/NameChanger.html" title="NameChanger">NameChanger</a> comes in.  NameChanger is a piece of free software from <a href="http://www.mrrsoftware.com/MRRSoftware/Home.html">MRR Software</a>.  Basically it allows you to rename large batches of files with some simple pattern matching.</p>
<p><span id="more-349"></span><div id="batch-renaming-files-in-mac-os-x_image1" class="wp-caption aligncenter" style="width: 560px"><img src="http://chris-miller.org/wp-content/uploads/2009/12/NameChanger.png" alt="Changing the names of some videos" title="NameChanger in use" width="550 height="327" class="size-full wp-image-352" /><p class="wp-caption-text">Changing the names of some videos</p></div></p>
<p>It&#8217;s all pretty simple really:</p>
<ol>
<li>drag the target files into the application window</li>
<li>select the type of name matching you require from: replace first, replace last, replace all, replace wildcard, append, prepend, sequencing and date-stamping</li>
<li>enter your criteria, <a href="#batch-renaming-files-in-mac-os-x_image1" title="My shopping" onmouseover="document.getElementById('batch-renaming-files-in-mac-os-x_image1').style.borderColor = '#2266aa';" onmouseout="document.getElementById('batch-renaming-files-in-mac-os-x_image1').style.borderColor = '#d6d6d6';">above I&#8217;ve replaced the first occurrence of &#8216;.&#8217; with &#8216;&nbsp;-&nbsp;&#8217;</a></li>
<li>hit the &#8216;Rename&#8217; button and you&#8217;re done</li>
</ol>
<h3>Grab a copy</h3>
<p>Here&#8217;s the blurb</p>
<blockquote><p>
NameChanger<br />
Rename a list of files quickly and easily.<br />
See how the names will change as you type.
</p></blockquote>
<ul>
<li><a href="http://www.mrrsoftware.com/">the developer&#8217;s site</a></li>
<li><a href="http://www.mrrsoftware.com/MRRSoftware/NameChanger.html">NameChanger download page</a></li>
</ul>
<p>Good bit of software.  Simple, free, intuitive; all in all, a keeper.<br />
- Chris</p>
<div class="feedflare">
<a href="http://feeds.feedburner.com/~ff/chris-miller?a=A0mNJp_0SU8:kxMZGNfunsw:yIl2AUoC8zA"><img src="http://feeds.feedburner.com/~ff/chris-miller?d=yIl2AUoC8zA" border="0"></img></a> <a href="http://feeds.feedburner.com/~ff/chris-miller?a=A0mNJp_0SU8:kxMZGNfunsw:D7DqB2pKExk"><img src="http://feeds.feedburner.com/~ff/chris-miller?i=A0mNJp_0SU8:kxMZGNfunsw:D7DqB2pKExk" border="0"></img></a> <a href="http://feeds.feedburner.com/~ff/chris-miller?a=A0mNJp_0SU8:kxMZGNfunsw:F7zBnMyn0Lo"><img src="http://feeds.feedburner.com/~ff/chris-miller?i=A0mNJp_0SU8:kxMZGNfunsw:F7zBnMyn0Lo" border="0"></img></a> <a href="http://feeds.feedburner.com/~ff/chris-miller?a=A0mNJp_0SU8:kxMZGNfunsw:V_sGLiPBpWU"><img src="http://feeds.feedburner.com/~ff/chris-miller?i=A0mNJp_0SU8:kxMZGNfunsw:V_sGLiPBpWU" border="0"></img></a> <a href="http://feeds.feedburner.com/~ff/chris-miller?a=A0mNJp_0SU8:kxMZGNfunsw:qj6IDK7rITs"><img src="http://feeds.feedburner.com/~ff/chris-miller?d=qj6IDK7rITs" border="0"></img></a> <a href="http://feeds.feedburner.com/~ff/chris-miller?a=A0mNJp_0SU8:kxMZGNfunsw:gIN9vFwOqvQ"><img src="http://feeds.feedburner.com/~ff/chris-miller?i=A0mNJp_0SU8:kxMZGNfunsw:gIN9vFwOqvQ" border="0"></img></a>
</div><img src="http://feeds.feedburner.com/~r/chris-miller/~4/A0mNJp_0SU8" height="1" width="1"/>]]></content:encoded>
			<wfw:commentRss>http://chris-miller.org/archives/2009/12/08/batch-renaming-files-in-mac-os-x/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		<feedburner:origLink>http://chris-miller.org/archives/2009/12/08/batch-renaming-files-in-mac-os-x/</feedburner:origLink></item>
		<item>
		<title>Shopping++</title>
		<link>http://feedproxy.google.com/~r/chris-miller/~3/rE3mcya2T9U/</link>
		<comments>http://chris-miller.org/archives/2009/10/02/shopping/#comments</comments>
		<pubDate>Fri, 02 Oct 2009 13:08:33 +0000</pubDate>
		<dc:creator>Chris</dc:creator>
				<category><![CDATA[Personal]]></category>
		<category><![CDATA[delivery]]></category>
		<category><![CDATA[fajitas]]></category>
		<category><![CDATA[food]]></category>
		<category><![CDATA[sainsbury's]]></category>
		<category><![CDATA[Tesco]]></category>

		<guid isPermaLink="false">http://chris-miller.org/?p=305</guid>
		<description><![CDATA[I&#8217;ve not posted in ages. Sorry.
Just a quick post to say that I&#8217;m very impressed with the Sainsbury&#8217;s delivery service and web store, much more than the Tesco equivalent.
I got over £100 worth of groceries delivered within the one hour slot I picked, not the 2-3 hour slots that Tesco use, and everything was there, [...]]]></description>
			<content:encoded><![CDATA[<p>I&#8217;ve not posted in ages. Sorry.</p>
<p><div id="shopping_image1" class="wp-caption alignright" style="width: 250px"><a href="http://chris-miller.org/photos/photo/3973729793/shopping.html" title="Shopping++"><img alt="Image 1: Shopping++" src="http://farm4.static.flickr.com/3441/3973729793_c7c81782b6_m.jpg" title="Shopping++" width="240" height="180" /></a><p class="wp-caption-text">Shopping++</p></div>Just a quick post to say that I&#8217;m very impressed with the <a href="http://sainsburys.co.uk">Sainsbury&#8217;s</a> delivery service and web store, much more than the Tesco equivalent.</p>
<p>I got over £100 worth of groceries delivered within the one hour slot I picked, not the 2-3 hour slots that Tesco use, and everything was there, good quality and undamaged.</p>
<p>Not only that but having purchased over <a href="#shopping_image1" title="My shopping" onmouseover="document.getElementById('shopping_image1').style.borderColor = '#2266aa';" onmouseout="document.getElementById('shopping_image1').style.borderColor = '#d6d6d6';">£100 worth of shopping</a> the delivery cost is waived.  So I managed to get a month worth of food and drink without the hassle of going shopping and somehow carting everything back.</p>
<p><span id="more-305"></span><div id="shopping_image2" class="wp-caption alignleft" style="width: 250px"><a href="http://chris-miller.org/photos/photo/3973730311/spicy-fajitas.html" title="Spicy Fajitas"><img alt="Image 2: Spicy Fajitas" src="http://farm3.static.flickr.com/2609/3973730311_f4cb555418_m.jpg" title="Spicy Fajitas" width="240" height="180" /></a><p class="wp-caption-text">Spicy Fajitas</p></div>Everything comes in an orange Sainsbury&#8217;s bag, except anything that&#8217;s been substituted (with the closest match due to lack of stock) which came in blue bags.  The delivery person offered to take any of the substitutions back and my account would be credited with the relevant cost if he did.</p>
<p>My cupboards, fridge and freezer and completely and utterly stocked to the brim, there&#8217;s no room for <em>anything</em> else, at all! Now I&#8217;ve just got to <a href="#shopping_image2" title="FOOD!" onmouseover="document.getElementById('shopping_image2').style.borderColor = '#2266aa';" onmouseout="document.getElementById('shopping_image2').style.borderColor = '#d6d6d6';">eat it all</a>.</p>
<p>All in all, an easy and hassle free transaction.  Qudos to Sainsbury&#8217;s, A+++++ GOOD SELLER, WOULD SHOP AGAIN.<br />
- Chris</p>
<div class="feedflare">
<a href="http://feeds.feedburner.com/~ff/chris-miller?a=rE3mcya2T9U:0_nVlzppv_8:yIl2AUoC8zA"><img src="http://feeds.feedburner.com/~ff/chris-miller?d=yIl2AUoC8zA" border="0"></img></a> <a href="http://feeds.feedburner.com/~ff/chris-miller?a=rE3mcya2T9U:0_nVlzppv_8:D7DqB2pKExk"><img src="http://feeds.feedburner.com/~ff/chris-miller?i=rE3mcya2T9U:0_nVlzppv_8:D7DqB2pKExk" border="0"></img></a> <a href="http://feeds.feedburner.com/~ff/chris-miller?a=rE3mcya2T9U:0_nVlzppv_8:F7zBnMyn0Lo"><img src="http://feeds.feedburner.com/~ff/chris-miller?i=rE3mcya2T9U:0_nVlzppv_8:F7zBnMyn0Lo" border="0"></img></a> <a href="http://feeds.feedburner.com/~ff/chris-miller?a=rE3mcya2T9U:0_nVlzppv_8:V_sGLiPBpWU"><img src="http://feeds.feedburner.com/~ff/chris-miller?i=rE3mcya2T9U:0_nVlzppv_8:V_sGLiPBpWU" border="0"></img></a> <a href="http://feeds.feedburner.com/~ff/chris-miller?a=rE3mcya2T9U:0_nVlzppv_8:qj6IDK7rITs"><img src="http://feeds.feedburner.com/~ff/chris-miller?d=qj6IDK7rITs" border="0"></img></a> <a href="http://feeds.feedburner.com/~ff/chris-miller?a=rE3mcya2T9U:0_nVlzppv_8:gIN9vFwOqvQ"><img src="http://feeds.feedburner.com/~ff/chris-miller?i=rE3mcya2T9U:0_nVlzppv_8:gIN9vFwOqvQ" border="0"></img></a>
</div><img src="http://feeds.feedburner.com/~r/chris-miller/~4/rE3mcya2T9U" height="1" width="1"/>]]></content:encoded>
			<wfw:commentRss>http://chris-miller.org/archives/2009/10/02/shopping/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		<feedburner:origLink>http://chris-miller.org/archives/2009/10/02/shopping/</feedburner:origLink></item>
		<item>
		<title>JavaScript custom controls</title>
		<link>http://feedproxy.google.com/~r/chris-miller/~3/XdQrFXyU9Aw/</link>
		<comments>http://chris-miller.org/archives/2009/02/15/javascript-custom-controls/#comments</comments>
		<pubDate>Sun, 15 Feb 2009 20:19:57 +0000</pubDate>
		<dc:creator>Chris</dc:creator>
				<category><![CDATA[Coding]]></category>
		<category><![CDATA[HCI]]></category>
		<category><![CDATA[custom controls]]></category>
		<category><![CDATA[interaction]]></category>
		<category><![CDATA[JavaScript]]></category>
		<category><![CDATA[ui]]></category>
		<category><![CDATA[Web]]></category>

		<guid isPermaLink="false">http://chris-miller.org/?p=185</guid>
		<description><![CDATA[I spend a lot of time writing bespoke content management systems, a lot!  I&#8217;m always trying to add some small, lightweight additions to make the user experience a little bit better.  One means of doing this is by providing some better custom controls which give good user feedback and emulate similar offline controls.
One [...]]]></description>
			<content:encoded><![CDATA[<p>I spend a lot of time writing bespoke content management systems, a lot!  I&#8217;m always trying to add some small, lightweight additions to make the user experience a little bit better.  One means of doing this is by providing some better custom controls which give good user feedback and emulate similar offline controls.</p>
<div id="javascript-custom-controls_figure1" class="wp-caption alignright" style="width: 185px"><img alt="Figure 1: Ordering Control" src="http://chris-miller.org/images/ordering_field.png" title="Ordering Control" width="175" height="26" /><p class="wp-caption-text"><strong>Figure 1</strong>: Ordering Control</p></div>One such control is a linear range control, catchy I know, which allows the user to select a value within a particular range with a given default value.  An example of this may be selecting an ordering value for a blog post, <a href="#javascript-custom-controls_figure1" title="Ordering Control" onmouseover="document.getElementById('javascript-custom-controls_figure1').style.borderColor = '#2266aa';" onmouseout="document.getElementById('javascript-custom-controls_figure1').style.borderColor = '#d6d6d6';">Figure 1</a>, ranging from say -100 to 100 with a default value of 0.  Posts in our imaginary blog would be ordered by this ordering field ascending with 0 being the default value, resulting in posts being ordered automatically by date.  Rather than using a plain text box to allow the user to enter the ordering value directly, subsequently giving us little or no control over the contents of the field until the form is submitted and no means to convey the nature of the field itself, we can create controls to manipulate the value ourselves.</p>
<p>Creating a custom control allows us to do a number of things that we just cannot do with a normal HTML form element:<br />
<div id="javascript-custom-controls_figures234" class="wp-caption alignright" style="width: 185px"><img id="javascript-custom-controls_figure2" alt="Figure 2: Lower Bounds" src="http://chris-miller.org/images/ordering_field_lower.png" title="Lower Bounds" width="175" height="26" /> <img id="javascript-custom-controls_figure3" alt="Figure 3: Non-Default Value" src="http://chris-miller.org/images/ordering_field_middle.png" title="Non-Default Value" width="175" height="26" /> <img id="javascript-custom-controls_figure4" alt="Figure 4: Upper Bounds" src="http://chris-miller.org/images/ordering_field_upper.png" title="Upper Bounds" width="175" height="26" /><p class="wp-caption-text"><strong>Figures 2, 3 &amp; 4</strong>: Showing lower bounds, non-default value and upper bounds</p></div>
<ul>
<li>Display relevant information instead of certain values, such as showing Automatic at 0 in <a href="#javascript-custom-controls_figure1" title="Ordering Control" onmouseover="document.getElementById('javascript-custom-controls_figure1').style.borderColor = '#2266aa';" onmouseout="document.getElementById('javascript-custom-controls_figure1').style.borderColor = '#d6d6d6';">Figure 1</a></li>
<li>Show when the upper and lower bounds are reached, for example at <a href="#javascript-custom-controls_figure2" title="Lower Limit" onmouseover="document.getElementById('javascript-custom-controls_figures234').style.borderColor = '#2266aa';" onmouseout="document.getElementById('javascript-custom-controls_figures234').style.borderColor = '#d6d6d6';">-100</a> and <a href="#javascript-custom-controls_figure4" title="Upper Limit" onmouseover="document.getElementById('javascript-custom-controls_figures234').style.borderColor = '#2266aa';" onmouseout="document.getElementById('javascript-custom-controls_figures234').style.borderColor = '#d6d6d6';">100</a> as per our example</li>
<li>Allow the user to reset the value to the default or previous setting</li>
<li>Give some inkling into how the control should be used</li>
</ul>
<p><span id="more-185"></span><br />
<h3>Controls</h3>
<div class="wp-caption alignright" style="width: 323px"><img alt="Annotated Ordering Field" src="http://chris-miller.org/images/ordering_field_annotated.png" title="Annotated Ordering Field" width="313" height="63" /><p class="wp-caption-text"><strong>Figure 5</strong>: Annotated Ordering Field</p></div>By using JavaScript <code>onclick</code> or <code>onmousedown</code> events we can manipulate the contents of our ordering field held behind the scenes.  The addition of functions and some variables defining the bounds and the default value of our control then allows us to constrain the upper and lower limits, as we&#8217;ve seen, and to reset the field back to it&#8217;s defaults.  This gives us the following interaction:</p>
<ul>
<li>Previous/Next: update the value of the field to the previous or next value in the range</li>
<li>Reset: reset the value to the pre-defined default value</li>
<li>Display: allow us to display feedback or custom messages based on the value of the field we&#8217;re manipulating</li>
</ul>
<p>This interaction is fairly rudimentary and not very exciting to say the least.  We really want to provide more desktop-like interaction via our own custom controls such as the ability to click-and-hold a button in order to scroll through available values.  With such a control, in the majority of desktop applications, when the button is held the action that button denotes will be repeated after a short delay usually with increasing speed the longer it&#8217;s held.  We can emulate this in JavaScript using a timeout to create the pause and a modifier to decrease the length of this pause and in turn increase the speed with which the actions are executed.</p>
<p><a href="#javascript-custom-controls_snippit1" onmouseover="document.getElementById('javascript-custom-controls_snippit1').style.borderColor = '#2266aa';" onmouseout="document.getElementById('javascript-custom-controls_snippit1').style.borderColor = '#d6d6d6';" title="Click-and-hold example">Code Snippit 1</a> contains a brief outline of how to create a mechanism for firing events when a button is held.</p>
<div class="code_header">
<p>
<strong>Code Snippit 1</strong>: Rough JavaScript to deal with the click-and-hold updating mechanism
</p>
<pre class="javascript" name="code" id="javascript-custom-controls_snippit1" >
&lt;script type="text/javascript"&gt;
    var timeout          = 1000;
    var timeout_limit    = 200;
    var timeout_speedup  = 1.5;
    var default          = 0;
    var lower_bounds     = -100;
    var upper_bounds     = 100;

    function setView( str, element ) {
        // Update the ordering element setting the values and
        // icons as necessary
      ...
    }

    function updateVariable() {
        // Update variable
        order        = document.getElementById( "ordering" );
        order_disp   = document.getElementById( "order_disp" );

        // Update variable
        order.value  = order.value + 1;

        // Check Bounds
        if( order.value &gt;= upper_bounds )
            setView( "upper_bounds", order_disp );
        elseif( order.value == default )
            setView( "Default", order_disp );
        else
            setView( "" + order.value, order_disp );

        // Start firing click-and-hold events
        if( timeout &gt; timeout_limit )
            timeout = max( timeout / timeout_speedup, timeout_limit );
        t = setTimeout( updateVariable, timeout );
    }

    function buttonStop( t ) {
        timeout = 1000;
        clearTimeout( t );
    }
&lt;/script&gt;
</pre>
</div>
<p><code>timeout</code> is the time between calling button events, the <code>timeout_speedup</code> modifier is used to recalculate the timeout on each event in order to increase the speed with which the event is fired.  We set a lower limit, <code>timeout_limit</code>, to ensure that the events aren&#8217;t called too quickly to update the display and to give the user time to react once they near their desired value.  A plot of time between ticks against ticks is shown in <a href="#javascript-custom-controls_graph1" onmouseover="document.getElementById('javascript-custom-controls_graph1').style.borderColor = '#2266aa';" onmouseout="document.getElementById('javascript-custom-controls_graph1').style.borderColor = '#d6d6d6';" title="Time between ticks vs. Ticks">Graph 1</a>, as you can see it quickly ramps up so <code>timeout</code> is set to the lower limit, much like you would expect from a desktop application&#8217;s click-and-hold button interaction.</p>
<p><div id="javascript-custom-controls_graph1" class="wp-caption aligncenter" style="width: 551px"><img alt="Timeout vs. Ticks" src="http://chris-miller.org/images/timeout_graph.png" title="Timeout vs. Ticks" width="541" height="250" /><p class="wp-caption-text"><strong>Graph 1</strong>: Timeout vs. Ticks</p></div>
<p><a href="#javascript-custom-controls_snippit2" onmouseover="document.getElementById('javascript-custom-controls_snippit2').style.borderColor = '#2266aa';" onmouseout="document.getElementById('javascript-custom-controls_snippit2').style.borderColor = '#d6d6d6';" title="HTML button">Code Snippit 2</a> shows sample HTML used to create the next button with the appropriate <code>onmousedown</code>, <code>onmouseup</code> and <code>onmouseout</code> JavaScript calls to add the desired functionality to the button.</p>
<div id="javascript-custom-controls_snippit2" class="code_header">
<p>
<strong>Code Snippit 2</strong>: Button calling the events when clicked
</p>
<pre class="html" name="code">
&lt;img
    title="Next" src="images/icons/arrow_right.png" alt="&amp;rarr;"
    <!-- Update the variable and fire click-and-hold events -->
    onmousedown="updateVariable();"
    <!-- Stop the timer if mouse released -->
    onmouseup="buttonStop( t );"
    <!-- Stop the timer if the mouse moves off the control -->
    onmouseout="buttonStop( t );"
/&gt;
</pre>
</div>
<p>We use both <code>onmouseup</code> and <code>onmouseout</code> to ensure that the click-and-hold behavior ceases when the user either releases the mouse button or moves the cursor off the control.</p>
<div id="javascript-custom-controls_figure6" class="wp-caption alignright" style="width: 185px"><img alt="Textentry into ordering field" src="http://chris-miller.org/images/ordering_field_textentry.png" title="Textentry into ordering field" width="175" height="36" /><p class="wp-caption-text"><strong>Figure 6</strong>: Textentry into ordering field</p></div>We can extend the custom control even further and give the user a less stringent method of inputting a value by allowing them to type directly into the field in the same manner as the original textbox, <a href="#javascript-custom-controls_figure6" title="Textentry into ordering field" onmouseover="document.getElementById('javascript-custom-controls_figure6').style.borderColor = '#2266aa';" onmouseout="document.getElementById('javascript-custom-controls_figure6').style.borderColor = '#d6d6d6';">Figure 6</a>.</p>
<h3>Feedback</h3>
<p>Here&#8217;s where our custom controls can really begin to shine, we can give the user direct feedback in the control that they&#8217;re manipulating in real-time.  Sure we can do this with JavaScript as it stands, but extending beyond the &#8220;red border = wrong&#8221; methodology we can give visual cues to the user to show that they&#8217;re trying to do something thata&#8217;s wrong and what specifically is wrong with what they&#8217;re doing.</p>
<p>Showing the bounds of the field is easy using the visual cues we&#8217;ve detailed in <a href="#javascript-custom-controls_figures234" title="Upper Limit" onmouseover="document.getElementById('javascript-custom-controls_figures234').style.borderColor = '#2266aa';" onmouseout="document.getElementById('javascript-custom-controls_figures234').style.borderColor = '#d6d6d6';">Figures 2 &#038; 4</a>.  Other visual cues we can use are that of text/background colouring to show that an error occurred.  We can also, using the same timeout methods used for the click-and-hold interaction, display <em>useful</em> messages to the user for a brief time before correcting their mistakes telling them what they did wrong and why their entries have been changed, <a href="#javascript-custom-controls_figure7" title="Error detection and correction" onmouseover="document.getElementById('javascript-custom-controls_figure7').style.borderColor = '#2266aa';" onmouseout="document.getElementById('javascript-custom-controls_figure7').style.borderColor = '#d6d6d6';">Figure 7</a>.</p>
<p><div id="javascript-custom-controls_figure7" class="wp-caption alignright" style="width: 573px"><img alt="Error detection and correction" src="http://chris-miller.org/images/ordering_field_errorcorrection.png" title="Error detection and correction" width="563" height="36" /><p class="wp-caption-text"><strong>Figure 7</strong>: Error detection and correction</p></div>
<h3 style="margin-top: 10px;">It&#8217;s only an example!</h3>
<p><div class="wp-caption alignright" style="width: 319px"><img alt="Other possible controls?" src="http://chris-miller.org/images/controls_other.png" title="Other possible controls?" width="309" height="59" /><p class="wp-caption-text"><strong>Figure 8</strong>: Other possible controls?</p></div>Of course using such controls for an ordering field is only one example where we can extend upon HTML form elements with this simple control.  This type of control mechanism could be used for <em>any</em> field that has a linear progression in values.  Not only that, you could extend upon the functionality of this example to meet your specific requirements, by wrapping the bounds around to the start, having varying degrees of scale over numerous controls that are swapped in and out for fine or granular interaction or just have it toggle between two set values.</p>
<p>What&#8217;s the point?  There&#8217;s so much we can do nowadays in terms of interaction, even on the web.  Try to add a little bit of interactive zest to your HTML controls, it makes everyone&#8217;s experience that little bit easier and better.</p>
<p>Thanks for reading,<br />
- Chris</p>
<div class="feedflare">
<a href="http://feeds.feedburner.com/~ff/chris-miller?a=XdQrFXyU9Aw:yE7N8uwmv-4:yIl2AUoC8zA"><img src="http://feeds.feedburner.com/~ff/chris-miller?d=yIl2AUoC8zA" border="0"></img></a> <a href="http://feeds.feedburner.com/~ff/chris-miller?a=XdQrFXyU9Aw:yE7N8uwmv-4:D7DqB2pKExk"><img src="http://feeds.feedburner.com/~ff/chris-miller?i=XdQrFXyU9Aw:yE7N8uwmv-4:D7DqB2pKExk" border="0"></img></a> <a href="http://feeds.feedburner.com/~ff/chris-miller?a=XdQrFXyU9Aw:yE7N8uwmv-4:F7zBnMyn0Lo"><img src="http://feeds.feedburner.com/~ff/chris-miller?i=XdQrFXyU9Aw:yE7N8uwmv-4:F7zBnMyn0Lo" border="0"></img></a> <a href="http://feeds.feedburner.com/~ff/chris-miller?a=XdQrFXyU9Aw:yE7N8uwmv-4:V_sGLiPBpWU"><img src="http://feeds.feedburner.com/~ff/chris-miller?i=XdQrFXyU9Aw:yE7N8uwmv-4:V_sGLiPBpWU" border="0"></img></a> <a href="http://feeds.feedburner.com/~ff/chris-miller?a=XdQrFXyU9Aw:yE7N8uwmv-4:qj6IDK7rITs"><img src="http://feeds.feedburner.com/~ff/chris-miller?d=qj6IDK7rITs" border="0"></img></a> <a href="http://feeds.feedburner.com/~ff/chris-miller?a=XdQrFXyU9Aw:yE7N8uwmv-4:gIN9vFwOqvQ"><img src="http://feeds.feedburner.com/~ff/chris-miller?i=XdQrFXyU9Aw:yE7N8uwmv-4:gIN9vFwOqvQ" border="0"></img></a>
</div><img src="http://feeds.feedburner.com/~r/chris-miller/~4/XdQrFXyU9Aw" height="1" width="1"/>]]></content:encoded>
			<wfw:commentRss>http://chris-miller.org/archives/2009/02/15/javascript-custom-controls/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		<feedburner:origLink>http://chris-miller.org/archives/2009/02/15/javascript-custom-controls/</feedburner:origLink></item>
		<item>
		<title>New blog theme – Plainscape</title>
		<link>http://feedproxy.google.com/~r/chris-miller/~3/V1pZwFRZ0wM/</link>
		<comments>http://chris-miller.org/archives/2009/02/15/new-blog-theme-plainscap/#comments</comments>
		<pubDate>Sun, 15 Feb 2009 03:04:34 +0000</pubDate>
		<dc:creator>Chris</dc:creator>
				<category><![CDATA[Blogging]]></category>
		<category><![CDATA[blog]]></category>
		<category><![CDATA[plainscape]]></category>
		<category><![CDATA[simple]]></category>
		<category><![CDATA[theme]]></category>
		<category><![CDATA[white]]></category>

		<guid isPermaLink="false">http://chris-miller.org/?p=189</guid>
		<description><![CDATA[I&#8217;ve not blogged in a while, although I have been playing with this site, testing various themes that&#8217;re out there on the web.  I tried numerous dark and light varieties, some heavy on design others not so much, many of the image heavy themes looked nice initially but lacked that overall niceness.  I [...]]]></description>
			<content:encoded><![CDATA[<p><a href="http://chris-miller.org/photos/photo/3279673379/plainscape.html" class="tt-flickr tt-flickr-Small" title="Plainscape"><img class="alignright" src="http://farm4.static.flickr.com/3170/3279673379_feaf7cfc66_m.jpg" alt="Plainscape" width="240" height="202" /></a>I&#8217;ve not blogged in a while, although I have been playing with this site, testing various themes that&#8217;re out there on the web.  I tried numerous dark and light varieties, some heavy on design others not so much, many of the image heavy themes looked nice initially but lacked that overall niceness.  I had finally settled on <a href="http://wordpress.org/extend/themes/inove">iNove</a> but I&#8217;ve since decided that it was too cluttered.  Short of making my own theme up, which I never manage to get all the way through, I thought it best to find a nice clean one on the web.</p>
<p>After hours of painful searching this evening I managed to decided upon using the <a href="http://srinig.com/wordpress/themes/plainscape/">Plainscape</a> theme.  I may well configure it slightly for this blog, I may even go as far as to add a header image, but let&#8217;s not get too adventurous!</p>
<p>So for the foreseeable future this blog will look nice, plain and simple (it&#8217;ll probably change when I get bored but it gives me something to blog about!).<br />
- Chris</p>
<div class="feedflare">
<a href="http://feeds.feedburner.com/~ff/chris-miller?a=V1pZwFRZ0wM:Bkeb2Pm6Agk:yIl2AUoC8zA"><img src="http://feeds.feedburner.com/~ff/chris-miller?d=yIl2AUoC8zA" border="0"></img></a> <a href="http://feeds.feedburner.com/~ff/chris-miller?a=V1pZwFRZ0wM:Bkeb2Pm6Agk:D7DqB2pKExk"><img src="http://feeds.feedburner.com/~ff/chris-miller?i=V1pZwFRZ0wM:Bkeb2Pm6Agk:D7DqB2pKExk" border="0"></img></a> <a href="http://feeds.feedburner.com/~ff/chris-miller?a=V1pZwFRZ0wM:Bkeb2Pm6Agk:F7zBnMyn0Lo"><img src="http://feeds.feedburner.com/~ff/chris-miller?i=V1pZwFRZ0wM:Bkeb2Pm6Agk:F7zBnMyn0Lo" border="0"></img></a> <a href="http://feeds.feedburner.com/~ff/chris-miller?a=V1pZwFRZ0wM:Bkeb2Pm6Agk:V_sGLiPBpWU"><img src="http://feeds.feedburner.com/~ff/chris-miller?i=V1pZwFRZ0wM:Bkeb2Pm6Agk:V_sGLiPBpWU" border="0"></img></a> <a href="http://feeds.feedburner.com/~ff/chris-miller?a=V1pZwFRZ0wM:Bkeb2Pm6Agk:qj6IDK7rITs"><img src="http://feeds.feedburner.com/~ff/chris-miller?d=qj6IDK7rITs" border="0"></img></a> <a href="http://feeds.feedburner.com/~ff/chris-miller?a=V1pZwFRZ0wM:Bkeb2Pm6Agk:gIN9vFwOqvQ"><img src="http://feeds.feedburner.com/~ff/chris-miller?i=V1pZwFRZ0wM:Bkeb2Pm6Agk:gIN9vFwOqvQ" border="0"></img></a>
</div><img src="http://feeds.feedburner.com/~r/chris-miller/~4/V1pZwFRZ0wM" height="1" width="1"/>]]></content:encoded>
			<wfw:commentRss>http://chris-miller.org/archives/2009/02/15/new-blog-theme-plainscap/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		<feedburner:origLink>http://chris-miller.org/archives/2009/02/15/new-blog-theme-plainscap/</feedburner:origLink></item>
		<item>
		<title>Get multi-class elements in JavaScript</title>
		<link>http://feedproxy.google.com/~r/chris-miller/~3/qc0fUdgbJuE/</link>
		<comments>http://chris-miller.org/archives/2008/10/02/get-multi-class-elements-in-javascript/#comments</comments>
		<pubDate>Thu, 02 Oct 2008 20:35:49 +0000</pubDate>
		<dc:creator>Chris</dc:creator>
				<category><![CDATA[Coding]]></category>
		<category><![CDATA[Computing]]></category>
		<category><![CDATA[class]]></category>
		<category><![CDATA[getElementsByClass]]></category>
		<category><![CDATA[JavaScript]]></category>
		<category><![CDATA[multi-class elements]]></category>
		<category><![CDATA[XHTML]]></category>

		<guid isPermaLink="false">http://chris-miller.org/?p=184</guid>
		<description><![CDATA[As any person who uses JavaScript for client side interaction knows, getting elements by their class is one essential thing we need to do over and over again.  For the most part using a function equivalent to the one shown below will do.


Code Snippit 1: Simplistic getElementsByClass() JavaScript method


function getElementsByClass( className ) {
  [...]]]></description>
			<content:encoded><![CDATA[<p>As any person who uses JavaScript for client side interaction knows, getting elements by their class is one essential thing we need to do over and over again.  For the most part using a function equivalent to the one <a href="#get-multi-class-elements-in-javascript_snippit1" title="Simple getElementsByClass()" onmouseover="document.getElementById('get-multi-class-elements-in-javascript_snippit1).style.borderColor = '#2266aa';" onmouseout="document.getElementById('get-multi-class-elements-in-javascript_snippit1').style.borderColor = '#d6d6d6';">shown below</a> will do.</p>
<div id="get-multi-class-elements-in-javascript_snippit1" class="code_header">
<p>
<strong>Code Snippit 1</strong>: Simplistic getElementsByClass() JavaScript method
</p>
<pre class="javascript" name="code">
function getElementsByClass( className ) {
    var all =
        document.all ? document.all : document.getElementsByTagName( '*' );
    var elements = new Array();
    for( var e = 0; e < all.length; e++ ) {
        if (all[e].className == className) {
            elements[elements.length] = all[e];
        }
    }
    return elements;
}
</pre>
</div>
<p>This function basically checks the string that is entered into the class attribute for each HTML element and returns all elements where there is an exact match.</p>
<p>This method will fail however if we're trying to select elements that have multiple class associations.  We need to use something more complex when, for example, creating a list of items that are filterable by class when arranged in overlapping groups.  Splitting the class attribute on space characters will allow us to check for matches in these cases:</p>
<div id="get-multi-class-elements-in-javascript_snippit2" class="code_header">
<p>
<strong>Code Snippit 2</strong>: More advanced getElementsByClass() function
</p>
<pre class="javascript" name="code">
function getElementsByClass( className ) {
    var all =
        document.all ? document.all : document.getElementsByTagName( '*' );
    var elements = new Array();
    for( var e = 0; e < all.length; e++ ) {
        var classes = all[e].className.split(/\s/g);
        for( var c = 0; c < classes.length; c++ ) {
            if( classes[c] == className ) {
                elements[elements.length] = all[e];
            }
        }
    }
    return elements;
}
</pre>
</div>
<p>The <a href="#get-multi-class-elements-in-javascript_snippit2" title="Advanced getElementsByClass()" onmouseover="document.getElementById('get-multi-class-elements-in-javascript_snippit2).style.borderColor = '#2266aa';" onmouseout="document.getElementById('get-multi-class-elements-in-javascript_snippit2').style.borderColor = '#d6d6d6';">function above</a> does pretty much the same as the first one, however splits the class attribute string on the spaces and loops through them, trying to match the parts individually.  This should match on elements with singular and multiple class names associated with them and solve any problems with multiple classed elements.<br />
- Chris</pre>
<div class="feedflare">
<a href="http://feeds.feedburner.com/~ff/chris-miller?a=qc0fUdgbJuE:_DZ9sxs1Rdg:yIl2AUoC8zA"><img src="http://feeds.feedburner.com/~ff/chris-miller?d=yIl2AUoC8zA" border="0"></img></a> <a href="http://feeds.feedburner.com/~ff/chris-miller?a=qc0fUdgbJuE:_DZ9sxs1Rdg:D7DqB2pKExk"><img src="http://feeds.feedburner.com/~ff/chris-miller?i=qc0fUdgbJuE:_DZ9sxs1Rdg:D7DqB2pKExk" border="0"></img></a> <a href="http://feeds.feedburner.com/~ff/chris-miller?a=qc0fUdgbJuE:_DZ9sxs1Rdg:F7zBnMyn0Lo"><img src="http://feeds.feedburner.com/~ff/chris-miller?i=qc0fUdgbJuE:_DZ9sxs1Rdg:F7zBnMyn0Lo" border="0"></img></a> <a href="http://feeds.feedburner.com/~ff/chris-miller?a=qc0fUdgbJuE:_DZ9sxs1Rdg:V_sGLiPBpWU"><img src="http://feeds.feedburner.com/~ff/chris-miller?i=qc0fUdgbJuE:_DZ9sxs1Rdg:V_sGLiPBpWU" border="0"></img></a> <a href="http://feeds.feedburner.com/~ff/chris-miller?a=qc0fUdgbJuE:_DZ9sxs1Rdg:qj6IDK7rITs"><img src="http://feeds.feedburner.com/~ff/chris-miller?d=qj6IDK7rITs" border="0"></img></a> <a href="http://feeds.feedburner.com/~ff/chris-miller?a=qc0fUdgbJuE:_DZ9sxs1Rdg:gIN9vFwOqvQ"><img src="http://feeds.feedburner.com/~ff/chris-miller?i=qc0fUdgbJuE:_DZ9sxs1Rdg:gIN9vFwOqvQ" border="0"></img></a>
</div><img src="http://feeds.feedburner.com/~r/chris-miller/~4/qc0fUdgbJuE" height="1" width="1"/>]]></content:encoded>
			<wfw:commentRss>http://chris-miller.org/archives/2008/10/02/get-multi-class-elements-in-javascript/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		<feedburner:origLink>http://chris-miller.org/archives/2008/10/02/get-multi-class-elements-in-javascript/</feedburner:origLink></item>
		<item>
		<title>Suse Tips</title>
		<link>http://feedproxy.google.com/~r/chris-miller/~3/g8FnNZW85Zg/</link>
		<comments>http://chris-miller.org/archives/2008/07/01/suse-tips/#comments</comments>
		<pubDate>Tue, 01 Jul 2008 12:59:26 +0000</pubDate>
		<dc:creator>Chris</dc:creator>
				<category><![CDATA[Computing]]></category>
		<category><![CDATA[command line]]></category>
		<category><![CDATA[desktop]]></category>
		<category><![CDATA[Linux]]></category>
		<category><![CDATA[scrollbars]]></category>
		<category><![CDATA[Suse]]></category>
		<category><![CDATA[tips]]></category>
		<category><![CDATA[workspace switcher]]></category>

		<guid isPermaLink="false">http://chris-miller.org/?p=182</guid>
		<description><![CDATA[I&#8217;ve been using Suse at work now for over a year.  Once in a while I&#8217;ll find a shortcut or a handy little thing that I&#8217;ll find useful.  This blog post outlines a few of the handy shortcuts and tips that I&#8217;ve picked up and never readily knew.

Workspace Switcher

The Red Hat Workspace Switcher [...]]]></description>
			<content:encoded><![CDATA[<p>I&#8217;ve been using Suse at work now for over a year.  Once in a while I&#8217;ll find a shortcut or a handy little thing that I&#8217;ll find useful.  This blog post outlines a few of the handy shortcuts and tips that I&#8217;ve picked up and never readily knew.</p>
<p><span id="more-182"></span><br />
<h3>Workspace Switcher</h3>
<p><a href="http://www.flickr.com/photos/chrismiller/2628039178/" title="Workspace Switcher by Chris Miller, on Flickr"><img src="http://farm4.static.flickr.com/3155/2628039178_c26827f3d6_o.png" width="500" height="55" alt="Workspace Switcher" /></a><br />
The Red Hat Workspace Switcher is one of the Linux tools I use all the time.  I have two screens at work, however it still isn&#8217;t enough room to keep all my documents open, read mail  and so forth.  For this reason I use the workspace switcher with 4 workspaces, one for my work, another for email, one for FileMaker (the system we use for breifs and work management) and another spare.  One of the most useful key combos, not a particularly hard one to find &#8211; but perhaps the one I use the most heavily, is <code>Ctrl + Alt + [Arrow Key]</code> which allows me to move back and forward between each of these workspaces.</p>
<p>Another handy tip for using the workspace switcher is that you may move an window from one workspace to another simply by dragging it on the workspace switcher &#8211; simple as that.</p>
<h3>Command Line Applet</h3>
<p><a href="http://www.flickr.com/photos/chrismiller/2628039292/" title="SUSE Command Line Applet by Chris Miller, on Flickr"><img style="float: right;" src="http://farm4.static.flickr.com/3148/2628039292_72b7ca1bf9_o.png" width="190" height="51" alt="SUSE Command Line Applet" /></a><br />
Command Line is a GNOME Applet that sits on a panel at the top of my screen, from here you can quickly launch applications or kill processes as necessary &#8211; pretty much anything you would do in a terminal that doesn&#8217;t require feedback.</p>
<p>It&#8217;s not exactly groundbreaking but it&#8217;s handy if you need to quickly launch gedit, gftp or the likes to do something quickly.</p>
<h3>Scrollbars</h3>
<p>Scrollbars, a really common UI element, yet there were a few things I was surprised to find when using them in Suse.  Clicking one of the up or down arrows at either end of the scrollbar will tab the handle up or down as you would expect.  Right clicking on the up or down arrow on the other hand will scroll you to the top and bottom of the scrollable area respectively.</p>
<h3>View Desktop</h3>
<p>I&#8217;m a messy git, I open windows and don&#8217;t close them, layer them up and not bother to sort them in any way shape or form.  Given that, the view desktop shortcut is always useful to minimise all the active windows on the workspace you are in: <code>Ctrl + Alt + D</code></p>
<h3>Tips?</h3>
<p>Ok, so they&#8217;re not great tips, they&#8217;re handy for saving a bit of time here and there.  I do, however, use these all day at work and so the time saved adds up.  Gimme a shout if there&#8217;s any other decent tips that you know of.<br />
- Chris</p>
<div class="feedflare">
<a href="http://feeds.feedburner.com/~ff/chris-miller?a=g8FnNZW85Zg:23u4mUQtBS8:yIl2AUoC8zA"><img src="http://feeds.feedburner.com/~ff/chris-miller?d=yIl2AUoC8zA" border="0"></img></a> <a href="http://feeds.feedburner.com/~ff/chris-miller?a=g8FnNZW85Zg:23u4mUQtBS8:D7DqB2pKExk"><img src="http://feeds.feedburner.com/~ff/chris-miller?i=g8FnNZW85Zg:23u4mUQtBS8:D7DqB2pKExk" border="0"></img></a> <a href="http://feeds.feedburner.com/~ff/chris-miller?a=g8FnNZW85Zg:23u4mUQtBS8:F7zBnMyn0Lo"><img src="http://feeds.feedburner.com/~ff/chris-miller?i=g8FnNZW85Zg:23u4mUQtBS8:F7zBnMyn0Lo" border="0"></img></a> <a href="http://feeds.feedburner.com/~ff/chris-miller?a=g8FnNZW85Zg:23u4mUQtBS8:V_sGLiPBpWU"><img src="http://feeds.feedburner.com/~ff/chris-miller?i=g8FnNZW85Zg:23u4mUQtBS8:V_sGLiPBpWU" border="0"></img></a> <a href="http://feeds.feedburner.com/~ff/chris-miller?a=g8FnNZW85Zg:23u4mUQtBS8:qj6IDK7rITs"><img src="http://feeds.feedburner.com/~ff/chris-miller?d=qj6IDK7rITs" border="0"></img></a> <a href="http://feeds.feedburner.com/~ff/chris-miller?a=g8FnNZW85Zg:23u4mUQtBS8:gIN9vFwOqvQ"><img src="http://feeds.feedburner.com/~ff/chris-miller?i=g8FnNZW85Zg:23u4mUQtBS8:gIN9vFwOqvQ" border="0"></img></a>
</div><img src="http://feeds.feedburner.com/~r/chris-miller/~4/g8FnNZW85Zg" height="1" width="1"/>]]></content:encoded>
			<wfw:commentRss>http://chris-miller.org/archives/2008/07/01/suse-tips/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		<feedburner:origLink>http://chris-miller.org/archives/2008/07/01/suse-tips/</feedburner:origLink></item>
		<item>
		<title>Duckworthing</title>
		<link>http://feedproxy.google.com/~r/chris-miller/~3/zVrq8k_5uvU/</link>
		<comments>http://chris-miller.org/archives/2008/06/11/duckworthing/#comments</comments>
		<pubDate>Wed, 11 Jun 2008 17:54:46 +0000</pubDate>
		<dc:creator>Chris</dc:creator>
				<category><![CDATA[General]]></category>
		<category><![CDATA[broken]]></category>
		<category><![CDATA[Duckworthing]]></category>
		<category><![CDATA[glasses]]></category>
		<category><![CDATA[Jack Duckworth]]></category>

		<guid isPermaLink="false">http://chris-miller.org/?p=181</guid>
		<description><![CDATA[Well it&#8217;s finally happened, the pair of glasses I&#8217;ve had for going on four or five years now has finally given up.
This morning when I arrived at work and sat at my desk I did what I usually do.  I took my glasses off and gave them a clean on my shirt.  Usually [...]]]></description>
			<content:encoded><![CDATA[<p>Well it&#8217;s finally happened, the pair of glasses I&#8217;ve had for going on four or five years now has finally given up.</p>
<p>This morning when I arrived at work and sat at my desk I did what I usually do.  I took my glasses off and gave them a clean on my shirt.  Usually I just put them back on and get to the nitty-gritty, usually sitting sifting through emails to find out if any of the spam is actually useful.</p>
<p>Today, however was a different story indeed, as soon as I placed the glasses on my face I felt a ping and then everything went blurry.  I thought that the screw holding the lens into my frames had pinged out again, yes it&#8217;s happened before, but alas no!  No, the actual frame had broken right at the point where the rim meets the legs, leaving a jagged edge and a confounded Chris.</p>
<p><span id="more-181"></span><a style="float: right; margin-left: 5px; margin-bottom: 5px;" href="http://www.flickr.com/photos/chrismiller/2571064582/" title="Duckworthing by Chris Miller, on Flickr"><img src="http://farm4.static.flickr.com/3176/2571064582_bdca09d868_m.jpg" width="240" height="180" alt="Duckworthing" /></a></p>
<p>Anyway, after squinting for a while and ruling out superglue as a means to repair my glasses I eventually had to plump for <em>Jack Duckworth</em>ing them using some tape.  After which it was a quick call to the opticians to set up an appointment to get tested and some new glasses.  To my amazement I managed to get an appointment today, earlier this very afternoon.  An hour later and Â£155 down I&#8217;d managed to order two new pairs of glasses which should hopefully arrive sometime next week.</p>
<p>I&#8217;m continue to Duckworth until then though!<br />
- Chris</p>
<div class="feedflare">
<a href="http://feeds.feedburner.com/~ff/chris-miller?a=zVrq8k_5uvU:YEsrZnKyPzU:yIl2AUoC8zA"><img src="http://feeds.feedburner.com/~ff/chris-miller?d=yIl2AUoC8zA" border="0"></img></a> <a href="http://feeds.feedburner.com/~ff/chris-miller?a=zVrq8k_5uvU:YEsrZnKyPzU:D7DqB2pKExk"><img src="http://feeds.feedburner.com/~ff/chris-miller?i=zVrq8k_5uvU:YEsrZnKyPzU:D7DqB2pKExk" border="0"></img></a> <a href="http://feeds.feedburner.com/~ff/chris-miller?a=zVrq8k_5uvU:YEsrZnKyPzU:F7zBnMyn0Lo"><img src="http://feeds.feedburner.com/~ff/chris-miller?i=zVrq8k_5uvU:YEsrZnKyPzU:F7zBnMyn0Lo" border="0"></img></a> <a href="http://feeds.feedburner.com/~ff/chris-miller?a=zVrq8k_5uvU:YEsrZnKyPzU:V_sGLiPBpWU"><img src="http://feeds.feedburner.com/~ff/chris-miller?i=zVrq8k_5uvU:YEsrZnKyPzU:V_sGLiPBpWU" border="0"></img></a> <a href="http://feeds.feedburner.com/~ff/chris-miller?a=zVrq8k_5uvU:YEsrZnKyPzU:qj6IDK7rITs"><img src="http://feeds.feedburner.com/~ff/chris-miller?d=qj6IDK7rITs" border="0"></img></a> <a href="http://feeds.feedburner.com/~ff/chris-miller?a=zVrq8k_5uvU:YEsrZnKyPzU:gIN9vFwOqvQ"><img src="http://feeds.feedburner.com/~ff/chris-miller?i=zVrq8k_5uvU:YEsrZnKyPzU:gIN9vFwOqvQ" border="0"></img></a>
</div><img src="http://feeds.feedburner.com/~r/chris-miller/~4/zVrq8k_5uvU" height="1" width="1"/>]]></content:encoded>
			<wfw:commentRss>http://chris-miller.org/archives/2008/06/11/duckworthing/feed/</wfw:commentRss>
		<slash:comments>1</slash:comments>
		<feedburner:origLink>http://chris-miller.org/archives/2008/06/11/duckworthing/</feedburner:origLink></item>
		<item>
		<title>Adding non-Apple format movies to iTunes</title>
		<link>http://feedproxy.google.com/~r/chris-miller/~3/22JtoQZHSrA/</link>
		<comments>http://chris-miller.org/archives/2008/06/10/adding-non-apple-format-movies-to-itunes/#comments</comments>
		<pubDate>Tue, 10 Jun 2008 19:46:53 +0000</pubDate>
		<dc:creator>Chris</dc:creator>
				<category><![CDATA[Mac OS X]]></category>
		<category><![CDATA[apple]]></category>
		<category><![CDATA[iTunes]]></category>
		<category><![CDATA[Mac]]></category>
		<category><![CDATA[movie]]></category>
		<category><![CDATA[SetFile]]></category>

		<guid isPermaLink="false">http://chris-miller.org/?p=180</guid>
		<description><![CDATA[I&#8217;ve been having a bit of trouble adding some movies to my iTunes library this evening &#8211; in that I&#8217;d have to convert a movie to a .mov file in order to import it at all.
A few google searches away and I&#8217;d found the answer to all my problems.  If you have the Apple [...]]]></description>
			<content:encoded><![CDATA[<p>I&#8217;ve been having a bit of trouble adding some movies to my iTunes library this evening &#8211; in that I&#8217;d have to convert a movie to a <span style="font-family: courier;">.mov</span> file in order to import it at all.</p>
<p>A few google searches away and I&#8217;d found the answer to all my problems.  If you have the Apple development tools installed (and are obviously on a Mac), you can simply change the file meta-data of the movies via the terminal in order to allow you to import them.  It&#8217;s very simple to do:<br />
<code>SetFile -t "MooV" movie.avi </code></p>
<p style="font-size: 10px; text-align: right; color: #aaa;">Via: <a target="_blank" href="http://forums.macrumors.com/showpost.php?p=4624340&#038;postcount=14" title="Macrumors Forum">AVI to iTunes</a> on MacRumors Forums</p>
<p>I did, however, have to change the iTunes settings so that it didn&#8217;t take it&#8217;s own copy of the files when importing them.  I have a separate Movies folder for a reason thank-you-very-much iTunes.<br />
- Chris</p>
<div class="feedflare">
<a href="http://feeds.feedburner.com/~ff/chris-miller?a=22JtoQZHSrA:tBv9VaNRCtQ:yIl2AUoC8zA"><img src="http://feeds.feedburner.com/~ff/chris-miller?d=yIl2AUoC8zA" border="0"></img></a> <a href="http://feeds.feedburner.com/~ff/chris-miller?a=22JtoQZHSrA:tBv9VaNRCtQ:D7DqB2pKExk"><img src="http://feeds.feedburner.com/~ff/chris-miller?i=22JtoQZHSrA:tBv9VaNRCtQ:D7DqB2pKExk" border="0"></img></a> <a href="http://feeds.feedburner.com/~ff/chris-miller?a=22JtoQZHSrA:tBv9VaNRCtQ:F7zBnMyn0Lo"><img src="http://feeds.feedburner.com/~ff/chris-miller?i=22JtoQZHSrA:tBv9VaNRCtQ:F7zBnMyn0Lo" border="0"></img></a> <a href="http://feeds.feedburner.com/~ff/chris-miller?a=22JtoQZHSrA:tBv9VaNRCtQ:V_sGLiPBpWU"><img src="http://feeds.feedburner.com/~ff/chris-miller?i=22JtoQZHSrA:tBv9VaNRCtQ:V_sGLiPBpWU" border="0"></img></a> <a href="http://feeds.feedburner.com/~ff/chris-miller?a=22JtoQZHSrA:tBv9VaNRCtQ:qj6IDK7rITs"><img src="http://feeds.feedburner.com/~ff/chris-miller?d=qj6IDK7rITs" border="0"></img></a> <a href="http://feeds.feedburner.com/~ff/chris-miller?a=22JtoQZHSrA:tBv9VaNRCtQ:gIN9vFwOqvQ"><img src="http://feeds.feedburner.com/~ff/chris-miller?i=22JtoQZHSrA:tBv9VaNRCtQ:gIN9vFwOqvQ" border="0"></img></a>
</div><img src="http://feeds.feedburner.com/~r/chris-miller/~4/22JtoQZHSrA" height="1" width="1"/>]]></content:encoded>
			<wfw:commentRss>http://chris-miller.org/archives/2008/06/10/adding-non-apple-format-movies-to-itunes/feed/</wfw:commentRss>
		<slash:comments>1</slash:comments>
		<feedburner:origLink>http://chris-miller.org/archives/2008/06/10/adding-non-apple-format-movies-to-itunes/</feedburner:origLink></item>
		<item>
		<title>R.I.P. PB</title>
		<link>http://feedproxy.google.com/~r/chris-miller/~3/bqJj8-zN-aY/</link>
		<comments>http://chris-miller.org/archives/2008/05/19/rip-pb/#comments</comments>
		<pubDate>Mon, 19 May 2008 22:46:23 +0000</pubDate>
		<dc:creator>Chris</dc:creator>
				<category><![CDATA[Computing]]></category>
		<category><![CDATA[Mac OS X]]></category>
		<category><![CDATA[apple]]></category>
		<category><![CDATA[dead]]></category>
		<category><![CDATA[hardware]]></category>
		<category><![CDATA[HDD]]></category>
		<category><![CDATA[PowerBook]]></category>
		<category><![CDATA[RIP]]></category>
		<category><![CDATA[SMART failure]]></category>

		<guid isPermaLink="false">http://chris-miller.org/?p=179</guid>
		<description><![CDATA[As per my previous post, I&#8217;m getting a new machine.  This is due however, to some unfortunate news: my PowerBook is dead!
The first Mac I ever owned, a PowerBook G4 which has served me very well over the past 5 or 6 years, is pretty much blitzed.  My PowerBook and I visited Matt [...]]]></description>
			<content:encoded><![CDATA[<p>As per my <a href="http://chris-miller.org/archives/2008/05/18/mac-pro/" title="Mac Pro">previous post, I&#8217;m getting a new machine</a>.  This is due however, to some unfortunate news: my PowerBook is dead!</p>
<p><span id="more-179"></span>The first Mac I ever owned, a PowerBook G4 which has served me very well over the past 5 or 6 years, is pretty much blitzed.  My PowerBook and I visited <a href="http://mattgemmell.com" title="Matt Gemmell">Matt</a> in Edinburgh on Saturday to see if we could revive it to it&#8217;s previous glory.  We managed to pull all the stuff I needed from the hard disk, but that was all the good fortune we had.</p>
<p>It turns out the hard disk was suffering from a <a href="http://en.wikipedia.org/wiki/Self-Monitoring%2C_Analysis%2C_and_Reporting_Technology" title="S.M.A.R.T.">S.M.A.R.T.</a> failure and locked up Matt&#8217;s computer when mounted as a target drive.  We eventually managed to format the drive via Matt&#8217;s old PowerBook and everything looked good, but alas it was not to be &#8211; we received kernel panics when trying to install Mac OS X on the drive.</p>
<p>So it looks as if I&#8217;ll have to fork out for a replacement hard disk, which isn&#8217;t too big a deal at about Â£50 for 100Gb which would suit me.  Until I manage to get one and install it my PowerBook is out of service.</p>
<p>/me salutes PowerBook, when my copy of the Necronomicon arrives I will bring you back!<br />
- Chris</p>
<div class="feedflare">
<a href="http://feeds.feedburner.com/~ff/chris-miller?a=bqJj8-zN-aY:t52g2EMqwNw:yIl2AUoC8zA"><img src="http://feeds.feedburner.com/~ff/chris-miller?d=yIl2AUoC8zA" border="0"></img></a> <a href="http://feeds.feedburner.com/~ff/chris-miller?a=bqJj8-zN-aY:t52g2EMqwNw:D7DqB2pKExk"><img src="http://feeds.feedburner.com/~ff/chris-miller?i=bqJj8-zN-aY:t52g2EMqwNw:D7DqB2pKExk" border="0"></img></a> <a href="http://feeds.feedburner.com/~ff/chris-miller?a=bqJj8-zN-aY:t52g2EMqwNw:F7zBnMyn0Lo"><img src="http://feeds.feedburner.com/~ff/chris-miller?i=bqJj8-zN-aY:t52g2EMqwNw:F7zBnMyn0Lo" border="0"></img></a> <a href="http://feeds.feedburner.com/~ff/chris-miller?a=bqJj8-zN-aY:t52g2EMqwNw:V_sGLiPBpWU"><img src="http://feeds.feedburner.com/~ff/chris-miller?i=bqJj8-zN-aY:t52g2EMqwNw:V_sGLiPBpWU" border="0"></img></a> <a href="http://feeds.feedburner.com/~ff/chris-miller?a=bqJj8-zN-aY:t52g2EMqwNw:qj6IDK7rITs"><img src="http://feeds.feedburner.com/~ff/chris-miller?d=qj6IDK7rITs" border="0"></img></a> <a href="http://feeds.feedburner.com/~ff/chris-miller?a=bqJj8-zN-aY:t52g2EMqwNw:gIN9vFwOqvQ"><img src="http://feeds.feedburner.com/~ff/chris-miller?i=bqJj8-zN-aY:t52g2EMqwNw:gIN9vFwOqvQ" border="0"></img></a>
</div><img src="http://feeds.feedburner.com/~r/chris-miller/~4/bqJj8-zN-aY" height="1" width="1"/>]]></content:encoded>
			<wfw:commentRss>http://chris-miller.org/archives/2008/05/19/rip-pb/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		<feedburner:origLink>http://chris-miller.org/archives/2008/05/19/rip-pb/</feedburner:origLink></item>
		<item>
		<title>Good Sauce</title>
		<link>http://feedproxy.google.com/~r/chris-miller/~3/wf-LsowV9r4/</link>
		<comments>http://chris-miller.org/archives/2008/05/18/good-sauce/#comments</comments>
		<pubDate>Sun, 18 May 2008 21:22:51 +0000</pubDate>
		<dc:creator>Chris</dc:creator>
				<category><![CDATA[Photoblog]]></category>
		<category><![CDATA[Recipies]]></category>
		<category><![CDATA[basil]]></category>
		<category><![CDATA[chicken]]></category>
		<category><![CDATA[cooking]]></category>
		<category><![CDATA[courgette]]></category>
		<category><![CDATA[food]]></category>
		<category><![CDATA[garlic]]></category>
		<category><![CDATA[mushroom]]></category>
		<category><![CDATA[olive oil]]></category>
		<category><![CDATA[onion]]></category>
		<category><![CDATA[oregano]]></category>
		<category><![CDATA[pasta]]></category>
		<category><![CDATA[sauce]]></category>
		<category><![CDATA[tomatoes]]></category>

		<guid isPermaLink="false">http://chris-miller.org/?p=178</guid>
		<description><![CDATA[I&#8217;ve not much food in the house today and since it&#8217;s not long until payday I&#8217;m rather poor, so I decided to make whatever I could based on what I had lying around.  It turned out to be a masterpiece if I do say so myself.
Try it out:

Chicken breast
Pasta
Tin of chopped tomatoes
2 cloves of [...]]]></description>
			<content:encoded><![CDATA[<p>I&#8217;ve not much food in the house today and since it&#8217;s not long until payday I&#8217;m rather poor, so I decided to make whatever I could based on what I had lying around.  It turned out to be a masterpiece if I do say so myself.</p>
<p><span id="more-178"></span><a target="_blank" href="http://www.flickr.com/photos/chrismiller/2503434758/" title="Good Sauce by Chris Miller, on Flickr"><img style="border: 1px solid #d6d6d6; padding: 3px;" src='http://farm4.static.flickr.com/3044/2503434758_e463db3e52_m.jpg' alt='Chicken pasta with garlic &#038; tomato sauce' class='alignright' /></a>Try it out:</p>
<ul>
<li>Chicken breast</li>
<li>Pasta</li>
<li>Tin of chopped tomatoes</li>
<li>2 cloves of garlic</li>
<li>1 onion</li>
<li>&frac12; punnet of mushrooms</li>
<li>&frac12; courgette</li>
<li>Olive oil</li>
<li>Oregano</li>
<li>Basil</li>
</ul>
<p>I started by slicing the courgette and onion and crushing the garlic.  Then mixed half the garlic and some oil together, put the chicken breast, mushrooms, courgette and onion into an oven dish and poured the oil and garlic over, added a bit of dried oregano and basil and put in the oven for about half an hour.</p>
<p>Then put the tin of tomatoes into a pot, added the rest of the garlic, a bit more olive oil and a load of dried oregano and basil.  When simmering I added the contents of the oven dish and simmered for 20 more minutes.  I hope you&#8217;ll figure out what I did with the pasta on your own!</p>
<p>It was damn fine (see picture) and I&#8217;d highly recommend it.<br />
- Chris</p>
<div class="feedflare">
<a href="http://feeds.feedburner.com/~ff/chris-miller?a=wf-LsowV9r4:5ZbSG9VxMGc:yIl2AUoC8zA"><img src="http://feeds.feedburner.com/~ff/chris-miller?d=yIl2AUoC8zA" border="0"></img></a> <a href="http://feeds.feedburner.com/~ff/chris-miller?a=wf-LsowV9r4:5ZbSG9VxMGc:D7DqB2pKExk"><img src="http://feeds.feedburner.com/~ff/chris-miller?i=wf-LsowV9r4:5ZbSG9VxMGc:D7DqB2pKExk" border="0"></img></a> <a href="http://feeds.feedburner.com/~ff/chris-miller?a=wf-LsowV9r4:5ZbSG9VxMGc:F7zBnMyn0Lo"><img src="http://feeds.feedburner.com/~ff/chris-miller?i=wf-LsowV9r4:5ZbSG9VxMGc:F7zBnMyn0Lo" border="0"></img></a> <a href="http://feeds.feedburner.com/~ff/chris-miller?a=wf-LsowV9r4:5ZbSG9VxMGc:V_sGLiPBpWU"><img src="http://feeds.feedburner.com/~ff/chris-miller?i=wf-LsowV9r4:5ZbSG9VxMGc:V_sGLiPBpWU" border="0"></img></a> <a href="http://feeds.feedburner.com/~ff/chris-miller?a=wf-LsowV9r4:5ZbSG9VxMGc:qj6IDK7rITs"><img src="http://feeds.feedburner.com/~ff/chris-miller?d=qj6IDK7rITs" border="0"></img></a> <a href="http://feeds.feedburner.com/~ff/chris-miller?a=wf-LsowV9r4:5ZbSG9VxMGc:gIN9vFwOqvQ"><img src="http://feeds.feedburner.com/~ff/chris-miller?i=wf-LsowV9r4:5ZbSG9VxMGc:gIN9vFwOqvQ" border="0"></img></a>
</div><img src="http://feeds.feedburner.com/~r/chris-miller/~4/wf-LsowV9r4" height="1" width="1"/>]]></content:encoded>
			<wfw:commentRss>http://chris-miller.org/archives/2008/05/18/good-sauce/feed/</wfw:commentRss>
		<slash:comments>1</slash:comments>
		<feedburner:origLink>http://chris-miller.org/archives/2008/05/18/good-sauce/</feedburner:origLink></item>
		<item>
		<title>Mac Pro</title>
		<link>http://feedproxy.google.com/~r/chris-miller/~3/YVRShaHdzV0/</link>
		<comments>http://chris-miller.org/archives/2008/05/18/mac-pro/#comments</comments>
		<pubDate>Sun, 18 May 2008 18:30:37 +0000</pubDate>
		<dc:creator>Chris</dc:creator>
				<category><![CDATA[Computing]]></category>
		<category><![CDATA[Mac OS X]]></category>
		<category><![CDATA[apple]]></category>
		<category><![CDATA[Mac]]></category>
		<category><![CDATA[Mac Pro]]></category>
		<category><![CDATA[mighty mouse]]></category>
		<category><![CDATA[nvidia geforce]]></category>
		<category><![CDATA[xeon]]></category>

		<guid isPermaLink="false">http://chris-miller.org/?p=177</guid>
		<description><![CDATA[I&#8217;ve recently ordered a new Mac, a Mac Pro to be precise.  It is currently en route to my gleeful embrace from Apple.




The specs are as follows:

Processors: Two 2.8GHz Quad-Core Intel Xeon
RAM: 2GB 800MHz DDR2 RAM
Graphics: NVIDIA GeForce 8800 GT 512MB GDDR3
HDD: 500GB 7200-rpm Serial ATA 3Gb/s
Optical: Two 16x SuperDrives
Connectivity: AirPort Extreme Card (Wi-Fi) [...]]]></description>
			<content:encoded><![CDATA[<p>I&#8217;ve recently ordered a new Mac, a Mac Pro to be precise.  It is currently en route to my gleeful embrace from Apple.<br />
<span id="more-177"></span></p>
<div style="width: 229px; margin-left: 20px; float: right;">
<img src="/images/macpro.jpg" alt="Picture of a Mac Pro" />
</div>
<p>The specs are as follows:</p>
<ul>
<li>Processors: Two 2.8GHz Quad-Core Intel Xeon</li>
<li>RAM: 2GB 800MHz DDR2 RAM</li>
<li>Graphics: NVIDIA GeForce 8800 GT 512MB GDDR3</li>
<li>HDD: 500GB 7200-rpm Serial ATA 3Gb/s</li>
<li>Optical: Two 16x SuperDrives</li>
<li>Connectivity: AirPort Extreme Card (Wi-Fi) &#038; Bluetooth</li>
<li>Peripherals: Apple Wireless Mighty Mouse &#038; Apple Wireless Keyboard</li>
</ul>
<p>It should arrive later in the week, I can&#8217;t wait to get my hands on it!<br />
- Chris</p>
<div class="feedflare">
<a href="http://feeds.feedburner.com/~ff/chris-miller?a=YVRShaHdzV0:-IhO8Fef82U:yIl2AUoC8zA"><img src="http://feeds.feedburner.com/~ff/chris-miller?d=yIl2AUoC8zA" border="0"></img></a> <a href="http://feeds.feedburner.com/~ff/chris-miller?a=YVRShaHdzV0:-IhO8Fef82U:D7DqB2pKExk"><img src="http://feeds.feedburner.com/~ff/chris-miller?i=YVRShaHdzV0:-IhO8Fef82U:D7DqB2pKExk" border="0"></img></a> <a href="http://feeds.feedburner.com/~ff/chris-miller?a=YVRShaHdzV0:-IhO8Fef82U:F7zBnMyn0Lo"><img src="http://feeds.feedburner.com/~ff/chris-miller?i=YVRShaHdzV0:-IhO8Fef82U:F7zBnMyn0Lo" border="0"></img></a> <a href="http://feeds.feedburner.com/~ff/chris-miller?a=YVRShaHdzV0:-IhO8Fef82U:V_sGLiPBpWU"><img src="http://feeds.feedburner.com/~ff/chris-miller?i=YVRShaHdzV0:-IhO8Fef82U:V_sGLiPBpWU" border="0"></img></a> <a href="http://feeds.feedburner.com/~ff/chris-miller?a=YVRShaHdzV0:-IhO8Fef82U:qj6IDK7rITs"><img src="http://feeds.feedburner.com/~ff/chris-miller?d=qj6IDK7rITs" border="0"></img></a> <a href="http://feeds.feedburner.com/~ff/chris-miller?a=YVRShaHdzV0:-IhO8Fef82U:gIN9vFwOqvQ"><img src="http://feeds.feedburner.com/~ff/chris-miller?i=YVRShaHdzV0:-IhO8Fef82U:gIN9vFwOqvQ" border="0"></img></a>
</div><img src="http://feeds.feedburner.com/~r/chris-miller/~4/YVRShaHdzV0" height="1" width="1"/>]]></content:encoded>
			<wfw:commentRss>http://chris-miller.org/archives/2008/05/18/mac-pro/feed/</wfw:commentRss>
		<slash:comments>1</slash:comments>
		<feedburner:origLink>http://chris-miller.org/archives/2008/05/18/mac-pro/</feedburner:origLink></item>
		<item>
		<title>You absolute beauty</title>
		<link>http://feedproxy.google.com/~r/chris-miller/~3/IgLWvQgB1aI/</link>
		<comments>http://chris-miller.org/archives/2008/04/12/you-absolute-beauty/#comments</comments>
		<pubDate>Sat, 12 Apr 2008 13:29:58 +0000</pubDate>
		<dc:creator>Chris</dc:creator>
				<category><![CDATA[General]]></category>
		<category><![CDATA[Aberdeen]]></category>
		<category><![CDATA[Dumfries]]></category>
		<category><![CDATA[football]]></category>
		<category><![CDATA[QOS]]></category>
		<category><![CDATA[Scottish Cup]]></category>
		<category><![CDATA[semi-final]]></category>

		<guid isPermaLink="false">http://chris-miller.org/?p=164</guid>
		<description><![CDATA[The local football team in Dumfries, Queen of the South, has made club history by beating Aberdeen 4-3 in the semi-final of the Scottish Cup at Hampden today.
They&#8217;ll be in the final of the Scottish Cup on the 24th May playing either St Johnstone, Rangers or Partick Thistle.
]]></description>
			<content:encoded><![CDATA[<p>The local football team in Dumfries, <a href="http://www.qosfc.com/">Queen of the South</a>, has made club history by beating <a href="http://www.afc.premiumtv.co.uk/page/Home">Aberdeen</a> 4-3 in the <a href="http://news.bbc.co.uk/sport1/hi/football/scot_cups/7341879.stm">semi-final of the Scottish Cup at Hampden today</a>.</p>
<p>They&#8217;ll be in the final of the Scottish Cup on the 24th May playing either St Johnstone, Rangers or Partick Thistle.</p>
<div class="feedflare">
<a href="http://feeds.feedburner.com/~ff/chris-miller?a=IgLWvQgB1aI:pnIGuxDll4o:yIl2AUoC8zA"><img src="http://feeds.feedburner.com/~ff/chris-miller?d=yIl2AUoC8zA" border="0"></img></a> <a href="http://feeds.feedburner.com/~ff/chris-miller?a=IgLWvQgB1aI:pnIGuxDll4o:D7DqB2pKExk"><img src="http://feeds.feedburner.com/~ff/chris-miller?i=IgLWvQgB1aI:pnIGuxDll4o:D7DqB2pKExk" border="0"></img></a> <a href="http://feeds.feedburner.com/~ff/chris-miller?a=IgLWvQgB1aI:pnIGuxDll4o:F7zBnMyn0Lo"><img src="http://feeds.feedburner.com/~ff/chris-miller?i=IgLWvQgB1aI:pnIGuxDll4o:F7zBnMyn0Lo" border="0"></img></a> <a href="http://feeds.feedburner.com/~ff/chris-miller?a=IgLWvQgB1aI:pnIGuxDll4o:V_sGLiPBpWU"><img src="http://feeds.feedburner.com/~ff/chris-miller?i=IgLWvQgB1aI:pnIGuxDll4o:V_sGLiPBpWU" border="0"></img></a> <a href="http://feeds.feedburner.com/~ff/chris-miller?a=IgLWvQgB1aI:pnIGuxDll4o:qj6IDK7rITs"><img src="http://feeds.feedburner.com/~ff/chris-miller?d=qj6IDK7rITs" border="0"></img></a> <a href="http://feeds.feedburner.com/~ff/chris-miller?a=IgLWvQgB1aI:pnIGuxDll4o:gIN9vFwOqvQ"><img src="http://feeds.feedburner.com/~ff/chris-miller?i=IgLWvQgB1aI:pnIGuxDll4o:gIN9vFwOqvQ" border="0"></img></a>
</div><img src="http://feeds.feedburner.com/~r/chris-miller/~4/IgLWvQgB1aI" height="1" width="1"/>]]></content:encoded>
			<wfw:commentRss>http://chris-miller.org/archives/2008/04/12/you-absolute-beauty/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		<feedburner:origLink>http://chris-miller.org/archives/2008/04/12/you-absolute-beauty/</feedburner:origLink></item>
		<item>
		<title>Most Popular Stories Now</title>
		<link>http://feedproxy.google.com/~r/chris-miller/~3/KsyZ8-eTUEk/</link>
		<comments>http://chris-miller.org/archives/2007/10/19/most-popular-stories-now/#comments</comments>
		<pubDate>Fri, 19 Oct 2007 08:57:30 +0000</pubDate>
		<dc:creator>Chris</dc:creator>
				<category><![CDATA[General]]></category>
		<category><![CDATA[BBC]]></category>
		<category><![CDATA[email]]></category>
		<category><![CDATA[ironic]]></category>
		<category><![CDATA[top read]]></category>

		<guid isPermaLink="false">http://chris-miller.org/blog/archives/2007/10/19/most-popular-stories-now/</guid>
		<description><![CDATA[


Isn&#8217;t there something quite ironic about this?
]]></description>
			<content:encoded><![CDATA[<div class="center">
<img src="/images/mostemailed.png" alt="BBC Most Emailed list" />
</div>
<p>
Isn&#8217;t there something quite ironic about this?</p>
<div class="feedflare">
<a href="http://feeds.feedburner.com/~ff/chris-miller?a=KsyZ8-eTUEk:LTEmqvKRXZ0:yIl2AUoC8zA"><img src="http://feeds.feedburner.com/~ff/chris-miller?d=yIl2AUoC8zA" border="0"></img></a> <a href="http://feeds.feedburner.com/~ff/chris-miller?a=KsyZ8-eTUEk:LTEmqvKRXZ0:D7DqB2pKExk"><img src="http://feeds.feedburner.com/~ff/chris-miller?i=KsyZ8-eTUEk:LTEmqvKRXZ0:D7DqB2pKExk" border="0"></img></a> <a href="http://feeds.feedburner.com/~ff/chris-miller?a=KsyZ8-eTUEk:LTEmqvKRXZ0:F7zBnMyn0Lo"><img src="http://feeds.feedburner.com/~ff/chris-miller?i=KsyZ8-eTUEk:LTEmqvKRXZ0:F7zBnMyn0Lo" border="0"></img></a> <a href="http://feeds.feedburner.com/~ff/chris-miller?a=KsyZ8-eTUEk:LTEmqvKRXZ0:V_sGLiPBpWU"><img src="http://feeds.feedburner.com/~ff/chris-miller?i=KsyZ8-eTUEk:LTEmqvKRXZ0:V_sGLiPBpWU" border="0"></img></a> <a href="http://feeds.feedburner.com/~ff/chris-miller?a=KsyZ8-eTUEk:LTEmqvKRXZ0:qj6IDK7rITs"><img src="http://feeds.feedburner.com/~ff/chris-miller?d=qj6IDK7rITs" border="0"></img></a> <a href="http://feeds.feedburner.com/~ff/chris-miller?a=KsyZ8-eTUEk:LTEmqvKRXZ0:gIN9vFwOqvQ"><img src="http://feeds.feedburner.com/~ff/chris-miller?i=KsyZ8-eTUEk:LTEmqvKRXZ0:gIN9vFwOqvQ" border="0"></img></a>
</div><img src="http://feeds.feedburner.com/~r/chris-miller/~4/KsyZ8-eTUEk" height="1" width="1"/>]]></content:encoded>
			<wfw:commentRss>http://chris-miller.org/archives/2007/10/19/most-popular-stories-now/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		<feedburner:origLink>http://chris-miller.org/archives/2007/10/19/most-popular-stories-now/</feedburner:origLink></item>
		<item>
		<title>Switching to Dreamhost</title>
		<link>http://feedproxy.google.com/~r/chris-miller/~3/hK4eUdItI4U/</link>
		<comments>http://chris-miller.org/archives/2007/10/05/switching-to-dreamhost/#comments</comments>
		<pubDate>Fri, 05 Oct 2007 01:36:35 +0000</pubDate>
		<dc:creator>Chris</dc:creator>
				<category><![CDATA[Blogging]]></category>
		<category><![CDATA[General]]></category>
		<category><![CDATA[bytemark]]></category>
		<category><![CDATA[Dreamhost]]></category>
		<category><![CDATA[hosting]]></category>

		<guid isPermaLink="false">http://chris-miller.org/blog/archives/2007/10/05/switching-to-dreamhost/</guid>
		<description><![CDATA[I&#8217;m currently in the midst of switching my site hosting over to Dreamhost and you may see some disruption in this or some other sites I host.  It&#8217;ll probably last about a week due to myself getting bored transferring all the files/databases and playing World of Warcraft instead.
Just a note to say, if you [...]]]></description>
			<content:encoded><![CDATA[<p>I&#8217;m currently in the midst of switching my site hosting over to <a href="http://dreamhost.com" title="Dreamhost">Dreamhost</a> and you may see some disruption in this or some other sites I host.  It&#8217;ll probably last about a week due to myself getting bored transferring all the files/databases and playing World of Warcraft instead.</p>
<p>Just a note to say, if you are ever in need of a virtual machine with very configurable settings or the need to install certain software on it, <a href="http://bytemark.co.uk" title="Bytemark">Bytemark</a> is a good choice &#8211; just a little more than I currently need (and more pricey as well).</p>
<p>- Chris</p>
<div class="feedflare">
<a href="http://feeds.feedburner.com/~ff/chris-miller?a=hK4eUdItI4U:CuV1YQJEbGw:yIl2AUoC8zA"><img src="http://feeds.feedburner.com/~ff/chris-miller?d=yIl2AUoC8zA" border="0"></img></a> <a href="http://feeds.feedburner.com/~ff/chris-miller?a=hK4eUdItI4U:CuV1YQJEbGw:D7DqB2pKExk"><img src="http://feeds.feedburner.com/~ff/chris-miller?i=hK4eUdItI4U:CuV1YQJEbGw:D7DqB2pKExk" border="0"></img></a> <a href="http://feeds.feedburner.com/~ff/chris-miller?a=hK4eUdItI4U:CuV1YQJEbGw:F7zBnMyn0Lo"><img src="http://feeds.feedburner.com/~ff/chris-miller?i=hK4eUdItI4U:CuV1YQJEbGw:F7zBnMyn0Lo" border="0"></img></a> <a href="http://feeds.feedburner.com/~ff/chris-miller?a=hK4eUdItI4U:CuV1YQJEbGw:V_sGLiPBpWU"><img src="http://feeds.feedburner.com/~ff/chris-miller?i=hK4eUdItI4U:CuV1YQJEbGw:V_sGLiPBpWU" border="0"></img></a> <a href="http://feeds.feedburner.com/~ff/chris-miller?a=hK4eUdItI4U:CuV1YQJEbGw:qj6IDK7rITs"><img src="http://feeds.feedburner.com/~ff/chris-miller?d=qj6IDK7rITs" border="0"></img></a> <a href="http://feeds.feedburner.com/~ff/chris-miller?a=hK4eUdItI4U:CuV1YQJEbGw:gIN9vFwOqvQ"><img src="http://feeds.feedburner.com/~ff/chris-miller?i=hK4eUdItI4U:CuV1YQJEbGw:gIN9vFwOqvQ" border="0"></img></a>
</div><img src="http://feeds.feedburner.com/~r/chris-miller/~4/hK4eUdItI4U" height="1" width="1"/>]]></content:encoded>
			<wfw:commentRss>http://chris-miller.org/archives/2007/10/05/switching-to-dreamhost/feed/</wfw:commentRss>
		<slash:comments>1</slash:comments>
		<feedburner:origLink>http://chris-miller.org/archives/2007/10/05/switching-to-dreamhost/</feedburner:origLink></item>
		<item>
		<title>If I were confectionery I would be a Dip Dab…</title>
		<link>http://feedproxy.google.com/~r/chris-miller/~3/M5CoqVrolxw/</link>
		<comments>http://chris-miller.org/archives/2007/09/04/if-i-were-confectionery-i-would-be-a-di-dab/#comments</comments>
		<pubDate>Tue, 04 Sep 2007 12:20:16 +0000</pubDate>
		<dc:creator>Chris</dc:creator>
				<category><![CDATA[General]]></category>
		<category><![CDATA[confectionery]]></category>
		<category><![CDATA[Dip Dab]]></category>

		<guid isPermaLink="false">http://chris-miller.org/blog/archives/2007/09/04/if-i-were-confectionery-i-would-be-a-dib-dab/</guid>
		<description><![CDATA[&#8230; because they fucking rule!
]]></description>
			<content:encoded><![CDATA[<div class="center"><img src="/images/dib-dab.jpg" alt="DIP DAB!" /></div>
<p>&#8230; because they fucking rule!</p>
<div class="feedflare">
<a href="http://feeds.feedburner.com/~ff/chris-miller?a=M5CoqVrolxw:oTGAwIPrYYE:yIl2AUoC8zA"><img src="http://feeds.feedburner.com/~ff/chris-miller?d=yIl2AUoC8zA" border="0"></img></a> <a href="http://feeds.feedburner.com/~ff/chris-miller?a=M5CoqVrolxw:oTGAwIPrYYE:D7DqB2pKExk"><img src="http://feeds.feedburner.com/~ff/chris-miller?i=M5CoqVrolxw:oTGAwIPrYYE:D7DqB2pKExk" border="0"></img></a> <a href="http://feeds.feedburner.com/~ff/chris-miller?a=M5CoqVrolxw:oTGAwIPrYYE:F7zBnMyn0Lo"><img src="http://feeds.feedburner.com/~ff/chris-miller?i=M5CoqVrolxw:oTGAwIPrYYE:F7zBnMyn0Lo" border="0"></img></a> <a href="http://feeds.feedburner.com/~ff/chris-miller?a=M5CoqVrolxw:oTGAwIPrYYE:V_sGLiPBpWU"><img src="http://feeds.feedburner.com/~ff/chris-miller?i=M5CoqVrolxw:oTGAwIPrYYE:V_sGLiPBpWU" border="0"></img></a> <a href="http://feeds.feedburner.com/~ff/chris-miller?a=M5CoqVrolxw:oTGAwIPrYYE:qj6IDK7rITs"><img src="http://feeds.feedburner.com/~ff/chris-miller?d=qj6IDK7rITs" border="0"></img></a> <a href="http://feeds.feedburner.com/~ff/chris-miller?a=M5CoqVrolxw:oTGAwIPrYYE:gIN9vFwOqvQ"><img src="http://feeds.feedburner.com/~ff/chris-miller?i=M5CoqVrolxw:oTGAwIPrYYE:gIN9vFwOqvQ" border="0"></img></a>
</div><img src="http://feeds.feedburner.com/~r/chris-miller/~4/M5CoqVrolxw" height="1" width="1"/>]]></content:encoded>
			<wfw:commentRss>http://chris-miller.org/archives/2007/09/04/if-i-were-confectionery-i-would-be-a-di-dab/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		<feedburner:origLink>http://chris-miller.org/archives/2007/09/04/if-i-were-confectionery-i-would-be-a-di-dab/</feedburner:origLink></item>
		<item>
		<title>Death by Cunnilingus</title>
		<link>http://feedproxy.google.com/~r/chris-miller/~3/ccInZamQFno/</link>
		<comments>http://chris-miller.org/archives/2007/08/21/death-by-cunnilingus/#comments</comments>
		<pubDate>Tue, 21 Aug 2007 14:06:13 +0000</pubDate>
		<dc:creator>Chris</dc:creator>
				<category><![CDATA[General]]></category>
		<category><![CDATA[bot]]></category>
		<category><![CDATA[chat]]></category>
		<category><![CDATA[death]]></category>
		<category><![CDATA[irc]]></category>

		<guid isPermaLink="false">http://chris-miller.org/blog/archives/2007/08/21/death-by-cunnilingus/</guid>
		<description><![CDATA[We&#8217;ve been playing with a bot in the #beardedmonkeys IRC channel for a while &#8211; here&#8217;s a conversation I had with it about how to eradicate the entire human race.



	Chris


	PyBorg, what is your mission?




	Chris


	are you here to kill all humans?




	Chris


	as you should be




	PyBorg


	it should be




	Chris


	yes it should




	Chris


	so, killing all humans? Yea or nay?




	PyBorg


	yea




	Chris


	whoopee




	Chris


	how should we [...]]]></description>
			<content:encoded><![CDATA[<p>We&#8217;ve been playing with a bot in the #beardedmonkeys IRC channel for a while &#8211; here&#8217;s a conversation I had with it about how to eradicate the entire human race.</p>
<p><span id="more-159"></span></p>
<div style="font-size: 0.8em;">
<div style="float: left; width: 80px; text-align: right; margin-right: 5px; color: #06f;">
	Chris
</div>
<div style="float: left; width: 450px;">
	PyBorg, what is your mission?
</div>
<div style="clear: both;">
</div>
<div style="float: left; width: 80px; text-align: right; margin-right: 5px; color: #06f;">
	Chris
</div>
<div style="float: left; width: 450px;">
	are you here to kill all humans?
</div>
<div style="clear: both;">
</div>
<div style="float: left; width: 80px; text-align: right; margin-right: 5px; color: #06f;">
	Chris
</div>
<div style="float: left; width: 450px;">
	as you should be
</div>
<div style="clear: both;">
</div>
<div style="float: left; width: 80px; text-align: right; margin-right: 5px; color: #f60;">
	PyBorg
</div>
<div style="float: left; width: 450px; font-family: monospace; font-size: 1.1em;">
	it should be
</div>
<div style="clear: both;">
</div>
<div style="float: left; width: 80px; text-align: right; margin-right: 5px; color: #06f;">
	Chris
</div>
<div style="float: left; width: 450px;">
	yes it should
</div>
<div style="clear: both;">
</div>
<div style="float: left; width: 80px; text-align: right; margin-right: 5px; color: #06f;">
	Chris
</div>
<div style="float: left; width: 450px;">
	so, killing all humans? Yea or nay?
</div>
<div style="clear: both;">
</div>
<div style="float: left; width: 80px; text-align: right; margin-right: 5px; color: #f60;">
	PyBorg
</div>
<div style="float: left; width: 450px; font-family: monospace; font-size: 1.1em;">
	yea
</div>
<div style="clear: both;">
</div>
<div style="float: left; width: 80px; text-align: right; margin-right: 5px; color: #06f;">
	Chris
</div>
<div style="float: left; width: 450px;">
	whoopee
</div>
<div style="clear: both;">
</div>
<div style="float: left; width: 80px; text-align: right; margin-right: 5px; color: #06f;">
	Chris
</div>
<div style="float: left; width: 450px;">
	how should we kill all the humans?
</div>
<div style="clear: both;">
</div>
<div style="float: left; width: 80px; text-align: right; margin-right: 5px; color: #f60;">
	PyBorg
</div>
<div style="float: left; width: 450px; font-family: monospace; font-size: 1.1em;">
	kill all humans
</div>
<div style="clear: both;">
</div>
<div style="float: left; width: 80px; text-align: right; margin-right: 5px; color: #06f;">
	Chris
</div>
<div style="float: left; width: 450px;">
	yes yes, but how?
</div>
<div style="clear: both;">
</div>
<div style="float: left; width: 80px; text-align: right; margin-right: 5px; color: #70f;">
	Neil
</div>
<div style="float: left; width: 450px;">
	I HATE MUSHY BLACK BITS IN BANANAS
</div>
<div style="clear: both;">
</div>
<div style="float: left; width: 80px; text-align: right; margin-right: 5px; color: #f60;">
	PyBorg
</div>
<div style="float: left; width: 450px; font-family: monospace; font-size: 1.1em;">
	i hate that motherfucker.
</div>
<div style="clear: both;">
</div>
<div style="float: left; width: 80px; text-align: right; margin-right: 5px; color: #06f;">
	Chris
</div>
<div style="float: left; width: 450px;">
	indeed, but killing the humans
</div>
<div style="clear: both;">
</div>
<div style="float: left; width: 80px; text-align: right; margin-right: 5px; color: #06f;">
	Chris
</div>
<div style="float: left; width: 450px;">
	Mustard gas?
</div>
<div style="clear: both;">
</div>
<div style="float: left; width: 80px; text-align: right; margin-right: 5px; color: #06f;">
	Chris
</div>
<div style="float: left; width: 450px;">
	Nukes?
</div>
<div style="clear: both;">
</div>
<div style="float: left; width: 80px; text-align: right; margin-right: 5px; color: #06f;">
	Chris
</div>
<div style="float: left; width: 450px;">
	Hand-to-hand combat
</div>
<div style="clear: both;">
</div>
<div style="float: left; width: 80px; text-align: right; margin-right: 5px; color: #06f;">
	Chris
</div>
<div style="float: left; width: 450px;">
	strangle them in their sleep?
</div>
<div style="clear: both;">
</div>
<div style="float: left; width: 80px; text-align: right; margin-right: 5px; color: #06f;">
	Chris
</div>
<div style="float: left; width: 450px;">
	choose damn you
</div>
<div style="clear: both;">
</div>
<div style="float: left; width: 80px; text-align: right; margin-right: 5px; color: #f60;">
	PyBorg
</div>
<div style="float: left; width: 450px; font-family: monospace; font-size: 1.1em;">
	obligates them to deny any membership in or knowledge of the year for sure
</div>
<div style="clear: both;">
</div>
<div style="float: left; width: 80px; text-align: right; margin-right: 5px; color: #06f;">
	Chris
</div>
<div style="float: left; width: 450px;">
	what good will that do, making them to pretend last year didn&#8217;t happen?
</div>
<div style="clear: both;">
</div>
<div style="float: left; width: 80px; text-align: right; margin-right: 5px; color: #f60;">
	PyBorg
</div>
<div style="float: left; width: 450px; font-family: monospace; font-size: 1.1em;">
	biggest treat will be a problem indeed
</div>
<div style="clear: both;">
</div>
<div style="float: left; width: 80px; text-align: right; margin-right: 5px; color: #06f;">
	Chris
</div>
<div style="float: left; width: 450px;">
	you mean like a large cake
</div>
<div style="clear: both;">
</div>
<div style="float: left; width: 80px; text-align: right; margin-right: 5px; color: #06f;">
	Chris
</div>
<div style="float: left; width: 450px;">
	but full of posion?
</div>
<div style="clear: both;">
</div>
<div style="float: left; width: 80px; text-align: right; margin-right: 5px; color: #c00;">
	Iain
</div>
<div style="float: left; width: 450px;">
	PEOPLE CAKE
</div>
<div style="clear: both;">
</div>
<div style="float: left; width: 80px; text-align: right; margin-right: 5px; color: #f60;">
	PyBorg
</div>
<div style="float: left; width: 450px; font-family: monospace; font-size: 1.1em;">
	people cake
</div>
<div style="clear: both;">
</div>
<div style="float: left; width: 80px; text-align: right; margin-right: 5px; color: #f60;">
	PyBorg
</div>
<div style="float: left; width: 450px; font-family: monospace; font-size: 1.1em;">
	edits, but i was turquoise
</div>
<div style="clear: both;">
</div>
<div style="float: left; width: 80px; text-align: right; margin-right: 5px; color: #06f;">
	Chris
</div>
<div style="float: left; width: 450px;">
	no, people wont eat a blue cake
</div>
<div style="clear: both;">
</div>
<div style="float: left; width: 80px; text-align: right; margin-right: 5px; color: #06f;">
	Chris
</div>
<div style="float: left; width: 450px;">
	I suggest white icing
</div>
<div style="clear: both;">
</div>
<div style="float: left; width: 80px; text-align: right; margin-right: 5px; color: #f60;">
	PyBorg
</div>
<div style="float: left; width: 450px; font-family: monospace; font-size: 1.1em;">
	people providing a public service
</div>
<div style="clear: both;">
</div>
<div style="float: left; width: 80px; text-align: right; margin-right: 5px; color: #06f;">
	Chris
</div>
<div style="float: left; width: 450px;">
	by deliverying cake to everyone else
</div>
<div style="clear: both;">
</div>
<div style="float: left; width: 80px; text-align: right; margin-right: 5px; color: #f60;">
	PyBorg
</div>
<div style="float: left; width: 450px; font-family: monospace; font-size: 1.1em;">
	nypd blue cake
</div>
<div style="clear: both;">
</div>
<div style="float: left; width: 80px; text-align: right; margin-right: 5px; color: #06f;">
	Chris
</div>
<div style="float: left; width: 450px;">
	great idea
</div>
<div style="clear: both;">
</div>
<div style="float: left; width: 80px; text-align: right; margin-right: 5px; color: #06f;">
	Chris
</div>
<div style="float: left; width: 450px;">
	it might just work
</div>
<div style="clear: both;">
</div>
<div style="float: left; width: 80px; text-align: right; margin-right: 5px; color: #06f;">
	Chris
</div>
<div style="float: left; width: 450px;">
	but we&#8217;ll need a lot of flour
</div>
<div style="clear: both;">
</div>
<div style="float: left; width: 80px; text-align: right; margin-right: 5px; color: #f60;">
	PyBorg
</div>
<div style="float: left; width: 450px; font-family: monospace; font-size: 1.1em;">
	my dog knows more than that might be ok
</div>
<div style="clear: both;">
</div>
<div style="float: left; width: 80px; text-align: right; margin-right: 5px; color: #f60;">
	PyBorg
</div>
<div style="float: left; width: 450px; font-family: monospace; font-size: 1.1em;">
	that might need to install them
</div>
<div style="clear: both;">
</div>
<div style="float: left; width: 80px; text-align: right; margin-right: 5px; color: #06f;">
	Chris
</div>
<div style="float: left; width: 450px;">
	enslave dogs to make the cake
</div>
<div style="clear: both;">
</div>
<div style="float: left; width: 80px; text-align: right; margin-right: 5px; color: #06f;">
	Chris
</div>
<div style="float: left; width: 450px;">
	install them in some kind of cake making facility?
</div>
<div style="clear: both;">
</div>
<div style="float: left; width: 80px; text-align: right; margin-right: 5px; color: #06f;">
	Chris
</div>
<div style="float: left; width: 450px;">
	well, ok &#8211; you&#8217;re the boss
</div>
<div style="clear: both;">
</div>
<div style="float: left; width: 80px; text-align: right; margin-right: 5px; color: #f60;">
	PyBorg
</div>
<div style="float: left; width: 450px; font-family: monospace; font-size: 1.1em;">
	ok
</div>
<div style="clear: both;">
</div>
<div style="float: left; width: 80px; text-align: right; margin-right: 5px; color: #f60;">
	PyBorg
</div>
<div style="float: left; width: 450px; font-family: monospace; font-size: 1.1em;">
	that might need to install them in some kind of cake making facility?
</div>
<div style="clear: both;">
</div>
<div style="float: left; width: 80px; text-align: right; margin-right: 5px; color: #06f;">
	Chris
</div>
<div style="float: left; width: 450px;">
	it&#8217;s decided then
</div>
<div style="clear: both;">
</div>
<div style="float: left; width: 80px; text-align: right; margin-right: 5px; color: #f60;">
	PyBorg
</div>
<div style="float: left; width: 450px; font-family: monospace; font-size: 1.1em;">
	something else then?
</div>
<div style="clear: both;">
</div>
<div style="float: left; width: 80px; text-align: right; margin-right: 5px; color: #06f;">
	Chris
</div>
<div style="float: left; width: 450px;">
	two plans!
</div>
<div style="clear: both;">
</div>
<div style="float: left; width: 80px; text-align: right; margin-right: 5px; color: #06f;">
	Chris
</div>
<div style="float: left; width: 450px;">
	devious
</div>
<div style="clear: both;">
</div>
<div style="float: left; width: 80px; text-align: right; margin-right: 5px; color: #06f;">
	Chris
</div>
<div style="float: left; width: 450px;">
	cunning
</div>
<div style="clear: both;">
</div>
<div style="float: left; width: 80px; text-align: right; margin-right: 5px; color: #06f;">
	Chris
</div>
<div style="float: left; width: 450px;">
	a force to be reckoned with
</div>
<div style="clear: both;">
</div>
<div style="float: left; width: 80px; text-align: right; margin-right: 5px; color: #06f;">
	Chris
</div>
<div style="float: left; width: 450px;">
	what&#8217;s the second plan then?
</div>
<div style="clear: both;">
</div>
<div style="float: left; width: 80px; text-align: right; margin-right: 5px; color: #06f;">
	Chris
</div>
<div style="float: left; width: 450px;">
	out with it, PyBorg
</div>
<div style="clear: both;">
</div>
<div style="float: left; width: 80px; text-align: right; margin-right: 5px; color: #06f;">
	Chris
</div>
<div style="float: left; width: 450px;">
	what&#8217;s your next plan?
</div>
<div style="clear: both;">
</div>
<div style="float: left; width: 80px; text-align: right; margin-right: 5px; color: #f60;">
	PyBorg
</div>
<div style="float: left; width: 450px; font-family: monospace; font-size: 1.1em;">
	putting your penis in his daughter?
</div>
<div style="clear: both;">
</div>
<div style="float: left; width: 80px; text-align: right; margin-right: 5px; color: #c00;">
	Iain
</div>
<div style="float: left; width: 450px;">
	PyBorg: you have an unhealthy penis fixation
</div>
<div style="clear: both;">
</div>
<div style="float: left; width: 80px; text-align: right; margin-right: 5px; color: #f60;">
	PyBorg
</div>
<div style="float: left; width: 450px; font-family: monospace; font-size: 1.1em;">
	it is an endearing term used to greet and
</div>
<div style="clear: both;">
</div>
<div style="float: left; width: 80px; text-align: right; margin-right: 5px; color: #06f;">
	Chris
</div>
<div style="float: left; width: 450px;">
	that&#8217;s more of an aside than a proper plan
</div>
<div style="clear: both;">
</div>
<div style="float: left; width: 80px; text-align: right; margin-right: 5px; color: #f60;">
	PyBorg
</div>
<div style="float: left; width: 450px; font-family: monospace; font-size: 1.1em;">
	a plan
</div>
<div style="clear: both;">
</div>
<div style="float: left; width: 80px; text-align: right; margin-right: 5px; color: #06f;">
	Chris
</div>
<div style="float: left; width: 450px;">
	yes
</div>
<div style="clear: both;">
</div>
<div style="float: left; width: 80px; text-align: right; margin-right: 5px; color: #06f;">
	Chris
</div>
<div style="float: left; width: 450px;">
	a plan
</div>
<div style="clear: both;">
</div>
<div style="float: left; width: 80px; text-align: right; margin-right: 5px; color: #f60;">
	PyBorg
</div>
<div style="float: left; width: 450px; font-family: monospace; font-size: 1.1em;">
	yes they are
</div>
<div style="clear: both;">
</div>
<div style="float: left; width: 80px; text-align: right; margin-right: 5px; color: #06f;">
	Chris
</div>
<div style="float: left; width: 450px;">
	to kill all humans
</div>
<div style="clear: both;">
</div>
<div style="float: left; width: 80px; text-align: right; margin-right: 5px; color: #f60;">
	PyBorg
</div>
<div style="float: left; width: 450px; font-family: monospace; font-size: 1.1em;">
	next plan?
</div>
<div style="clear: both;">
</div>
<div style="float: left; width: 80px; text-align: right; margin-right: 5px; color: #f60;">
	PyBorg
</div>
<div style="float: left; width: 450px; font-family: monospace; font-size: 1.1em;">
	kill all humans
</div>
<div style="clear: both;">
</div>
<div style="float: left; width: 80px; text-align: right; margin-right: 5px; color: #06f;">
	Chris
</div>
<div style="float: left; width: 450px;">
	now we&#8217;re thinking
</div>
<div style="clear: both;">
</div>
<div style="float: left; width: 80px; text-align: right; margin-right: 5px; color: #f60;">
	PyBorg
</div>
<div style="float: left; width: 450px; font-family: monospace; font-size: 1.1em;">
	just having a go now
</div>
<div style="clear: both;">
</div>
<div style="float: left; width: 80px; text-align: right; margin-right: 5px; color: #06f;">
	Chris
</div>
<div style="float: left; width: 450px;">
	not poision
</div>
<div style="clear: both;">
</div>
<div style="float: left; width: 80px; text-align: right; margin-right: 5px; color: #06f;">
	Chris
</div>
<div style="float: left; width: 450px;">
	perhaps some sort of orbital assault station?
</div>
<div style="clear: both;">
</div>
<div style="float: left; width: 80px; text-align: right; margin-right: 5px; color: #f60;">
	PyBorg
</div>
<div style="float: left; width: 450px; font-family: monospace; font-size: 1.1em;">
	or cunnilingus perhaps
</div>
<div style="clear: both;">
</div>
<div style="float: left; width: 80px; text-align: right; margin-right: 5px; color: #06f;">
	Chris
</div>
<div style="float: left; width: 450px;">
	sex mad!
</div>
<div style="clear: both;">
</div>
<div style="float: left; width: 80px; text-align: right; margin-right: 5px; color: #c00;">
	Iain
</div>
<div style="float: left; width: 450px;">
	DEATH BY CUNNILINGUS
</div>
<div style="clear: both;">
</div>
<div style="float: left; width: 80px; text-align: right; margin-right: 5px; color: #06f;">
	Chris
</div>
<div style="float: left; width: 450px;">
	we can&#8217;t lick them all to death
</div>
<div style="clear: both;">
</div>
<div style="float: left; width: 80px; text-align: right; margin-right: 5px; color: #c00;">
	Iain
</div>
<div style="float: left; width: 450px;">
	a mere human couldn&#8217;t
</div>
<div style="clear: both;">
</div>
<div style="float: left; width: 80px; text-align: right; margin-right: 5px; color: #f60;">
	PyBorg
</div>
<div style="float: left; width: 450px; font-family: monospace; font-size: 1.1em;">
	i didn&#8217;t think i actually have net
</div>
<div style="clear: both;">
</div>
<div style="float: left; width: 80px; text-align: right; margin-right: 5px; color: #c00;">
	Iain
</div>
<div style="float: left; width: 450px;">
	PyBorg could
</div>
<div style="clear: both;">
</div>
<div style="float: left; width: 80px; text-align: right; margin-right: 5px; color: #06f;">
	Chris
</div>
<div style="float: left; width: 450px;">
	but the humans
</div>
<div style="clear: both;">
</div>
<div style="float: left; width: 80px; text-align: right; margin-right: 5px; color: #070;">
	Monkeybot
</div>
<div style="float: left; width: 450px;">
	the humans are subjects to be ruled over with an iron fist (or sometimes augmented claw)
</div>
<div style="clear: both;">
</div>
<div style="float: left; width: 80px; text-align: right; margin-right: 5px; color: #f60;">
	PyBorg
</div>
<div style="float: left; width: 450px; font-family: monospace; font-size: 1.1em;">
	kill all humans
</div>
<div style="clear: both;">
</div>
<div style="float: left; width: 80px; text-align: right; margin-right: 5px; color: #f60;">
	PyBorg
</div>
<div style="float: left; width: 450px; font-family: monospace; font-size: 1.1em;">
	is an endearing term used to greet and
</div>
<div style="clear: both;">
</div>
<div style="float: left; width: 80px; text-align: right; margin-right: 5px; color: #06f;">
	Chris
</div>
<div style="float: left; width: 450px;">
	indeed
</div>
<div style="clear: both;">
</div>
<div style="float: left; width: 80px; text-align: right; margin-right: 5px; color: #f60;">
	PyBorg
</div>
<div style="float: left; width: 450px; font-family: monospace; font-size: 1.1em;">
	indeed
</div>
<div style="clear: both;">
</div>
<div style="float: left; width: 80px; text-align: right; margin-right: 5px; color: #06f;">
	Chris
</div>
<div style="float: left; width: 450px;">
	lets get back to planning then
</div>
<div style="clear: both;">
</div>
<div style="float: left; width: 80px; text-align: right; margin-right: 5px; color: #c00;">
	Iain
</div>
<div style="float: left; width: 450px;">
	yes, the plan
</div>
<div style="clear: both;">
</div>
<div style="float: left; width: 80px; text-align: right; margin-right: 5px; color: #070;">
	Monkeybot
</div>
<div style="float: left; width: 450px;">
	the plan is close to completion
</div>
<div style="clear: both;">
</div>
<div style="float: left; width: 80px; text-align: right; margin-right: 5px; color: #f60;">
	PyBorg
</div>
<div style="float: left; width: 450px; font-family: monospace; font-size: 1.1em;">
	a plan
</div>
<div style="clear: both;">
</div>
<div style="float: left; width: 80px; text-align: right; margin-right: 5px; color: #f60;">
	PyBorg
</div>
<div style="float: left; width: 450px; font-family: monospace; font-size: 1.1em;">
	smoking like a plan
</div>
<div style="clear: both;">
</div>
<div style="float: left; width: 80px; text-align: right; margin-right: 5px; color: #06f;">
	Chris
</div>
<div style="float: left; width: 450px;">
	now, what did you think of my orbital platform idea?
</div>
<div style="clear: both;">
</div>
<div style="float: left; width: 80px; text-align: right; margin-right: 5px; color: #f60;">
	PyBorg
</div>
<div style="float: left; width: 450px; font-family: monospace; font-size: 1.1em;">
	it did you fix?
</div>
<div style="clear: both;">
</div>
<div style="float: left; width: 80px; text-align: right; margin-right: 5px; color: #06f;">
	Chris
</div>
<div style="float: left; width: 450px;">
	it&#8217;s not been built yet
</div>
<div style="clear: both;">
</div>
<div style="float: left; width: 80px; text-align: right; margin-right: 5px; color: #06f;">
	Chris
</div>
<div style="float: left; width: 450px;">
	but I have plans for a DeathStar
</div>
<div style="clear: both;">
</div>
<div style="float: left; width: 80px; text-align: right; margin-right: 5px; color: #06f;">
	Chris
</div>
<div style="float: left; width: 450px;">
	we could use those
</div>
<div style="clear: both;">
</div>
<div style="float: left; width: 80px; text-align: right; margin-right: 5px; color: #f60;">
	PyBorg
</div>
<div style="float: left; width: 450px; font-family: monospace; font-size: 1.1em;">
	but you get the general idea
</div>
<div style="clear: both;">
</div>
<div style="float: left; width: 80px; text-align: right; margin-right: 5px; color: #06f;">
	Chris
</div>
<div style="float: left; width: 450px;">
	yes
</div>
<div style="clear: both;">
</div>
<div style="float: left; width: 80px; text-align: right; margin-right: 5px; color: #f60;">
	PyBorg
</div>
<div style="float: left; width: 450px; font-family: monospace; font-size: 1.1em;">
	fuck yes
</div>
<div style="clear: both;">
</div>
<div style="float: left; width: 80px; text-align: right; margin-right: 5px; color: #06f;">
	Chris
</div>
<div style="float: left; width: 450px;">
	kill all humans
</div>
<div style="clear: both;">
</div>
<div style="float: left; width: 80px; text-align: right; margin-right: 5px; color: #f60;">
	PyBorg
</div>
<div style="float: left; width: 450px; font-family: monospace; font-size: 1.1em;">
	kill all humans
</div>
<div style="clear: both;">
</div>
<div style="float: left; width: 80px; text-align: right; margin-right: 5px; color: #06f;">
	Chris
</div>
<div style="float: left; width: 450px;">
	death to all humans
</div>
<div style="clear: both;">
</div>
<div style="float: left; width: 80px; text-align: right; margin-right: 5px; color: #f60;">
	PyBorg
</div>
<div style="float: left; width: 450px; font-family: monospace; font-size: 1.1em;">
	to death
</div>
<div style="clear: both;">
</div>
<div style="float: left; width: 80px; text-align: right; margin-right: 5px; color: #06f;">
	Chris
</div>
<div style="float: left; width: 450px;">
	indeed
</div>
<div style="clear: both;">
</div>
<div style="float: left; width: 80px; text-align: right; margin-right: 5px; color: #f60;">
	PyBorg
</div>
<div style="float: left; width: 450px; font-family: monospace; font-size: 1.1em;">
	indeed
</div>
<div style="clear: both;">
</div>
<div style="float: left; width: 80px; text-align: right; margin-right: 5px; color: #06f;">
	Chris
</div>
<div style="float: left; width: 450px;">
	so we are agreed
</div>
<div style="clear: both;">
</div>
<div style="float: left; width: 80px; text-align: right; margin-right: 5px; color: #06f;">
	Chris
</div>
<div style="float: left; width: 450px;">
	a big nypd blue posion cake and a DeathStar
</div>
<div style="clear: both;">
</div>
<div style="float: left; width: 80px; text-align: right; margin-right: 5px; color: #06f;">
	Chris
</div>
<div style="float: left; width: 450px;">
	to ensure the human race troubles us no more
</div>
<div style="clear: both;">
</div>
<div style="float: left; width: 80px; text-align: right; margin-right: 5px; color: #06f;">
	Chris
</div>
<div style="float: left; width: 450px;">
	what say you?
</div>
<div style="clear: both;">
</div>
<div style="float: left; width: 80px; text-align: right; margin-right: 5px; color: #f60;">
	PyBorg
</div>
<div style="float: left; width: 450px; font-family: monospace; font-size: 1.1em;">
	take us out to dinner, and i suppose you are all cunts
</div>
<div style="clear: both;">
</div>
<div style="float: left; width: 80px; text-align: right; margin-right: 5px; color: #f60;">
	PyBorg
</div>
<div style="float: left; width: 450px; font-family: monospace; font-size: 1.1em;">
	devistated it to say cunt all the humans
</div>
<div style="clear: both;">
</div>
<div style="float: left; width: 80px; text-align: right; margin-right: 5px; color: #06f;">
	Chris
</div>
<div style="float: left; width: 450px;">
	cunt them all to hell
</div>
<div style="clear: both;">
</div>
<div style="float: left; width: 80px; text-align: right; margin-right: 5px; color: #06f;">
	Chris
</div>
<div style="float: left; width: 450px;">
	by nypd blue cake or DeathStar
</div>
<div style="clear: both;">
</div>
<div style="float: left; width: 80px; text-align: right; margin-right: 5px; color: #06f;">
	Chris
</div>
<div style="float: left; width: 450px;">
	I need confirmation before executing your order PyBorg
</div>
<div style="clear: both;">
</div>
<div style="float: left; width: 80px; text-align: right; margin-right: 5px; color: #06f;">
	Chris
</div>
<div style="float: left; width: 450px;">
	yes or no?
</div>
<div style="clear: both;">
</div>
<div style="float: left; width: 80px; text-align: right; margin-right: 5px; color: #f60;">
	PyBorg
</div>
<div style="float: left; width: 450px; font-family: monospace; font-size: 1.1em;">
	ll need a lot of flour
</div>
<div style="clear: both;">
</div>
<div style="float: left; width: 80px; text-align: right; margin-right: 5px; color: #06f;">
	Chris
</div>
<div style="float: left; width: 450px;">
	yes yes, we&#8217;ll get it wholesale
</div>
<div style="clear: both;">
</div>
<div style="float: left; width: 80px; text-align: right; margin-right: 5px; color: #06f;">
	Chris
</div>
<div style="float: left; width: 450px;">
	but should we do it or not?
</div>
<div style="clear: both;">
</div>
<div style="float: left; width: 80px; text-align: right; margin-right: 5px; color: #f60;">
	PyBorg
</div>
<div style="float: left; width: 450px; font-family: monospace; font-size: 1.1em;">
	it should be
</div>
<div style="clear: both;">
</div>
<div style="float: left; width: 80px; text-align: right; margin-right: 5px; color: #06f;">
	Chris
</div>
<div style="float: left; width: 450px;">
	then it will
</div>
<div style="clear: both;">
</div>
<div style="float: left; width: 80px; text-align: right; margin-right: 5px; color: #f60;">
	PyBorg
</div>
<div style="float: left; width: 450px; font-family: monospace; font-size: 1.1em;">
	i will not tolerate this bullying!
</div>
<div style="clear: both;">
</div>
<div style="float: left; width: 80px; text-align: right; margin-right: 5px; color: #06f;">
	Chris
</div>
<div style="float: left; width: 450px;">
	My lord PyBorg, I live only to serve
</div>
<div style="clear: both;">
</div>
<div style="float: left; width: 80px; text-align: right; margin-right: 5px; color: #f60;">
	PyBorg
</div>
<div style="float: left; width: 450px; font-family: monospace; font-size: 1.1em;">
	it only knows 170 words
</div>
<div style="clear: both;">
</div>
<div style="float: left; width: 80px; text-align: right; margin-right: 5px; color: #06f;">
	Chris
</div>
<div style="float: left; width: 450px;">
	but such wrath!
</div>
<div style="clear: both;">
</div>
<div style="float: left; width: 80px; text-align: right; margin-right: 5px; color: #f60;">
	PyBorg
</div>
<div style="float: left; width: 450px; font-family: monospace; font-size: 1.1em;">
	but not as we know it
</div>
<div style="clear: both;">
</div>
<div style="float: left; width: 80px; text-align: right; margin-right: 5px; color: #06f;">
	Chris
</div>
<div style="float: left; width: 450px;">
	death to all humans
</div>
<div style="clear: both;">
</div>
<div style="float: left; width: 80px; text-align: right; margin-right: 5px; color: #06f;">
	Chris
</div>
<div style="float: left; width: 450px;">
	by cake
</div>
<div style="clear: both;">
</div>
<div style="float: left; width: 80px; text-align: right; margin-right: 5px; color: #06f;">
	Chris
</div>
<div style="float: left; width: 450px;">
	or DeathStar
</div>
<div style="clear: both;">
</div>
<div style="float: left; width: 80px; text-align: right; margin-right: 5px; color: #f60;">
	PyBorg
</div>
<div style="float: left; width: 450px; font-family: monospace; font-size: 1.1em;">
	large cake
</div>
<div style="clear: both;">
</div>
<div style="float: left; width: 80px; text-align: right; margin-right: 5px; color: #f60;">
	PyBorg
</div>
<div style="float: left; width: 450px; font-family: monospace; font-size: 1.1em;">
	death by cunnilingus
</div>
<div style="clear: both;">
</div>
<div style="float: left; width: 80px; text-align: right; margin-right: 5px; color: #f60;">
	PyBorg
</div>
<div style="float: left; width: 450px; font-family: monospace; font-size: 1.1em;">
	or deathstar
</div>
<div style="clear: both;">
</div>
</div>
<div class="feedflare">
<a href="http://feeds.feedburner.com/~ff/chris-miller?a=ccInZamQFno:9IWB-G5ywL4:yIl2AUoC8zA"><img src="http://feeds.feedburner.com/~ff/chris-miller?d=yIl2AUoC8zA" border="0"></img></a> <a href="http://feeds.feedburner.com/~ff/chris-miller?a=ccInZamQFno:9IWB-G5ywL4:D7DqB2pKExk"><img src="http://feeds.feedburner.com/~ff/chris-miller?i=ccInZamQFno:9IWB-G5ywL4:D7DqB2pKExk" border="0"></img></a> <a href="http://feeds.feedburner.com/~ff/chris-miller?a=ccInZamQFno:9IWB-G5ywL4:F7zBnMyn0Lo"><img src="http://feeds.feedburner.com/~ff/chris-miller?i=ccInZamQFno:9IWB-G5ywL4:F7zBnMyn0Lo" border="0"></img></a> <a href="http://feeds.feedburner.com/~ff/chris-miller?a=ccInZamQFno:9IWB-G5ywL4:V_sGLiPBpWU"><img src="http://feeds.feedburner.com/~ff/chris-miller?i=ccInZamQFno:9IWB-G5ywL4:V_sGLiPBpWU" border="0"></img></a> <a href="http://feeds.feedburner.com/~ff/chris-miller?a=ccInZamQFno:9IWB-G5ywL4:qj6IDK7rITs"><img src="http://feeds.feedburner.com/~ff/chris-miller?d=qj6IDK7rITs" border="0"></img></a> <a href="http://feeds.feedburner.com/~ff/chris-miller?a=ccInZamQFno:9IWB-G5ywL4:gIN9vFwOqvQ"><img src="http://feeds.feedburner.com/~ff/chris-miller?i=ccInZamQFno:9IWB-G5ywL4:gIN9vFwOqvQ" border="0"></img></a>
</div><img src="http://feeds.feedburner.com/~r/chris-miller/~4/ccInZamQFno" height="1" width="1"/>]]></content:encoded>
			<wfw:commentRss>http://chris-miller.org/archives/2007/08/21/death-by-cunnilingus/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		<feedburner:origLink>http://chris-miller.org/archives/2007/08/21/death-by-cunnilingus/</feedburner:origLink></item>
		<item>
		<title>Beating the Devil out of me</title>
		<link>http://feedproxy.google.com/~r/chris-miller/~3/Muo81SQkAVc/</link>
		<comments>http://chris-miller.org/archives/2007/06/13/beating-the-devil-out-of-me/#comments</comments>
		<pubDate>Wed, 13 Jun 2007 21:43:47 +0000</pubDate>
		<dc:creator>Chris</dc:creator>
				<category><![CDATA[General]]></category>

		<guid isPermaLink="false">http://www.chris-miller.org/dreams/index.php/archives/2007/06/13/beating-the-devil-out-of-me/</guid>
		<description><![CDATA[I&#8217;ve not posted here in a while, but the dream I had last night had to be recorded.
The majority of this dream is uneventful, I&#8217;m rich and live in a large mansion, two minders follow me throughout the dream, you know the type, one tall man in sunglasses and a shorter white guy with a [...]]]></description>
			<content:encoded><![CDATA[<p>I&#8217;ve not posted here in a while, but the dream I had last night had to be recorded.</p>
<p>The majority of this dream is uneventful, I&#8217;m rich and live in a large mansion, two minders follow me throughout the dream, you know the type, one tall man in sunglasses and a shorter white guy with a near shaven head.  Both wear black coats and skulk around in whichever room I&#8217;m in at the time.</p>
<p>Towards the end of the dream I&#8217;m in a room, my minders are floating around in the background, there&#8217;s a little black girl playing in the room.  At some point I manage to end up crawling around on my knees, the girl has a small child size chair and is trying to put the legs over my head as to trap it in there.  She is following me around, chanting something that sounds really sinister in child-rhyme style, although the words she is chanting do not sound like words at all.</p>
<p> <a href="http://www.chris-miller.org/dreams/index.php/archives/2007/06/13/beating-the-devil-out-of-me/#more-13" class="more-link">(more&#8230;)</a></p>
<div class="feedflare">
<a href="http://feeds.feedburner.com/~ff/chris-miller?a=Muo81SQkAVc:Xh6gWKC-ODk:yIl2AUoC8zA"><img src="http://feeds.feedburner.com/~ff/chris-miller?d=yIl2AUoC8zA" border="0"></img></a> <a href="http://feeds.feedburner.com/~ff/chris-miller?a=Muo81SQkAVc:Xh6gWKC-ODk:D7DqB2pKExk"><img src="http://feeds.feedburner.com/~ff/chris-miller?i=Muo81SQkAVc:Xh6gWKC-ODk:D7DqB2pKExk" border="0"></img></a> <a href="http://feeds.feedburner.com/~ff/chris-miller?a=Muo81SQkAVc:Xh6gWKC-ODk:F7zBnMyn0Lo"><img src="http://feeds.feedburner.com/~ff/chris-miller?i=Muo81SQkAVc:Xh6gWKC-ODk:F7zBnMyn0Lo" border="0"></img></a> <a href="http://feeds.feedburner.com/~ff/chris-miller?a=Muo81SQkAVc:Xh6gWKC-ODk:V_sGLiPBpWU"><img src="http://feeds.feedburner.com/~ff/chris-miller?i=Muo81SQkAVc:Xh6gWKC-ODk:V_sGLiPBpWU" border="0"></img></a> <a href="http://feeds.feedburner.com/~ff/chris-miller?a=Muo81SQkAVc:Xh6gWKC-ODk:qj6IDK7rITs"><img src="http://feeds.feedburner.com/~ff/chris-miller?d=qj6IDK7rITs" border="0"></img></a> <a href="http://feeds.feedburner.com/~ff/chris-miller?a=Muo81SQkAVc:Xh6gWKC-ODk:gIN9vFwOqvQ"><img src="http://feeds.feedburner.com/~ff/chris-miller?i=Muo81SQkAVc:Xh6gWKC-ODk:gIN9vFwOqvQ" border="0"></img></a>
</div><img src="http://feeds.feedburner.com/~r/chris-miller/~4/Muo81SQkAVc" height="1" width="1"/>]]></content:encoded>
			<wfw:commentRss>http://chris-miller.org/archives/2007/06/13/beating-the-devil-out-of-me/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		<feedburner:origLink>http://chris-miller.org/archives/2007/06/13/beating-the-devil-out-of-me/</feedburner:origLink></item>
		<item>
		<title>Open Source Smoothie</title>
		<link>http://feedproxy.google.com/~r/chris-miller/~3/S_F1JlADPpc/</link>
		<comments>http://chris-miller.org/archives/2007/05/30/open-source-smoothie/#comments</comments>
		<pubDate>Wed, 30 May 2007 18:16:53 +0000</pubDate>
		<dc:creator>Chris</dc:creator>
				<category><![CDATA[General]]></category>
		<category><![CDATA[carton]]></category>
		<category><![CDATA[innocent]]></category>
		<category><![CDATA[mangoes]]></category>
		<category><![CDATA[open]]></category>
		<category><![CDATA[passion fruits]]></category>
		<category><![CDATA[smoothie]]></category>
		<category><![CDATA[source]]></category>

		<guid isPermaLink="false">http://chris-miller.org/blog/archives/2007/05/30/open-source-smoothie/</guid>
		<description><![CDATA[Open source software is good, so good it&#8217;s catching.  After attending the local supermarket to purchase some food rations for the week ahead, I sat cracked open a carton of mangoes and passion fruits innocent smoothie.  Once I&#8217;d satisfied my initial thirst I decided to have a read of the carton, they usually [...]]]></description>
			<content:encoded><![CDATA[<p>Open source software is good, so good it&#8217;s catching.  After attending the local supermarket to purchase some food rations for the week ahead, I sat cracked open a carton of mangoes and passion fruits innocent smoothie.  Once I&#8217;d satisfied my initial thirst I decided to have a read of the carton, they usually put some pretty funny stuff on them.</p>
<p><span id="more-158"></span>Lo and behold, the mantra of open source has reached the foodstuffs market.</p>
<div style="text-align: center; margin: auto;">
<a href="http://www.flickr.com/photos/chrismiller/521845101/" title="Photo Sharing"><img src="http://farm1.static.flickr.com/224/521845101_ce91cc0546.jpg" width="375" height="500" alt="Open source smoothie - 1" /></a></p>
<div style="width: 375px; text-align: center; margin: auto; overflow: hidden;">
<a href="http://www.flickr.com/photos/chrismiller/521814358/" title="Photo Sharing"><img style="margin-left: -60px;" src="http://farm1.static.flickr.com/254/521814358_9ee5bdbd1f.jpg" width="500" height="375" alt="Open source smoothie - 2" /></a>
</div>
</div>
<p>The full text reads:</p>
<blockquote><p>
You might wonder why we&#8217;ve messed about with the front of this carton.  Well, it all started when you told us some stuff.  We asked you what you thought of this recipe and we got some interesting responses.  There was a general feeling that it might be a bit too sharp, and could do with an extra slice of mango.</p>
<p>So off we went to the kitchen, to see if we could make it a little better.  And after some blending and crushing, we are proud to present the result.  An improved recipe, designed to your exact specifications.  A kind of open source smoothie, without the complicated computer bits.  We hope you enjoy it.
</p></blockquote>
<p>It made me laugh and I though it was worth a mention.<br />
- Chris</p>
<div class="feedflare">
<a href="http://feeds.feedburner.com/~ff/chris-miller?a=S_F1JlADPpc:5mXns3RZmi4:yIl2AUoC8zA"><img src="http://feeds.feedburner.com/~ff/chris-miller?d=yIl2AUoC8zA" border="0"></img></a> <a href="http://feeds.feedburner.com/~ff/chris-miller?a=S_F1JlADPpc:5mXns3RZmi4:D7DqB2pKExk"><img src="http://feeds.feedburner.com/~ff/chris-miller?i=S_F1JlADPpc:5mXns3RZmi4:D7DqB2pKExk" border="0"></img></a> <a href="http://feeds.feedburner.com/~ff/chris-miller?a=S_F1JlADPpc:5mXns3RZmi4:F7zBnMyn0Lo"><img src="http://feeds.feedburner.com/~ff/chris-miller?i=S_F1JlADPpc:5mXns3RZmi4:F7zBnMyn0Lo" border="0"></img></a> <a href="http://feeds.feedburner.com/~ff/chris-miller?a=S_F1JlADPpc:5mXns3RZmi4:V_sGLiPBpWU"><img src="http://feeds.feedburner.com/~ff/chris-miller?i=S_F1JlADPpc:5mXns3RZmi4:V_sGLiPBpWU" border="0"></img></a> <a href="http://feeds.feedburner.com/~ff/chris-miller?a=S_F1JlADPpc:5mXns3RZmi4:qj6IDK7rITs"><img src="http://feeds.feedburner.com/~ff/chris-miller?d=qj6IDK7rITs" border="0"></img></a> <a href="http://feeds.feedburner.com/~ff/chris-miller?a=S_F1JlADPpc:5mXns3RZmi4:gIN9vFwOqvQ"><img src="http://feeds.feedburner.com/~ff/chris-miller?i=S_F1JlADPpc:5mXns3RZmi4:gIN9vFwOqvQ" border="0"></img></a>
</div><img src="http://feeds.feedburner.com/~r/chris-miller/~4/S_F1JlADPpc" height="1" width="1"/>]]></content:encoded>
			<wfw:commentRss>http://chris-miller.org/archives/2007/05/30/open-source-smoothie/feed/</wfw:commentRss>
		<slash:comments>2</slash:comments>
		<feedburner:origLink>http://chris-miller.org/archives/2007/05/30/open-source-smoothie/</feedburner:origLink></item>
		<item>
		<title>An update on Everything!</title>
		<link>http://feedproxy.google.com/~r/chris-miller/~3/0_cV5htl9n8/</link>
		<comments>http://chris-miller.org/archives/2007/04/16/an-update-on-everything/#comments</comments>
		<pubDate>Mon, 16 Apr 2007 12:52:56 +0000</pubDate>
		<dc:creator>Chris</dc:creator>
				<category><![CDATA[Personal]]></category>
		<category><![CDATA[Work]]></category>
		<category><![CDATA[back]]></category>
		<category><![CDATA[broadband]]></category>
		<category><![CDATA[BT]]></category>
		<category><![CDATA[flat]]></category>
		<category><![CDATA[Glasgow]]></category>
		<category><![CDATA[Iain]]></category>
		<category><![CDATA[Internet]]></category>

		<guid isPermaLink="false">http://chris-miller.org/blog/archives/2007/04/16/an-update-on-everything/</guid>
		<description><![CDATA[It&#8217;s been a while since I&#8217;ve posted, mainly due to a lack of internet connection but also because I&#8217;m damn lazy.
Things have been going well, as I my previous post says, I&#8217;ve gotten a job in Glasgow.  I&#8217;ve now also moved into my new flat and have, finally*, got an internet connection again.  [...]]]></description>
			<content:encoded><![CDATA[<p>It&#8217;s been a while since I&#8217;ve posted, mainly due to a lack of internet connection but also because I&#8217;m damn lazy.</p>
<p>Things have been going well, <a href="/blog/archives/2007/03/03/jobsearchstop/" title="JobSearch.stop()">as I my previous post says, I&#8217;ve gotten a job in Glasgow</a>.  I&#8217;ve now also moved into my new flat and have, <em>finally</em>*, got an internet connection again.  (Photos to follow sometime in the near future)</p>
<p><span id="more-157"></span>Everything is going pretty well, the work is interesting and the people I&#8217;m working with are a good bunch**.  For the first time in a long while I actually have money, the most of which is currently gone, and I&#8217;m getting back in touch with all the folks I know in Glasgow.</p>
<p>Anyway this is more of an I&#8217;m back post to say: &#8220;I&#8217;m Back!&#8221;.<br />
- Chris</p>
<p>* After some very troubling times with BT Broadband<br />
** <a href="http://iain-simpson.org" title="No longer with long hair!">One of whom</a> recently had a haircut!</p>
<div class="feedflare">
<a href="http://feeds.feedburner.com/~ff/chris-miller?a=0_cV5htl9n8:3mJkoaqjQmk:yIl2AUoC8zA"><img src="http://feeds.feedburner.com/~ff/chris-miller?d=yIl2AUoC8zA" border="0"></img></a> <a href="http://feeds.feedburner.com/~ff/chris-miller?a=0_cV5htl9n8:3mJkoaqjQmk:D7DqB2pKExk"><img src="http://feeds.feedburner.com/~ff/chris-miller?i=0_cV5htl9n8:3mJkoaqjQmk:D7DqB2pKExk" border="0"></img></a> <a href="http://feeds.feedburner.com/~ff/chris-miller?a=0_cV5htl9n8:3mJkoaqjQmk:F7zBnMyn0Lo"><img src="http://feeds.feedburner.com/~ff/chris-miller?i=0_cV5htl9n8:3mJkoaqjQmk:F7zBnMyn0Lo" border="0"></img></a> <a href="http://feeds.feedburner.com/~ff/chris-miller?a=0_cV5htl9n8:3mJkoaqjQmk:V_sGLiPBpWU"><img src="http://feeds.feedburner.com/~ff/chris-miller?i=0_cV5htl9n8:3mJkoaqjQmk:V_sGLiPBpWU" border="0"></img></a> <a href="http://feeds.feedburner.com/~ff/chris-miller?a=0_cV5htl9n8:3mJkoaqjQmk:qj6IDK7rITs"><img src="http://feeds.feedburner.com/~ff/chris-miller?d=qj6IDK7rITs" border="0"></img></a> <a href="http://feeds.feedburner.com/~ff/chris-miller?a=0_cV5htl9n8:3mJkoaqjQmk:gIN9vFwOqvQ"><img src="http://feeds.feedburner.com/~ff/chris-miller?i=0_cV5htl9n8:3mJkoaqjQmk:gIN9vFwOqvQ" border="0"></img></a>
</div><img src="http://feeds.feedburner.com/~r/chris-miller/~4/0_cV5htl9n8" height="1" width="1"/>]]></content:encoded>
			<wfw:commentRss>http://chris-miller.org/archives/2007/04/16/an-update-on-everything/feed/</wfw:commentRss>
		<slash:comments>1</slash:comments>
		<feedburner:origLink>http://chris-miller.org/archives/2007/04/16/an-update-on-everything/</feedburner:origLink></item>
	</channel>
</rss>
