<?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>Life of Andrew</title>
	
	<link>http://sandfly.net.nz/blog</link>
	<description>Life, technology</description>
	<lastBuildDate>Thu, 02 Feb 2012 09:04:07 +0000</lastBuildDate>
	<language>en</language>
	<sy:updatePeriod>hourly</sy:updatePeriod>
	<sy:updateFrequency>1</sy:updateFrequency>
	<generator>http://wordpress.org/?v=3.3.1</generator>
		<atom10:link xmlns:atom10="http://www.w3.org/2005/Atom" rel="self" type="application/rss+xml" href="http://feeds.feedburner.com/LifeOfAndrew" /><feedburner:info uri="lifeofandrew" /><atom10:link xmlns:atom10="http://www.w3.org/2005/Atom" rel="hub" href="http://pubsubhubbub.appspot.com/" /><item>
		<title>Tiger Slug – Limax Maximus</title>
		<link>http://feedproxy.google.com/~r/LifeOfAndrew/~3/0tIRgIOPrbA/</link>
		<comments>http://sandfly.net.nz/blog/2012/02/tiger-slug-limax-maximus/#comments</comments>
		<pubDate>Thu, 02 Feb 2012 09:03:26 +0000</pubDate>
		<dc:creator>Andrew</dc:creator>
				<category><![CDATA[my projects]]></category>
		<category><![CDATA[garden]]></category>
		<category><![CDATA[photo]]></category>
		<category><![CDATA[photography]]></category>

		<guid isPermaLink="false">http://sandfly.net.nz/blog/?p=1382</guid>
		<description><![CDATA[I disturbed this fellow while gardening today. He took off at speed across my lawn but since he is a slug I had plenty of time to get my camera a snap a few shots. This is Limax Maximus &#8211; &#8230; <a href="http://sandfly.net.nz/blog/2012/02/tiger-slug-limax-maximus/">Continue reading <span class="meta-nav">&#8594;</span></a>
Related posts:<ol>
<li><a href='http://sandfly.net.nz/blog/2011/11/behold-the-bountiful-harvest-of-the-earth/' rel='bookmark' title='Behold the bountiful harvest of the Earth'>Behold the bountiful harvest of the Earth</a></li>
</ol>]]></description>
			<content:encoded><![CDATA[<p><img src="http://sandfly.net.nz/blog/wp-content/uploads/2012/02/tiger_slug_from_side.jpg" alt="Side view of the Tiger Slug" title="Tiger Slug from side" width="600" height="230" class="aligncenter size-full wp-image-1384" /></p>
<p>I disturbed this fellow while gardening today. He took off at speed across my lawn but since he is a slug I had plenty of time to get my camera a snap a few shots.</p>
<p>This is <em>Limax Maximus</em> &#8211; the Tiger Slug (or Leopard Slug depending on whether you like the striped tail or the spotted mantle) and they are impressively large. My garden is full of them. Most slugs I kill on sight, but I leave the Tiger Slugs alone because they supposedly kill other garden pests. Besides, they give me a slow moving target to practice macro photography.</p>
<p><img src="http://sandfly.net.nz/blog/wp-content/uploads/2012/02/tiger_slug_from_front.jpg" alt="Front view of the Tiger Slug" title="Tiger Slug from front" width="600" height="453" class="aligncenter size-full wp-image-1383" /></p>
<p>Arrrggh, it&#8217;s coming right for me!</p>
<div class="alignright"><div class="g-plusone" data-href="http://sandfly.net.nz/blog/2012/02/tiger-slug-limax-maximus/" size="small" count="true"></div></div><p>Related posts:<ol>
<li><a href='http://sandfly.net.nz/blog/2011/11/behold-the-bountiful-harvest-of-the-earth/' rel='bookmark' title='Behold the bountiful harvest of the Earth'>Behold the bountiful harvest of the Earth</a></li>
</ol></p><div class="feedflare">
<a href="http://feeds.feedburner.com/~ff/LifeOfAndrew?a=0tIRgIOPrbA:N6-5sxj7ido:yIl2AUoC8zA"><img src="http://feeds.feedburner.com/~ff/LifeOfAndrew?d=yIl2AUoC8zA" border="0"></img></a> <a href="http://feeds.feedburner.com/~ff/LifeOfAndrew?a=0tIRgIOPrbA:N6-5sxj7ido:-BTjWOF_DHI"><img src="http://feeds.feedburner.com/~ff/LifeOfAndrew?i=0tIRgIOPrbA:N6-5sxj7ido:-BTjWOF_DHI" border="0"></img></a> <a href="http://feeds.feedburner.com/~ff/LifeOfAndrew?a=0tIRgIOPrbA:N6-5sxj7ido:qj6IDK7rITs"><img src="http://feeds.feedburner.com/~ff/LifeOfAndrew?d=qj6IDK7rITs" border="0"></img></a> <a href="http://feeds.feedburner.com/~ff/LifeOfAndrew?a=0tIRgIOPrbA:N6-5sxj7ido:D7DqB2pKExk"><img src="http://feeds.feedburner.com/~ff/LifeOfAndrew?i=0tIRgIOPrbA:N6-5sxj7ido:D7DqB2pKExk" border="0"></img></a> <a href="http://feeds.feedburner.com/~ff/LifeOfAndrew?a=0tIRgIOPrbA:N6-5sxj7ido:I9og5sOYxJI"><img src="http://feeds.feedburner.com/~ff/LifeOfAndrew?d=I9og5sOYxJI" border="0"></img></a>
</div><img src="http://feeds.feedburner.com/~r/LifeOfAndrew/~4/0tIRgIOPrbA" height="1" width="1"/>]]></content:encoded>
			<wfw:commentRss>http://sandfly.net.nz/blog/2012/02/tiger-slug-limax-maximus/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		<feedburner:origLink>http://sandfly.net.nz/blog/2012/02/tiger-slug-limax-maximus/?utm_source=rss&amp;utm_medium=rss&amp;utm_campaign=tiger-slug-limax-maximus</feedburner:origLink></item>
		<item>
		<title>Book Review : Two Non-Fiction Books on Destruction</title>
		<link>http://feedproxy.google.com/~r/LifeOfAndrew/~3/gdqr0tvFlE4/</link>
		<comments>http://sandfly.net.nz/blog/2012/01/book-review-two-non-fiction-books-on-destruction/#comments</comments>
		<pubDate>Mon, 16 Jan 2012 09:20:50 +0000</pubDate>
		<dc:creator>Andrew</dc:creator>
				<category><![CDATA[Culture]]></category>
		<category><![CDATA[book]]></category>
		<category><![CDATA[crime]]></category>
		<category><![CDATA[review]]></category>
		<category><![CDATA[science]]></category>

		<guid isPermaLink="false">http://sandfly.net.nz/blog/?p=1371</guid>
		<description><![CDATA[The Wizard of Lies By Diana B. Henriques A relatively recent book on the Bernie Madoff Ponzi scheme, including information straight from the man himself. I got this hoping for an exciting and twisty crime story about a master criminal, &#8230; <a href="http://sandfly.net.nz/blog/2012/01/book-review-two-non-fiction-books-on-destruction/">Continue reading <span class="meta-nav">&#8594;</span></a>
Related posts:<ol>
<li><a href='http://sandfly.net.nz/blog/2009/05/book-review-three-books/' rel='bookmark' title='Book Review : Three Books'>Book Review : Three Books</a></li>
<li><a href='http://sandfly.net.nz/blog/2011/10/book-review-house-of-leaves/' rel='bookmark' title='Book Review : House of Leaves'>Book Review : House of Leaves</a></li>
<li><a href='http://sandfly.net.nz/blog/2007/12/book-review-bambi-vs-godzilla/' rel='bookmark' title='Book Review : Bambi vs. Godzilla'>Book Review : Bambi vs. Godzilla</a></li>
</ol>]]></description>
			<content:encoded><![CDATA[<h2><em>The Wizard of Lies</em> By Diana B. Henriques</h2>
<p><img src="http://sandfly.net.nz/blog/wp-content/uploads/2012/01/the_wizard_of_lies_cover.jpg" alt="" title="Cover of The Wizard of Lies by Diana B. Henriques" width="180" height="234" class="alignright size-full wp-image-1373" />A relatively recent book on the Bernie Madoff Ponzi scheme, including information straight from the man himself. I got this hoping for an exciting and twisty crime story about a master criminal, but it turns out the Madoff&#8217;s scheme was stupidly simple &#8211; he lied about some stuff and keep lying. He wasn&#8217;t even very clever about it, but somehow managed to keep the house of cards upright for decades.</p>
<p>Henriques&#8217; book covers a huge amount of ground &#8211; going back to Madoff&#8217;s childhood upbringing to his peak as a pillar of the New York community. A huge amount of research has been distilled into a very readable story &#8211; just about everyone who ever met Madoff seems to have been interviewed, and enough time has passed that the full effects of the scam have been revealed. I just wish that the crime was more ingenious.</p>
<p>Recommended if you like this sort of thing</p>
<h2><em>Death From the Skies!</em> By Philip Plait</h2>
<p><img src="http://sandfly.net.nz/blog/wp-content/uploads/2012/01/death_from_the_skies_cover.jpg" alt="" title="Cover of Death from the Skies! by Phil Plait" width="160" height="240" class="alignright size-full wp-image-1372" />Plait runs the popular <a href="http://blogs.discovermagazine.com/badastronomy/">Bad Astronomy blog</a> which is far more interesting than it has any right to be, this book is even better. There are many books that seek to explain the wonders of the universe in an entertaining way, but Death From the Skies! is the only one that takes the &#8220;How could this kill us all&#8221; approach. From supernovas to comets, Plait runs down the numbers and details exactly what would happen to the Earth should such misfortune strike (spoiler: it doesn&#8217;t look good).</p>
<p>Plait clearly explains the concepts behind familiar astronomical terms and breaks down the magnitude (usually way to large large) and probability (usually not small enough) of each occurrence. It&#8217;s all very entertaining, but not something you want to read straight before going to sleep.</p>
<p>Highly recommended </p>
<div class="alignright"><div class="g-plusone" data-href="http://sandfly.net.nz/blog/2012/01/book-review-two-non-fiction-books-on-destruction/" size="small" count="true"></div></div><p>Related posts:<ol>
<li><a href='http://sandfly.net.nz/blog/2009/05/book-review-three-books/' rel='bookmark' title='Book Review : Three Books'>Book Review : Three Books</a></li>
<li><a href='http://sandfly.net.nz/blog/2011/10/book-review-house-of-leaves/' rel='bookmark' title='Book Review : House of Leaves'>Book Review : House of Leaves</a></li>
<li><a href='http://sandfly.net.nz/blog/2007/12/book-review-bambi-vs-godzilla/' rel='bookmark' title='Book Review : Bambi vs. Godzilla'>Book Review : Bambi vs. Godzilla</a></li>
</ol></p><div class="feedflare">
<a href="http://feeds.feedburner.com/~ff/LifeOfAndrew?a=gdqr0tvFlE4:YKumJU8LDAA:yIl2AUoC8zA"><img src="http://feeds.feedburner.com/~ff/LifeOfAndrew?d=yIl2AUoC8zA" border="0"></img></a> <a href="http://feeds.feedburner.com/~ff/LifeOfAndrew?a=gdqr0tvFlE4:YKumJU8LDAA:-BTjWOF_DHI"><img src="http://feeds.feedburner.com/~ff/LifeOfAndrew?i=gdqr0tvFlE4:YKumJU8LDAA:-BTjWOF_DHI" border="0"></img></a> <a href="http://feeds.feedburner.com/~ff/LifeOfAndrew?a=gdqr0tvFlE4:YKumJU8LDAA:qj6IDK7rITs"><img src="http://feeds.feedburner.com/~ff/LifeOfAndrew?d=qj6IDK7rITs" border="0"></img></a> <a href="http://feeds.feedburner.com/~ff/LifeOfAndrew?a=gdqr0tvFlE4:YKumJU8LDAA:D7DqB2pKExk"><img src="http://feeds.feedburner.com/~ff/LifeOfAndrew?i=gdqr0tvFlE4:YKumJU8LDAA:D7DqB2pKExk" border="0"></img></a> <a href="http://feeds.feedburner.com/~ff/LifeOfAndrew?a=gdqr0tvFlE4:YKumJU8LDAA:I9og5sOYxJI"><img src="http://feeds.feedburner.com/~ff/LifeOfAndrew?d=I9og5sOYxJI" border="0"></img></a>
</div><img src="http://feeds.feedburner.com/~r/LifeOfAndrew/~4/gdqr0tvFlE4" height="1" width="1"/>]]></content:encoded>
			<wfw:commentRss>http://sandfly.net.nz/blog/2012/01/book-review-two-non-fiction-books-on-destruction/feed/</wfw:commentRss>
		<slash:comments>4</slash:comments>
		<feedburner:origLink>http://sandfly.net.nz/blog/2012/01/book-review-two-non-fiction-books-on-destruction/?utm_source=rss&amp;utm_medium=rss&amp;utm_campaign=book-review-two-non-fiction-books-on-destruction</feedburner:origLink></item>
		<item>
		<title>Book Review : Cryptic and Oceanic – Two SciFi Short Story Collections</title>
		<link>http://feedproxy.google.com/~r/LifeOfAndrew/~3/LDHFgqFqE20/</link>
		<comments>http://sandfly.net.nz/blog/2012/01/book-review-cryptic-and-oceanic-two-scifi-short-story-collections/#comments</comments>
		<pubDate>Mon, 16 Jan 2012 09:12:54 +0000</pubDate>
		<dc:creator>Andrew</dc:creator>
				<category><![CDATA[Culture]]></category>
		<category><![CDATA[book]]></category>
		<category><![CDATA[review]]></category>
		<category><![CDATA[scifi]]></category>

		<guid isPermaLink="false">http://sandfly.net.nz/blog/?p=1361</guid>
		<description><![CDATA[Cryptic : The Best Short Fiction of Jack McDevitt A mammoth collection of scifi short stories by the prolific Jack McDevitt. McDevitt has an old-fashioned manner and his stories remind me strongly of the tales from the 50s and 60s &#8230; <a href="http://sandfly.net.nz/blog/2012/01/book-review-cryptic-and-oceanic-two-scifi-short-story-collections/">Continue reading <span class="meta-nav">&#8594;</span></a>
Related posts:<ol>
<li><a href='http://sandfly.net.nz/blog/2009/03/book-bragging-rights-scifi-edition/' rel='bookmark' title='Book Bragging Rights (SciFi edition)'>Book Bragging Rights (SciFi edition)</a></li>
<li><a href='http://sandfly.net.nz/blog/2009/05/book-review-three-books/' rel='bookmark' title='Book Review : Three Books'>Book Review : Three Books</a></li>
<li><a href='http://sandfly.net.nz/blog/2011/10/marooned_in_realtime/' rel='bookmark' title='Book Review &#8211; Marooned In Realtime'>Book Review &#8211; Marooned In Realtime</a></li>
</ol>]]></description>
			<content:encoded><![CDATA[<h2><em>Cryptic : The Best Short Fiction of Jack McDevitt</em></h2>
<p><img src="http://sandfly.net.nz/blog/wp-content/uploads/2012/01/cryptic_cover.jpg" alt="Cover of Cryptic by Jack McDevitt" title="Cover of Cryptic by Jack McDevitt" width="180" height="273" class="alignright size-full wp-image-1363" />A mammoth collection of scifi short stories by the prolific Jack McDevitt. McDevitt has an old-fashioned manner and his stories remind me strongly of the tales from the 50s and 60s that I grew up reading &#8211; this is not a bad thing. </p>
<p>Not every story is a corker, but most are good and some are downright excellent. My one complaint is that they tend to be rather constant in tone and style, I finished the book yesterday and the stories are all starting to blend together in my head.</p>
<p>Recommended if you like this sort of thing</p>
<h2><em>Oceanic</em> By Greg Egan</h2>
<p><img src="http://sandfly.net.nz/blog/wp-content/uploads/2012/01/oceanic_cover.jpg" alt="Cover of Oceanic by Greg Egan" title="Cover of Oceanic by Greg Egan" width="180" height="271" class="alignright size-full wp-image-1364" />Another collection of Scifi short stories, this time by <a href="http://gregegan.customer.netspace.net.au/">Greg Egan</a>. Egan is a programmer, and his stories are hard-as-diamond tales of artificial life, strange physical frontiers behind every atom, and clear-eyed researchers heroically hunched over keyboards in darkened rooms. Great stuff, and this collection really shows his ferocious imagination and range as a writer. The title story (<a href="http://gregegan.customer.netspace.net.au/OCEANIC/Complete/Oceanic.html">full text here</a>) in particular is a very well done piece that packs a lot of depth into a few pages.</p>
<p>Highly recommended</p>
<div class="alignright"><div class="g-plusone" data-href="http://sandfly.net.nz/blog/2012/01/book-review-cryptic-and-oceanic-two-scifi-short-story-collections/" size="small" count="true"></div></div><p>Related posts:<ol>
<li><a href='http://sandfly.net.nz/blog/2009/03/book-bragging-rights-scifi-edition/' rel='bookmark' title='Book Bragging Rights (SciFi edition)'>Book Bragging Rights (SciFi edition)</a></li>
<li><a href='http://sandfly.net.nz/blog/2009/05/book-review-three-books/' rel='bookmark' title='Book Review : Three Books'>Book Review : Three Books</a></li>
<li><a href='http://sandfly.net.nz/blog/2011/10/marooned_in_realtime/' rel='bookmark' title='Book Review &#8211; Marooned In Realtime'>Book Review &#8211; Marooned In Realtime</a></li>
</ol></p><div class="feedflare">
<a href="http://feeds.feedburner.com/~ff/LifeOfAndrew?a=LDHFgqFqE20:6H0zmGPaBPA:yIl2AUoC8zA"><img src="http://feeds.feedburner.com/~ff/LifeOfAndrew?d=yIl2AUoC8zA" border="0"></img></a> <a href="http://feeds.feedburner.com/~ff/LifeOfAndrew?a=LDHFgqFqE20:6H0zmGPaBPA:-BTjWOF_DHI"><img src="http://feeds.feedburner.com/~ff/LifeOfAndrew?i=LDHFgqFqE20:6H0zmGPaBPA:-BTjWOF_DHI" border="0"></img></a> <a href="http://feeds.feedburner.com/~ff/LifeOfAndrew?a=LDHFgqFqE20:6H0zmGPaBPA:qj6IDK7rITs"><img src="http://feeds.feedburner.com/~ff/LifeOfAndrew?d=qj6IDK7rITs" border="0"></img></a> <a href="http://feeds.feedburner.com/~ff/LifeOfAndrew?a=LDHFgqFqE20:6H0zmGPaBPA:D7DqB2pKExk"><img src="http://feeds.feedburner.com/~ff/LifeOfAndrew?i=LDHFgqFqE20:6H0zmGPaBPA:D7DqB2pKExk" border="0"></img></a> <a href="http://feeds.feedburner.com/~ff/LifeOfAndrew?a=LDHFgqFqE20:6H0zmGPaBPA:I9og5sOYxJI"><img src="http://feeds.feedburner.com/~ff/LifeOfAndrew?d=I9og5sOYxJI" border="0"></img></a>
</div><img src="http://feeds.feedburner.com/~r/LifeOfAndrew/~4/LDHFgqFqE20" height="1" width="1"/>]]></content:encoded>
			<wfw:commentRss>http://sandfly.net.nz/blog/2012/01/book-review-cryptic-and-oceanic-two-scifi-short-story-collections/feed/</wfw:commentRss>
		<slash:comments>2</slash:comments>
		<feedburner:origLink>http://sandfly.net.nz/blog/2012/01/book-review-cryptic-and-oceanic-two-scifi-short-story-collections/?utm_source=rss&amp;utm_medium=rss&amp;utm_campaign=book-review-cryptic-and-oceanic-two-scifi-short-story-collections</feedburner:origLink></item>
		<item>
		<title>Crème brûlée</title>
		<link>http://feedproxy.google.com/~r/LifeOfAndrew/~3/NkIM5raOhKI/</link>
		<comments>http://sandfly.net.nz/blog/2011/12/creme-brulee/#comments</comments>
		<pubDate>Fri, 30 Dec 2011 08:16:06 +0000</pubDate>
		<dc:creator>Andrew</dc:creator>
				<category><![CDATA[Food]]></category>
		<category><![CDATA[food]]></category>
		<category><![CDATA[recipe]]></category>

		<guid isPermaLink="false">http://sandfly.net.nz/blog/?p=1357</guid>
		<description><![CDATA[I got a blowtorch for Christmas, and what better way to break it in than to make Crème brûlée? (I think it is pretty obvious this is my first attempt, but it tasted just fine) No related posts.
No related posts.]]></description>
			<content:encoded><![CDATA[<p>I got a blowtorch for Christmas, and what better way to break it in than to make Crème brûlée?</p>
<p><img src="http://sandfly.net.nz/blog/wp-content/uploads/2011/12/creme_brulee.jpg" alt="My first attempt at Crème brûlée" title="Crème brûlée" width="520" height="306" class="aligncenter size-full wp-image-1358" /></p>
<p>(I think it is pretty obvious this is my first attempt, but it tasted just fine)</p>
<div class="alignright"><div class="g-plusone" data-href="http://sandfly.net.nz/blog/2011/12/creme-brulee/" size="small" count="true"></div></div><p>No related posts.</p><div class="feedflare">
<a href="http://feeds.feedburner.com/~ff/LifeOfAndrew?a=NkIM5raOhKI:Q7q-SMRh9XQ:yIl2AUoC8zA"><img src="http://feeds.feedburner.com/~ff/LifeOfAndrew?d=yIl2AUoC8zA" border="0"></img></a> <a href="http://feeds.feedburner.com/~ff/LifeOfAndrew?a=NkIM5raOhKI:Q7q-SMRh9XQ:-BTjWOF_DHI"><img src="http://feeds.feedburner.com/~ff/LifeOfAndrew?i=NkIM5raOhKI:Q7q-SMRh9XQ:-BTjWOF_DHI" border="0"></img></a> <a href="http://feeds.feedburner.com/~ff/LifeOfAndrew?a=NkIM5raOhKI:Q7q-SMRh9XQ:qj6IDK7rITs"><img src="http://feeds.feedburner.com/~ff/LifeOfAndrew?d=qj6IDK7rITs" border="0"></img></a> <a href="http://feeds.feedburner.com/~ff/LifeOfAndrew?a=NkIM5raOhKI:Q7q-SMRh9XQ:D7DqB2pKExk"><img src="http://feeds.feedburner.com/~ff/LifeOfAndrew?i=NkIM5raOhKI:Q7q-SMRh9XQ:D7DqB2pKExk" border="0"></img></a> <a href="http://feeds.feedburner.com/~ff/LifeOfAndrew?a=NkIM5raOhKI:Q7q-SMRh9XQ:I9og5sOYxJI"><img src="http://feeds.feedburner.com/~ff/LifeOfAndrew?d=I9og5sOYxJI" border="0"></img></a>
</div><img src="http://feeds.feedburner.com/~r/LifeOfAndrew/~4/NkIM5raOhKI" height="1" width="1"/>]]></content:encoded>
			<wfw:commentRss>http://sandfly.net.nz/blog/2011/12/creme-brulee/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		<feedburner:origLink>http://sandfly.net.nz/blog/2011/12/creme-brulee/?utm_source=rss&amp;utm_medium=rss&amp;utm_campaign=creme-brulee</feedburner:origLink></item>
		<item>
		<title>Reading Old Books</title>
		<link>http://feedproxy.google.com/~r/LifeOfAndrew/~3/LiF1WonQ-Wo/</link>
		<comments>http://sandfly.net.nz/blog/2011/12/reading-old-books/#comments</comments>
		<pubDate>Wed, 28 Dec 2011 08:54:35 +0000</pubDate>
		<dc:creator>Andrew</dc:creator>
				<category><![CDATA[Culture]]></category>
		<category><![CDATA[book]]></category>
		<category><![CDATA[history]]></category>
		<category><![CDATA[review]]></category>

		<guid isPermaLink="false">http://sandfly.net.nz/blog/?p=1340</guid>
		<description><![CDATA[I have been going through a phase of reading old, out-of-copyright books – partly because I find it fascinating to see how various literary forms evolved over time, partly because if you go back far enough the books read like &#8230; <a href="http://sandfly.net.nz/blog/2011/12/reading-old-books/">Continue reading <span class="meta-nav">&#8594;</span></a>
Related posts:<ol>
<li><a href='http://sandfly.net.nz/blog/2009/05/book-review-three-books/' rel='bookmark' title='Book Review : Three Books'>Book Review : Three Books</a></li>
<li><a href='http://sandfly.net.nz/blog/2007/06/book-review-nathaniels-nutmeg/' rel='bookmark' title='Book Review: Nathaniel&#8217;s Nutmeg'>Book Review: Nathaniel&#8217;s Nutmeg</a></li>
<li><a href='http://sandfly.net.nz/blog/2009/03/librarything/' rel='bookmark' title='LibraryThing'>LibraryThing</a></li>
</ol>]]></description>
			<content:encoded><![CDATA[<p>I have been going through a phase of reading old, out-of-copyright books – partly because I find it fascinating to see how various literary forms evolved over time, partly because if you go back far enough the books read like science-fiction – alien concepts and strange customs abound, partly because it allows me to affect an air of being well read, but mostly because you can download them for free from Project Gutenberg and I am a cheap bastard.</p>
<h2><a href="http://www.gutenberg.org/ebooks/15411"><em>A Voyage to the South Sea</em> by William Bligh</a></h2>
<p><img src="http://sandfly.net.nz/blog/wp-content/uploads/2011/12/a_voyage_to_the_south_sea.jpg" alt="Cover of A Voyage to the South Sea" title="A Voyage to the South Sea" width="200" height="293" class="alignright size-full wp-image-1343" />A while ago I read <em>The Bounty</em> by Caroline Alexander, a modern account of Captain Bligh’s famous-for-all-the-wrong-reasons expedition to Tahiti aboard The Bounty. It focused mainly on what happened after everyone got home again. This book is the tale told by the man himself, compiled by Bligh from his logs kept during the voyage and it is a fascinating read. Even if there wasn’t a (spoiler alert!) mutiny, it would make for a cracking story as Bligh has an eye for both nautical detail during the voyage and a keen interest in how Tahitian society (very different to the English system) worked after The Bounty arrives.</p>
<p>And breadfruit, the dude was obsessed with breadfruit.</p>
<p>Once the mutiny occurs, the story turns into an epic struggle of survival as Bligh and his few remaining crew find that people treat you differently when you turn up on their island without a fully armed three-masted collier anchored just outside their reef.</p>
<p>It is a real pleasure to drop into the world of a competent person doing an interesting job. Since it is taken directly from his meticulous logs there is a charming matter-of-fact style as things unfold without foreshadowing or subplots. The one problem for a modern reader is that it is almost impossible to avoid hearing the text being read in James T. Kirk’s Captain’s Log voice; the style is exactly the same.</p>
<h2><a href="http://www.gutenberg.org/ebooks/376"><em>A Journey of the Plague Year</em> by Daniel Defoe</a></h2>
<p><img src="http://sandfly.net.nz/blog/wp-content/uploads/2011/12/journal_of_the_plague_year.jpg" alt="Cover for Journal of the Plague Year" title="Journal of the Plague Year Cover" width="200" height="357" class="alignright size-full wp-image-1344" />This early novel in the form of a diary purports to be a day-to-day account of the life of a young London man during the 1665 outbreak of the black plague as people were dying in their thousands. Defoe did actually live through the plague but he was only 5 at the time, so the story is fictionalized but obviously carefully researched. Defoe uses the experiences of the narrator to highlight how various aspects of society (the rich, the poor, etc) reacted to the plague, maintaining a detached tone while horrible things are occurring on all sides. The thing that struck me the most was the general atmosphere of resigned bewilderment that permeates the book – nobody in pre-germ theory London really understands what is going on but society continues on as best as it can while people are dropping dead and whole streets worth of houses are empty or contain only corpses.</p>
<p>After reading lots of disaster fiction (The Day of the Triffids, Dawn of the Dead, etc) I was heartened to see that people do not automatically devolve into angry, paranoid mobs during a real life events that kill a large percentage of the population, although plenty of isolated complete bastardry apparently will occur.</p>
<h2><a href="http://www.archive.org/details/battlesafesorbr00salagoog"><em>The Battle of the Safes, or, British Invincibles Versus Yankee Ironclads</em> by George Augustus Sala</a></h2>
<p>And now for something completely different. During the Paris Exhibition of 1867 a public relations spat broke out between a British firm of safe makers and an upstart American firm as to who made the safest safes. This was apparently a big deal in an age when people kept large amounts of cash on hand.</p>
<p>The American firm challenged the British to a public demonstration where each firm nominated a crack team to break into the other’s safe in the shortest possible time. Everything should be simple but the Americans (boo-hiss) keep changing the rules in their favour. Eventually the contest comes to an unsatisfying conclusion but everyone can see that the British (yeay!) have scored a great moral victory.</p>
<p>This is a short, enjoyable, one-sided account of an inconsequential event, filled with all kinds of intrigue and skullduggery. Nothing really gets resolved but it doesn’t matter unless you are really into safes (and the illustrations are great.)</p>
<p><img src="http://sandfly.net.nz/blog/wp-content/uploads/2011/12/the_american_safe.jpg" alt="Illustration from The Battle of the Safes - the American safe lies open" title="The American Safe" width="572" height="393" class="aligncenter size-full wp-image-1345" /> </p>
<div class="alignright"><div class="g-plusone" data-href="http://sandfly.net.nz/blog/2011/12/reading-old-books/" size="small" count="true"></div></div><p>Related posts:<ol>
<li><a href='http://sandfly.net.nz/blog/2009/05/book-review-three-books/' rel='bookmark' title='Book Review : Three Books'>Book Review : Three Books</a></li>
<li><a href='http://sandfly.net.nz/blog/2007/06/book-review-nathaniels-nutmeg/' rel='bookmark' title='Book Review: Nathaniel&#8217;s Nutmeg'>Book Review: Nathaniel&#8217;s Nutmeg</a></li>
<li><a href='http://sandfly.net.nz/blog/2009/03/librarything/' rel='bookmark' title='LibraryThing'>LibraryThing</a></li>
</ol></p><div class="feedflare">
<a href="http://feeds.feedburner.com/~ff/LifeOfAndrew?a=LiF1WonQ-Wo:afRIKGn2tgA:yIl2AUoC8zA"><img src="http://feeds.feedburner.com/~ff/LifeOfAndrew?d=yIl2AUoC8zA" border="0"></img></a> <a href="http://feeds.feedburner.com/~ff/LifeOfAndrew?a=LiF1WonQ-Wo:afRIKGn2tgA:-BTjWOF_DHI"><img src="http://feeds.feedburner.com/~ff/LifeOfAndrew?i=LiF1WonQ-Wo:afRIKGn2tgA:-BTjWOF_DHI" border="0"></img></a> <a href="http://feeds.feedburner.com/~ff/LifeOfAndrew?a=LiF1WonQ-Wo:afRIKGn2tgA:qj6IDK7rITs"><img src="http://feeds.feedburner.com/~ff/LifeOfAndrew?d=qj6IDK7rITs" border="0"></img></a> <a href="http://feeds.feedburner.com/~ff/LifeOfAndrew?a=LiF1WonQ-Wo:afRIKGn2tgA:D7DqB2pKExk"><img src="http://feeds.feedburner.com/~ff/LifeOfAndrew?i=LiF1WonQ-Wo:afRIKGn2tgA:D7DqB2pKExk" border="0"></img></a> <a href="http://feeds.feedburner.com/~ff/LifeOfAndrew?a=LiF1WonQ-Wo:afRIKGn2tgA:I9og5sOYxJI"><img src="http://feeds.feedburner.com/~ff/LifeOfAndrew?d=I9og5sOYxJI" border="0"></img></a>
</div><img src="http://feeds.feedburner.com/~r/LifeOfAndrew/~4/LiF1WonQ-Wo" height="1" width="1"/>]]></content:encoded>
			<wfw:commentRss>http://sandfly.net.nz/blog/2011/12/reading-old-books/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		<feedburner:origLink>http://sandfly.net.nz/blog/2011/12/reading-old-books/?utm_source=rss&amp;utm_medium=rss&amp;utm_campaign=reading-old-books</feedburner:origLink></item>
		<item>
		<title>Capturing Video at the Speed of Light</title>
		<link>http://feedproxy.google.com/~r/LifeOfAndrew/~3/aN63z__7R3c/</link>
		<comments>http://sandfly.net.nz/blog/2011/12/capturing-video-at-the-speed-of-light/#comments</comments>
		<pubDate>Wed, 14 Dec 2011 09:14:00 +0000</pubDate>
		<dc:creator>Andrew</dc:creator>
				<category><![CDATA[Uncategorized]]></category>
		<category><![CDATA[science]]></category>
		<category><![CDATA[video]]></category>
		<category><![CDATA[youtube]]></category>

		<guid isPermaLink="false">http://sandfly.net.nz/blog/?p=1334</guid>
		<description><![CDATA[When I was a child I used to amuse myself by imagining how things would look if light moved at a few meters per second. I thought it would be cool if you could walk into a dark room, turn &#8230; <a href="http://sandfly.net.nz/blog/2011/12/capturing-video-at-the-speed-of-light/">Continue reading <span class="meta-nav">&#8594;</span></a>
Related posts:<ol>
<li><a href='http://sandfly.net.nz/blog/2009/05/the-html5-video-tags-fatal-flaw/' rel='bookmark' title='The HTML5 Video Tag&#8217;s Fatal Flaw'>The HTML5 Video Tag&#8217;s Fatal Flaw</a></li>
</ol>]]></description>
			<content:encoded><![CDATA[<p>When I was a child I used to amuse myself by imagining how things would look if light moved at a few meters per second. I thought it would be cool if you could walk into a dark room, turn on the light and watch as the light spread throughout the scene. Wielding a flashlight would be interesting &#8211; you could easily make curved beams.</p>
<p>Now these guys have built a camera fast enough to show the same effect:</p>
<p><iframe width="640" height="360" src="http://www.youtube.com/embed/EtsXgODHMWk" frameborder="0" allowfullscreen></iframe></p>
<p>Of course, they do cheat a bit by only taking a 1 dimensional slice at a time and relying on the fact that they can repeatably fire identical pulses of light to make their images. Still this is exactly what I imagined it would be like.</p>
<p>Now someone needs to build the high wattage laser targeting system capable of taking out houseflies without blinding humans that I invented when I was 9.</p>
<div class="alignright"><div class="g-plusone" data-href="http://sandfly.net.nz/blog/2011/12/capturing-video-at-the-speed-of-light/" size="small" count="true"></div></div><p>Related posts:<ol>
<li><a href='http://sandfly.net.nz/blog/2009/05/the-html5-video-tags-fatal-flaw/' rel='bookmark' title='The HTML5 Video Tag&#8217;s Fatal Flaw'>The HTML5 Video Tag&#8217;s Fatal Flaw</a></li>
</ol></p><div class="feedflare">
<a href="http://feeds.feedburner.com/~ff/LifeOfAndrew?a=aN63z__7R3c:Bjbw6xPdcLo:yIl2AUoC8zA"><img src="http://feeds.feedburner.com/~ff/LifeOfAndrew?d=yIl2AUoC8zA" border="0"></img></a> <a href="http://feeds.feedburner.com/~ff/LifeOfAndrew?a=aN63z__7R3c:Bjbw6xPdcLo:-BTjWOF_DHI"><img src="http://feeds.feedburner.com/~ff/LifeOfAndrew?i=aN63z__7R3c:Bjbw6xPdcLo:-BTjWOF_DHI" border="0"></img></a> <a href="http://feeds.feedburner.com/~ff/LifeOfAndrew?a=aN63z__7R3c:Bjbw6xPdcLo:qj6IDK7rITs"><img src="http://feeds.feedburner.com/~ff/LifeOfAndrew?d=qj6IDK7rITs" border="0"></img></a> <a href="http://feeds.feedburner.com/~ff/LifeOfAndrew?a=aN63z__7R3c:Bjbw6xPdcLo:D7DqB2pKExk"><img src="http://feeds.feedburner.com/~ff/LifeOfAndrew?i=aN63z__7R3c:Bjbw6xPdcLo:D7DqB2pKExk" border="0"></img></a> <a href="http://feeds.feedburner.com/~ff/LifeOfAndrew?a=aN63z__7R3c:Bjbw6xPdcLo:I9og5sOYxJI"><img src="http://feeds.feedburner.com/~ff/LifeOfAndrew?d=I9og5sOYxJI" border="0"></img></a>
</div><img src="http://feeds.feedburner.com/~r/LifeOfAndrew/~4/aN63z__7R3c" height="1" width="1"/>]]></content:encoded>
			<wfw:commentRss>http://sandfly.net.nz/blog/2011/12/capturing-video-at-the-speed-of-light/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		<feedburner:origLink>http://sandfly.net.nz/blog/2011/12/capturing-video-at-the-speed-of-light/?utm_source=rss&amp;utm_medium=rss&amp;utm_campaign=capturing-video-at-the-speed-of-light</feedburner:origLink></item>
		<item>
		<title>Foo Fighters</title>
		<link>http://feedproxy.google.com/~r/LifeOfAndrew/~3/EWY4t162eqA/</link>
		<comments>http://sandfly.net.nz/blog/2011/12/foo-fighters/#comments</comments>
		<pubDate>Wed, 14 Dec 2011 08:45:03 +0000</pubDate>
		<dc:creator>Andrew</dc:creator>
				<category><![CDATA[Culture]]></category>
		<category><![CDATA[Places]]></category>
		<category><![CDATA[music]]></category>
		<category><![CDATA[panorama]]></category>

		<guid isPermaLink="false">http://sandfly.net.nz/blog/?p=1328</guid>
		<description><![CDATA[I unexpectedly went to the Foo Fighters concert yesterday. Click to enlarge Unexpectedly because I wasn&#8217;t planning on going, but a friend had to pull out and I bought her ticket. That was also unexpected, because I don&#8217;t really dig &#8230; <a href="http://sandfly.net.nz/blog/2011/12/foo-fighters/">Continue reading <span class="meta-nav">&#8594;</span></a>
No related posts.]]></description>
			<content:encoded><![CDATA[<p>I unexpectedly went to the Foo Fighters concert yesterday. </p>
<p><a href="http://sandfly.net.nz/blog/wp-content/uploads/2011/12/foo-fighters.jpg"><img src="http://sandfly.net.nz/blog/wp-content/uploads/2011/12/foo-fighters-1024x267.jpg" alt="Panoramic Photo of Auckland Foo Fighter Concert" title="Panoramic Photo of Auckland Foo Fighter Concert" width="584" height="152" class="aligncenter size-large wp-image-1329" />Click to enlarge</a></p>
<p>Unexpectedly because I wasn&#8217;t planning on going, but a friend had to pull out and I bought her ticket. That was also unexpected, because I don&#8217;t really dig the Foo Fighters. </p>
<p>I mean, I think they are OK. Acceptable. Competent. But lacking in that spark that I look for in a rock band.</p>
<p>The weather was not good, it had rained all afternoon and Western Springs Raceway was already soggy when we turned up so we staked a spot on the terraces and watched the support acts. We missed local heroes, Cairo Knife Fight, a band I know nothing about except that bFM name checks them constantly but never actually plays their tracks.</p>
<p>The second support act was Fucked Up &#8211; a canadian punk/death metal outfit who should have been terrible but come over very well. The lead singer left the stage and spent most of the set wandering around the crowd hugging people and occasionally drinking their beer between verses.</p>
<p>Next came the highlight of the evening for me &#8211; Tenacious D. For a joke band they did a tight set and Jack Black is genuinely funny on stage.</p>
<p>Finally, the Foo Fighters. Although they are not my favorite band, you have to respect a group that are prepared to play for almost 3 hours, even if 20 minutes of that was Dave Grohl nattering to the crowd. They played all their hits (after 17 years they have had quite a few) and seemed pleased to be here. The crowd loved it and even the rain let off to let them play. I can understand why Grohl is so popular, he comes across as a sincere and decent person. In my book that is a strike against him as a rocker, but I seem to be outnumbered. </p>
<p>Despite the rain I had a great time at the Foo Fighters. Not enough to buy their music, but I certainly got my money&#8217;s worth.</p>
<div class="alignright"><div class="g-plusone" data-href="http://sandfly.net.nz/blog/2011/12/foo-fighters/" size="small" count="true"></div></div><p>No related posts.</p><div class="feedflare">
<a href="http://feeds.feedburner.com/~ff/LifeOfAndrew?a=EWY4t162eqA:JU1arpDZ4xg:yIl2AUoC8zA"><img src="http://feeds.feedburner.com/~ff/LifeOfAndrew?d=yIl2AUoC8zA" border="0"></img></a> <a href="http://feeds.feedburner.com/~ff/LifeOfAndrew?a=EWY4t162eqA:JU1arpDZ4xg:-BTjWOF_DHI"><img src="http://feeds.feedburner.com/~ff/LifeOfAndrew?i=EWY4t162eqA:JU1arpDZ4xg:-BTjWOF_DHI" border="0"></img></a> <a href="http://feeds.feedburner.com/~ff/LifeOfAndrew?a=EWY4t162eqA:JU1arpDZ4xg:qj6IDK7rITs"><img src="http://feeds.feedburner.com/~ff/LifeOfAndrew?d=qj6IDK7rITs" border="0"></img></a> <a href="http://feeds.feedburner.com/~ff/LifeOfAndrew?a=EWY4t162eqA:JU1arpDZ4xg:D7DqB2pKExk"><img src="http://feeds.feedburner.com/~ff/LifeOfAndrew?i=EWY4t162eqA:JU1arpDZ4xg:D7DqB2pKExk" border="0"></img></a> <a href="http://feeds.feedburner.com/~ff/LifeOfAndrew?a=EWY4t162eqA:JU1arpDZ4xg:I9og5sOYxJI"><img src="http://feeds.feedburner.com/~ff/LifeOfAndrew?d=I9og5sOYxJI" border="0"></img></a>
</div><img src="http://feeds.feedburner.com/~r/LifeOfAndrew/~4/EWY4t162eqA" height="1" width="1"/>]]></content:encoded>
			<wfw:commentRss>http://sandfly.net.nz/blog/2011/12/foo-fighters/feed/</wfw:commentRss>
		<slash:comments>2</slash:comments>
		<feedburner:origLink>http://sandfly.net.nz/blog/2011/12/foo-fighters/?utm_source=rss&amp;utm_medium=rss&amp;utm_campaign=foo-fighters</feedburner:origLink></item>
		<item>
		<title>Another Panorama</title>
		<link>http://feedproxy.google.com/~r/LifeOfAndrew/~3/h8tz-o-1P9E/</link>
		<comments>http://sandfly.net.nz/blog/2011/12/another-panorama/#comments</comments>
		<pubDate>Fri, 02 Dec 2011 08:31:35 +0000</pubDate>
		<dc:creator>Andrew</dc:creator>
				<category><![CDATA[Places]]></category>
		<category><![CDATA[iphone]]></category>
		<category><![CDATA[panorama]]></category>
		<category><![CDATA[photo]]></category>

		<guid isPermaLink="false">http://sandfly.net.nz/blog/?p=1320</guid>
		<description><![CDATA[Click for the big view Here is another panorama made from shots from my cell phone, this time from outside of the brand new Viaduct Event Center. It is surprising to me that Hugin managed to stitch together the constantly &#8230; <a href="http://sandfly.net.nz/blog/2011/12/another-panorama/">Continue reading <span class="meta-nav">&#8594;</span></a>
Related posts:<ol>
<li><a href='http://sandfly.net.nz/blog/2011/11/panoramic-view-from-the-office/' rel='bookmark' title='Panoramic View From The Office'>Panoramic View From The Office</a></li>
</ol>]]></description>
			<content:encoded><![CDATA[<p><a href="http://sandfly.net.nz/blog/wp-content/uploads/2011/12/wharf.jpg"><img src="http://sandfly.net.nz/blog/wp-content/uploads/2011/12/wharf-1024x220.jpg" alt="Panoramic view from outside the Viaduct Events Center" title="Panoramic view from outside the Viaduct Events Center" width="584" height="125" class="aligncenter size-large wp-image-1321" />
<div>Click for the big view</div>
<p></a></p>
<p>Here is another panorama made from shots from my cell phone, this time from outside of the brand new Viaduct Event Center. It is surprising to me that Hugin managed to stitch together the constantly moving waves in a fairly convincing manner.</p>
<div class="alignright"><div class="g-plusone" data-href="http://sandfly.net.nz/blog/2011/12/another-panorama/" size="small" count="true"></div></div><p>Related posts:<ol>
<li><a href='http://sandfly.net.nz/blog/2011/11/panoramic-view-from-the-office/' rel='bookmark' title='Panoramic View From The Office'>Panoramic View From The Office</a></li>
</ol></p><div class="feedflare">
<a href="http://feeds.feedburner.com/~ff/LifeOfAndrew?a=h8tz-o-1P9E:eoO1MKotqSs:yIl2AUoC8zA"><img src="http://feeds.feedburner.com/~ff/LifeOfAndrew?d=yIl2AUoC8zA" border="0"></img></a> <a href="http://feeds.feedburner.com/~ff/LifeOfAndrew?a=h8tz-o-1P9E:eoO1MKotqSs:-BTjWOF_DHI"><img src="http://feeds.feedburner.com/~ff/LifeOfAndrew?i=h8tz-o-1P9E:eoO1MKotqSs:-BTjWOF_DHI" border="0"></img></a> <a href="http://feeds.feedburner.com/~ff/LifeOfAndrew?a=h8tz-o-1P9E:eoO1MKotqSs:qj6IDK7rITs"><img src="http://feeds.feedburner.com/~ff/LifeOfAndrew?d=qj6IDK7rITs" border="0"></img></a> <a href="http://feeds.feedburner.com/~ff/LifeOfAndrew?a=h8tz-o-1P9E:eoO1MKotqSs:D7DqB2pKExk"><img src="http://feeds.feedburner.com/~ff/LifeOfAndrew?i=h8tz-o-1P9E:eoO1MKotqSs:D7DqB2pKExk" border="0"></img></a> <a href="http://feeds.feedburner.com/~ff/LifeOfAndrew?a=h8tz-o-1P9E:eoO1MKotqSs:I9og5sOYxJI"><img src="http://feeds.feedburner.com/~ff/LifeOfAndrew?d=I9og5sOYxJI" border="0"></img></a>
</div><img src="http://feeds.feedburner.com/~r/LifeOfAndrew/~4/h8tz-o-1P9E" height="1" width="1"/>]]></content:encoded>
			<wfw:commentRss>http://sandfly.net.nz/blog/2011/12/another-panorama/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		<feedburner:origLink>http://sandfly.net.nz/blog/2011/12/another-panorama/?utm_source=rss&amp;utm_medium=rss&amp;utm_campaign=another-panorama</feedburner:origLink></item>
		<item>
		<title>Jumping Frogs – Using Python to Solve Puzzles</title>
		<link>http://feedproxy.google.com/~r/LifeOfAndrew/~3/EisjS-Au6No/</link>
		<comments>http://sandfly.net.nz/blog/2011/11/jumping-frogs-using-python-to-solve-puzzles/#comments</comments>
		<pubDate>Sun, 27 Nov 2011 10:25:29 +0000</pubDate>
		<dc:creator>Andrew</dc:creator>
				<category><![CDATA[Computer]]></category>
		<category><![CDATA[Games]]></category>
		<category><![CDATA[my projects]]></category>
		<category><![CDATA[programming]]></category>
		<category><![CDATA[puzzle]]></category>
		<category><![CDATA[python]]></category>

		<guid isPermaLink="false">http://sandfly.net.nz/blog/?p=1308</guid>
		<description><![CDATA[A few months ago I came across the following puzzle in a video game I was playing: Three frogs are happily hopping along a narrow board together when they meet another group of three frogs traveling in the opposite direction. &#8230; <a href="http://sandfly.net.nz/blog/2011/11/jumping-frogs-using-python-to-solve-puzzles/">Continue reading <span class="meta-nav">&#8594;</span></a>
Related posts:<ol>
<li><a href='http://sandfly.net.nz/blog/2009/11/python-and-the-very-slow-server/' rel='bookmark' title='Python and The Very Slow Server'>Python and The Very Slow Server</a></li>
<li><a href='http://sandfly.net.nz/blog/2011/07/arduino-pov-device-part-ii/' rel='bookmark' title='Arduino POV Device Part II'>Arduino POV Device Part II</a></li>
</ol>]]></description>
			<content:encoded><![CDATA[<p>A few months ago I came across the following puzzle in a video game I was playing:</p>
<p><img src="http://sandfly.net.nz/blog/wp-content/uploads/2011/11/sixfrogs.png" alt="The starting position for the siz frogs puzzle" title="Six frogs on a branch puzzle" width="500" height="63" class="aligncenter size-full wp-image-1312" /><em>Three frogs are happily hopping along a narrow board together when they meet another group of three frogs traveling in the opposite direction. These frogs can only move in the direction they are facing, and only if there is a space directly in front of them. Additionally, a frog can jump over the frog in front but only if there is clear space on the other side to land in. </p>
<p>How can the frogs (moving one at a time) pass each other and continue on their way?</em></p>
<p>Of course, this is a hoary old puzzle that most people come across and solve as children. It should be only a couple of minutes work with a pen and paper to confirm that it is possible to exchange both sets of frogs but I wouldn&#8217;t be much of a programmer if I used a piece of paper where hundreds of dollars of computer equipment would do just as well.</p>
<p>To solve a puzzle like this programatically requires three things: a representation of the current state of the problem, a way of generating every possibly legal move from a given position, and a way of figuring out when is a good time to stop.</p>
<p>Firstly, the representation of the board is a simple python list:</p>

<div class="wp_syntax"><table><tr><td class="line_numbers"><pre>1
</pre></td><td class="code"><pre class="python" style="font-family:monospace;">start = <span style="color: black;">&#91;</span><span style="color: #ff4500;">1</span>, <span style="color: #ff4500;">1</span>, <span style="color: #ff4500;">1</span>, <span style="color: #ff4500;">0</span>, -<span style="color: #ff4500;">1</span>, -<span style="color: #ff4500;">1</span>, -<span style="color: #ff4500;">1</span><span style="color: black;">&#93;</span></pre></td></tr></table></div>

<p>Frogs traveling right or left are represented by &#8220;1&#8243; and &#8220;-1&#8243; respectively. Empty spaces that frog can move into are represented by &#8220;0&#8243;. The advantage of this representation is that you can calculate the new position of a frog by:</p>

<div class="wp_syntax"><table><tr><td class="line_numbers"><pre>1
</pre></td><td class="code"><pre class="python" style="font-family:monospace;">newPos = pos + <span style="color: black;">&#40;</span>representation <span style="color: #66cc66;">*</span> distance<span style="color: black;">&#41;</span></pre></td></tr></table></div>

<p>where pos is the current index in the array, distance is the size of the hop (either 1 or 2) and representation is either 1 or -1.</p>
<p>Next, we need a way of generating legal moves for a given position:</p>

<div class="wp_syntax"><table><tr><td class="line_numbers"><pre>1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
</pre></td><td class="code"><pre class="python" style="font-family:monospace;"><span style="color: #ff7700;font-weight:bold;">def</span> legalMoves<span style="color: black;">&#40;</span>board<span style="color: black;">&#41;</span>:
	moves = <span style="color: black;">&#91;</span><span style="color: black;">&#93;</span>
	<span style="color: #ff7700;font-weight:bold;">for</span> pos, piece <span style="color: #ff7700;font-weight:bold;">in</span> <span style="color: #008000;">enumerate</span><span style="color: black;">&#40;</span> board <span style="color: black;">&#41;</span>:
		jumpmove = pos + <span style="color: black;">&#40;</span>piece <span style="color: #66cc66;">*</span> <span style="color: #ff4500;">2</span><span style="color: black;">&#41;</span>
		move = pos + <span style="color: black;">&#40;</span>piece<span style="color: black;">&#41;</span>
		<span style="color: #ff7700;font-weight:bold;">if</span> <span style="color: black;">&#40;</span> piece == <span style="color: #ff4500;">0</span> <span style="color: black;">&#41;</span>:
			<span style="color: #ff7700;font-weight:bold;">continue</span>
		<span style="color: #ff7700;font-weight:bold;">if</span> <span style="color: black;">&#40;</span><span style="color: #ff7700;font-weight:bold;">not</span> <span style="color: black;">&#40;</span><span style="color: black;">&#40;</span> jumpmove <span style="color: #66cc66;">&lt;</span> <span style="color: #ff4500;">0</span> <span style="color: black;">&#41;</span> <span style="color: #ff7700;font-weight:bold;">or</span> <span style="color: black;">&#40;</span> jumpmove <span style="color: #66cc66;">&gt;</span>= <span style="color: #008000;">len</span><span style="color: black;">&#40;</span>board<span style="color: black;">&#41;</span><span style="color: black;">&#41;</span><span style="color: black;">&#41;</span><span style="color: black;">&#41;</span>:
			<span style="color: #ff7700;font-weight:bold;">if</span> <span style="color: black;">&#40;</span>board<span style="color: black;">&#91;</span>jumpmove<span style="color: black;">&#93;</span> == <span style="color: #ff4500;">0</span><span style="color: black;">&#41;</span>:
				t = <span style="color: #008000;">list</span><span style="color: black;">&#40;</span>board<span style="color: black;">&#41;</span>
				t<span style="color: black;">&#91;</span>pos<span style="color: black;">&#93;</span> = <span style="color: #ff4500;">0</span>
				t<span style="color: black;">&#91;</span>jumpmove<span style="color: black;">&#93;</span> = piece
				moves.<span style="color: black;">append</span><span style="color: black;">&#40;</span>t<span style="color: black;">&#41;</span>
		<span style="color: #ff7700;font-weight:bold;">if</span> <span style="color: black;">&#40;</span><span style="color: #ff7700;font-weight:bold;">not</span> <span style="color: black;">&#40;</span><span style="color: black;">&#40;</span>move <span style="color: #66cc66;">&lt;</span> <span style="color: #ff4500;">0</span><span style="color: black;">&#41;</span> <span style="color: #ff7700;font-weight:bold;">or</span> <span style="color: black;">&#40;</span> move <span style="color: #66cc66;">&gt;</span>= <span style="color: #008000;">len</span><span style="color: black;">&#40;</span>board<span style="color: black;">&#41;</span><span style="color: black;">&#41;</span><span style="color: black;">&#41;</span><span style="color: black;">&#41;</span>:
			<span style="color: #ff7700;font-weight:bold;">if</span> <span style="color: black;">&#40;</span> board<span style="color: black;">&#91;</span>move<span style="color: black;">&#93;</span> == <span style="color: #ff4500;">0</span><span style="color: black;">&#41;</span>:
				t = <span style="color: #008000;">list</span><span style="color: black;">&#40;</span>board<span style="color: black;">&#41;</span>
				t<span style="color: black;">&#91;</span>pos<span style="color: black;">&#93;</span> = <span style="color: #ff4500;">0</span>
				t<span style="color: black;">&#91;</span>move<span style="color: black;">&#93;</span> = piece
				moves.<span style="color: black;">append</span><span style="color: black;">&#40;</span>t<span style="color: black;">&#41;</span>
	<span style="color: #ff7700;font-weight:bold;">return</span> moves</pre></td></tr></table></div>

<p>Now we need a way of keeping track of all board positions we have seen, so once we find the target we can print the states that led to the solution:</p>

<div class="wp_syntax"><table><tr><td class="line_numbers"><pre>1
2
3
4
5
6
7
8
9
10
11
</pre></td><td class="code"><pre class="python" style="font-family:monospace;"><span style="color: #ff7700;font-weight:bold;">def</span> evalAll<span style="color: black;">&#40;</span> current, target <span style="color: black;">&#41;</span>:
	next = <span style="color: black;">&#91;</span><span style="color: black;">&#93;</span>
	<span style="color: #ff7700;font-weight:bold;">for</span> a <span style="color: #ff7700;font-weight:bold;">in</span> current:
		n = legalMoves<span style="color: black;">&#40;</span>a<span style="color: black;">&#91;</span>-<span style="color: #ff4500;">1</span><span style="color: black;">&#93;</span><span style="color: black;">&#41;</span>
		<span style="color: #ff7700;font-weight:bold;">for</span> q <span style="color: #ff7700;font-weight:bold;">in</span> n:
			t = <span style="color: #008000;">list</span><span style="color: black;">&#40;</span>a<span style="color: black;">&#41;</span>
			t.<span style="color: black;">append</span><span style="color: black;">&#40;</span>q<span style="color: black;">&#41;</span>
			<span style="color: #ff7700;font-weight:bold;">if</span> <span style="color: black;">&#40;</span> q == target <span style="color: black;">&#41;</span>:
				<span style="color: #ff7700;font-weight:bold;">return</span> t
			next.<span style="color: black;">append</span><span style="color: black;">&#40;</span>t<span style="color: black;">&#41;</span>
	<span style="color: #ff7700;font-weight:bold;">return</span> next</pre></td></tr></table></div>

<p>This code keeps a list of lists, each sublist being it&#8217;s own list of the sequence of moves investigated so far. For each sequence of moves, the next legal moves are discovered and new sequences are added to be investigated the next time this function is called. Technically this is called a <a href="http://en.wikipedia.org/wiki/Breadth-first_search">breadth-first search</a> because at all of the current legal moves are investigated before moving on the next stage. This is a very simplistic way of doing the job, but in this case the puzzle is small enough that it works well enough.</p>
<p>Finally, a simple wrapper that we can use to set things up and return the final result.</p>

<div class="wp_syntax"><table><tr><td class="line_numbers"><pre>1
2
3
4
5
6
7
</pre></td><td class="code"><pre class="python" style="font-family:monospace;"><span style="color: #ff7700;font-weight:bold;">def</span> solve<span style="color: black;">&#40;</span>start<span style="color: black;">&#41;</span>:
	temp=<span style="color: black;">&#91;</span><span style="color: black;">&#91;</span>start<span style="color: black;">&#93;</span><span style="color: black;">&#93;</span>
	end = <span style="color: #008000;">list</span><span style="color: black;">&#40;</span>start<span style="color: black;">&#41;</span>
	end.<span style="color: black;">reverse</span><span style="color: black;">&#40;</span><span style="color: black;">&#41;</span>
	<span style="color: #ff7700;font-weight:bold;">while</span><span style="color: black;">&#40;</span>temp<span style="color: black;">&#91;</span>-<span style="color: #ff4500;">1</span><span style="color: black;">&#93;</span> <span style="color: #66cc66;">!</span>= end<span style="color: black;">&#41;</span>:
		temp = evalAll<span style="color: black;">&#40;</span>temp, end<span style="color: black;">&#41;</span>
	<span style="color: #ff7700;font-weight:bold;">return</span> temp</pre></td></tr></table></div>

<p>So now we can do this:</p>

<div class="wp_syntax"><table><tr><td class="line_numbers"><pre>1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
</pre></td><td class="code"><pre class="python" style="font-family:monospace;"><span style="color: #ff7700;font-weight:bold;">print</span> solve<span style="color: black;">&#40;</span><span style="color: black;">&#91;</span><span style="color: #ff4500;">1</span>, <span style="color: #ff4500;">1</span>, <span style="color: #ff4500;">1</span>, <span style="color: #ff4500;">0</span>, -<span style="color: #ff4500;">1</span>, -<span style="color: #ff4500;">1</span>, -<span style="color: #ff4500;">1</span><span style="color: black;">&#93;</span><span style="color: black;">&#41;</span>
&nbsp;
<span style="color: black;">&#91;</span><span style="color: black;">&#91;</span><span style="color: #ff4500;">1</span>, <span style="color: #ff4500;">1</span>, <span style="color: #ff4500;">1</span>, <span style="color: #ff4500;">0</span>, -<span style="color: #ff4500;">1</span>, -<span style="color: #ff4500;">1</span>, -<span style="color: #ff4500;">1</span><span style="color: black;">&#93;</span>,
 <span style="color: black;">&#91;</span><span style="color: #ff4500;">1</span>, <span style="color: #ff4500;">1</span>, <span style="color: #ff4500;">0</span>, <span style="color: #ff4500;">1</span>, -<span style="color: #ff4500;">1</span>, -<span style="color: #ff4500;">1</span>, -<span style="color: #ff4500;">1</span><span style="color: black;">&#93;</span>,
 <span style="color: black;">&#91;</span><span style="color: #ff4500;">1</span>, <span style="color: #ff4500;">1</span>, -<span style="color: #ff4500;">1</span>, <span style="color: #ff4500;">1</span>, <span style="color: #ff4500;">0</span>, -<span style="color: #ff4500;">1</span>, -<span style="color: #ff4500;">1</span><span style="color: black;">&#93;</span>,
 <span style="color: black;">&#91;</span><span style="color: #ff4500;">1</span>, <span style="color: #ff4500;">1</span>, -<span style="color: #ff4500;">1</span>, <span style="color: #ff4500;">1</span>, -<span style="color: #ff4500;">1</span>, <span style="color: #ff4500;">0</span>, -<span style="color: #ff4500;">1</span><span style="color: black;">&#93;</span>,
 <span style="color: black;">&#91;</span><span style="color: #ff4500;">1</span>, <span style="color: #ff4500;">1</span>, -<span style="color: #ff4500;">1</span>, <span style="color: #ff4500;">0</span>, -<span style="color: #ff4500;">1</span>, <span style="color: #ff4500;">1</span>, -<span style="color: #ff4500;">1</span><span style="color: black;">&#93;</span>,
 <span style="color: black;">&#91;</span><span style="color: #ff4500;">1</span>, <span style="color: #ff4500;">0</span>, -<span style="color: #ff4500;">1</span>, <span style="color: #ff4500;">1</span>, -<span style="color: #ff4500;">1</span>, <span style="color: #ff4500;">1</span>, -<span style="color: #ff4500;">1</span><span style="color: black;">&#93;</span>,
 <span style="color: black;">&#91;</span><span style="color: #ff4500;">0</span>, <span style="color: #ff4500;">1</span>, -<span style="color: #ff4500;">1</span>, <span style="color: #ff4500;">1</span>, -<span style="color: #ff4500;">1</span>, <span style="color: #ff4500;">1</span>, -<span style="color: #ff4500;">1</span><span style="color: black;">&#93;</span>,
 <span style="color: black;">&#91;</span>-<span style="color: #ff4500;">1</span>, <span style="color: #ff4500;">1</span>, <span style="color: #ff4500;">0</span>, <span style="color: #ff4500;">1</span>, -<span style="color: #ff4500;">1</span>, <span style="color: #ff4500;">1</span>, -<span style="color: #ff4500;">1</span><span style="color: black;">&#93;</span>,
 <span style="color: black;">&#91;</span>-<span style="color: #ff4500;">1</span>, <span style="color: #ff4500;">1</span>, -<span style="color: #ff4500;">1</span>, <span style="color: #ff4500;">1</span>, <span style="color: #ff4500;">0</span>, <span style="color: #ff4500;">1</span>, -<span style="color: #ff4500;">1</span><span style="color: black;">&#93;</span>,
 <span style="color: black;">&#91;</span>-<span style="color: #ff4500;">1</span>, <span style="color: #ff4500;">1</span>, -<span style="color: #ff4500;">1</span>, <span style="color: #ff4500;">1</span>, -<span style="color: #ff4500;">1</span>, <span style="color: #ff4500;">1</span>, <span style="color: #ff4500;">0</span><span style="color: black;">&#93;</span>,
 <span style="color: black;">&#91;</span>-<span style="color: #ff4500;">1</span>, <span style="color: #ff4500;">1</span>, -<span style="color: #ff4500;">1</span>, <span style="color: #ff4500;">1</span>, -<span style="color: #ff4500;">1</span>, <span style="color: #ff4500;">0</span>, <span style="color: #ff4500;">1</span><span style="color: black;">&#93;</span>,
 <span style="color: black;">&#91;</span>-<span style="color: #ff4500;">1</span>, <span style="color: #ff4500;">1</span>, -<span style="color: #ff4500;">1</span>, <span style="color: #ff4500;">0</span>, -<span style="color: #ff4500;">1</span>, <span style="color: #ff4500;">1</span>, <span style="color: #ff4500;">1</span><span style="color: black;">&#93;</span>,
 <span style="color: black;">&#91;</span>-<span style="color: #ff4500;">1</span>, <span style="color: #ff4500;">0</span>, -<span style="color: #ff4500;">1</span>, <span style="color: #ff4500;">1</span>, -<span style="color: #ff4500;">1</span>, <span style="color: #ff4500;">1</span>, <span style="color: #ff4500;">1</span><span style="color: black;">&#93;</span>,
 <span style="color: black;">&#91;</span>-<span style="color: #ff4500;">1</span>, -<span style="color: #ff4500;">1</span>, <span style="color: #ff4500;">0</span>, <span style="color: #ff4500;">1</span>, -<span style="color: #ff4500;">1</span>, <span style="color: #ff4500;">1</span>, <span style="color: #ff4500;">1</span><span style="color: black;">&#93;</span>,
 <span style="color: black;">&#91;</span>-<span style="color: #ff4500;">1</span>, -<span style="color: #ff4500;">1</span>, -<span style="color: #ff4500;">1</span>, <span style="color: #ff4500;">1</span>, <span style="color: #ff4500;">0</span>, <span style="color: #ff4500;">1</span>, <span style="color: #ff4500;">1</span><span style="color: black;">&#93;</span>,
 <span style="color: black;">&#91;</span>-<span style="color: #ff4500;">1</span>, -<span style="color: #ff4500;">1</span>, -<span style="color: #ff4500;">1</span>, <span style="color: #ff4500;">0</span>, <span style="color: #ff4500;">1</span>, <span style="color: #ff4500;">1</span>, <span style="color: #ff4500;">1</span><span style="color: black;">&#93;</span><span style="color: black;">&#93;</span></pre></td></tr></table></div>

<p>Success!</p>
<p>You might say this is a waste of time since you figured out the problem in your head. Good for you, but try this on for size:</p>

<div class="wp_syntax"><table><tr><td class="line_numbers"><pre>1
</pre></td><td class="code"><pre class="python" style="font-family:monospace;"><span style="color: black;">&#91;</span><span style="color: #ff4500;">1</span>, <span style="color: #ff4500;">1</span>, <span style="color: #ff4500;">1</span>, <span style="color: #ff4500;">1</span>, <span style="color: #ff4500;">1</span>, <span style="color: #ff4500;">1</span>, <span style="color: #ff4500;">1</span>, <span style="color: #ff4500;">1</span>, <span style="color: #ff4500;">0</span>, -<span style="color: #ff4500;">1</span>, -<span style="color: #ff4500;">1</span>, -<span style="color: #ff4500;">1</span>, -<span style="color: #ff4500;">1</span>, -<span style="color: #ff4500;">1</span>, -<span style="color: #ff4500;">1</span>, -<span style="color: #ff4500;">1</span>, -<span style="color: #ff4500;">1</span><span style="color: black;">&#93;</span></pre></td></tr></table></div>

<div class="alignright"><div class="g-plusone" data-href="http://sandfly.net.nz/blog/2011/11/jumping-frogs-using-python-to-solve-puzzles/" size="small" count="true"></div></div><p>Related posts:<ol>
<li><a href='http://sandfly.net.nz/blog/2009/11/python-and-the-very-slow-server/' rel='bookmark' title='Python and The Very Slow Server'>Python and The Very Slow Server</a></li>
<li><a href='http://sandfly.net.nz/blog/2011/07/arduino-pov-device-part-ii/' rel='bookmark' title='Arduino POV Device Part II'>Arduino POV Device Part II</a></li>
</ol></p><div class="feedflare">
<a href="http://feeds.feedburner.com/~ff/LifeOfAndrew?a=EisjS-Au6No:DZtk0C6J4To:yIl2AUoC8zA"><img src="http://feeds.feedburner.com/~ff/LifeOfAndrew?d=yIl2AUoC8zA" border="0"></img></a> <a href="http://feeds.feedburner.com/~ff/LifeOfAndrew?a=EisjS-Au6No:DZtk0C6J4To:-BTjWOF_DHI"><img src="http://feeds.feedburner.com/~ff/LifeOfAndrew?i=EisjS-Au6No:DZtk0C6J4To:-BTjWOF_DHI" border="0"></img></a> <a href="http://feeds.feedburner.com/~ff/LifeOfAndrew?a=EisjS-Au6No:DZtk0C6J4To:qj6IDK7rITs"><img src="http://feeds.feedburner.com/~ff/LifeOfAndrew?d=qj6IDK7rITs" border="0"></img></a> <a href="http://feeds.feedburner.com/~ff/LifeOfAndrew?a=EisjS-Au6No:DZtk0C6J4To:D7DqB2pKExk"><img src="http://feeds.feedburner.com/~ff/LifeOfAndrew?i=EisjS-Au6No:DZtk0C6J4To:D7DqB2pKExk" border="0"></img></a> <a href="http://feeds.feedburner.com/~ff/LifeOfAndrew?a=EisjS-Au6No:DZtk0C6J4To:I9og5sOYxJI"><img src="http://feeds.feedburner.com/~ff/LifeOfAndrew?d=I9og5sOYxJI" border="0"></img></a>
</div><img src="http://feeds.feedburner.com/~r/LifeOfAndrew/~4/EisjS-Au6No" height="1" width="1"/>]]></content:encoded>
			<wfw:commentRss>http://sandfly.net.nz/blog/2011/11/jumping-frogs-using-python-to-solve-puzzles/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		<feedburner:origLink>http://sandfly.net.nz/blog/2011/11/jumping-frogs-using-python-to-solve-puzzles/?utm_source=rss&amp;utm_medium=rss&amp;utm_campaign=jumping-frogs-using-python-to-solve-puzzles</feedburner:origLink></item>
		<item>
		<title>Panoramic View From The Office</title>
		<link>http://feedproxy.google.com/~r/LifeOfAndrew/~3/L6hWp1wIEn4/</link>
		<comments>http://sandfly.net.nz/blog/2011/11/panoramic-view-from-the-office/#comments</comments>
		<pubDate>Tue, 22 Nov 2011 09:41:23 +0000</pubDate>
		<dc:creator>Andrew</dc:creator>
				<category><![CDATA[Places]]></category>
		<category><![CDATA[iphone]]></category>
		<category><![CDATA[panorama]]></category>
		<category><![CDATA[photo]]></category>

		<guid isPermaLink="false">http://sandfly.net.nz/blog/?p=1299</guid>
		<description><![CDATA[Recently I have been playing around with making panoramas with Hugin. Here is one I stitched together from a series of shots from the balcony outside one of the offices at work (not mine, unfortunately) using my cell phone camera. &#8230; <a href="http://sandfly.net.nz/blog/2011/11/panoramic-view-from-the-office/">Continue reading <span class="meta-nav">&#8594;</span></a>
Related posts:<ol>
<li><a href='http://sandfly.net.nz/blog/2011/12/another-panorama/' rel='bookmark' title='Another Panorama'>Another Panorama</a></li>
<li><a href='http://sandfly.net.nz/blog/2011/07/iphone-slr-mount/' rel='bookmark' title='iPhone SLR Mount'>iPhone SLR Mount</a></li>
</ol>]]></description>
			<content:encoded><![CDATA[<p>Recently I have been playing around with making panoramas with <a href="http://hugin.sourceforge.net/">Hugin</a>. Here is one I stitched together from a series of shots from the balcony outside one of the offices at work (not mine, unfortunately) using my cell phone camera.</p>
<p><a href="http://sandfly.net.nz/blog/wp-content/uploads/2011/11/view-from-office.jpg"><img src="http://sandfly.net.nz/blog/wp-content/uploads/2011/11/view-from-office-1024x296.jpg" alt="" title="View from the Office" width="584" height="168" class="aligncenter size-large wp-image-1300" /></a></p>
<div class="alignright"><div class="g-plusone" data-href="http://sandfly.net.nz/blog/2011/11/panoramic-view-from-the-office/" size="small" count="true"></div></div><p>Related posts:<ol>
<li><a href='http://sandfly.net.nz/blog/2011/12/another-panorama/' rel='bookmark' title='Another Panorama'>Another Panorama</a></li>
<li><a href='http://sandfly.net.nz/blog/2011/07/iphone-slr-mount/' rel='bookmark' title='iPhone SLR Mount'>iPhone SLR Mount</a></li>
</ol></p><div class="feedflare">
<a href="http://feeds.feedburner.com/~ff/LifeOfAndrew?a=L6hWp1wIEn4:MBCWrBggF2o:yIl2AUoC8zA"><img src="http://feeds.feedburner.com/~ff/LifeOfAndrew?d=yIl2AUoC8zA" border="0"></img></a> <a href="http://feeds.feedburner.com/~ff/LifeOfAndrew?a=L6hWp1wIEn4:MBCWrBggF2o:-BTjWOF_DHI"><img src="http://feeds.feedburner.com/~ff/LifeOfAndrew?i=L6hWp1wIEn4:MBCWrBggF2o:-BTjWOF_DHI" border="0"></img></a> <a href="http://feeds.feedburner.com/~ff/LifeOfAndrew?a=L6hWp1wIEn4:MBCWrBggF2o:qj6IDK7rITs"><img src="http://feeds.feedburner.com/~ff/LifeOfAndrew?d=qj6IDK7rITs" border="0"></img></a> <a href="http://feeds.feedburner.com/~ff/LifeOfAndrew?a=L6hWp1wIEn4:MBCWrBggF2o:D7DqB2pKExk"><img src="http://feeds.feedburner.com/~ff/LifeOfAndrew?i=L6hWp1wIEn4:MBCWrBggF2o:D7DqB2pKExk" border="0"></img></a> <a href="http://feeds.feedburner.com/~ff/LifeOfAndrew?a=L6hWp1wIEn4:MBCWrBggF2o:I9og5sOYxJI"><img src="http://feeds.feedburner.com/~ff/LifeOfAndrew?d=I9og5sOYxJI" border="0"></img></a>
</div><img src="http://feeds.feedburner.com/~r/LifeOfAndrew/~4/L6hWp1wIEn4" height="1" width="1"/>]]></content:encoded>
			<wfw:commentRss>http://sandfly.net.nz/blog/2011/11/panoramic-view-from-the-office/feed/</wfw:commentRss>
		<slash:comments>2</slash:comments>
		<feedburner:origLink>http://sandfly.net.nz/blog/2011/11/panoramic-view-from-the-office/?utm_source=rss&amp;utm_medium=rss&amp;utm_campaign=panoramic-view-from-the-office</feedburner:origLink></item>
	</channel>
</rss>

