<?xml version="1.0" encoding="utf-8" ?>

<rss version="2.0" 
   xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#"
   xmlns:admin="http://webns.net/mvcb/"
   xmlns:dc="http://purl.org/dc/elements/1.1/"
   xmlns:slash="http://purl.org/rss/1.0/modules/slash/"
   xmlns:wfw="http://wellformedweb.org/CommentAPI/"
   xmlns:content="http://purl.org/rss/1.0/modules/content/"
   >
<channel>
    <title>citizen428.blog()</title>
    <link>http://citizen428.net/</link>
    <description>Too old to bother, too young to care...</description>
    <dc:language>en</dc:language>
    <generator>Serendipity 1.4.1 - http://www.s9y.org/</generator>
    <pubDate>Wed, 03 Mar 2010 15:41:05 GMT</pubDate>

    <image>
        <url>http://citizen428.net/templates/default/img/s9y_banner_small.png</url>
        <title>RSS: citizen428.blog() - Too old to bother, too young to care...</title>
        <link>http://citizen428.net/</link>
        <width>100</width>
        <height>21</height>
    </image>

<item>
    <title>Move EC2 AMIs between regions</title>
    <link>http://citizen428.net/archives/420-Move-EC2-AMIs-between-regions.html</link>
    
    <comments>http://citizen428.net/archives/420-Move-EC2-AMIs-between-regions.html#comments</comments>
    <wfw:comment>http://citizen428.net/wfwcomment.php?cid=420</wfw:comment>

    <slash:comments>0</slash:comments>
    <wfw:commentRss>http://citizen428.net/rss.php?version=2.0&amp;type=comments&amp;cid=420</wfw:commentRss>
    

    <author>nospam@example.com (citizen428)</author>
    <content:encoded>
    	&lt;p&gt;Today I spent some time figuring out how to move &lt;a href=&quot;http://citizen428.net/exit.php?url_id=4750&amp;amp;entry_id=420&quot; title=&quot;http://docs.amazonwebservices.com/AWSEC2/latest/UserGuide/index.html?creating-an-ami-ebs.html&quot;  onmouseover=&quot;window.status=&#039;http://docs.amazonwebservices.com/AWSEC2/latest/UserGuide/index.html?creating-an-ami-ebs.html&#039;;return true;&quot; onmouseout=&quot;window.status=&#039;&#039;;return true;&quot;&gt;EBS-backed AMIs&lt;/a&gt; between different EC2 regions. To save you the effort, here&amp;#8217;s a quick summary:&lt;br /&gt;
&lt;ul&gt;&lt;br /&gt;
&lt;li&gt; create a volume from the snapshot backing the AMI&lt;/li&gt;&lt;br /&gt;
&lt;li&gt; attach this volume to a running instance and mount it&lt;/li&gt;&lt;br /&gt;
&lt;li&gt; create a new volume in the target region&lt;/li&gt;&lt;br /&gt;
&lt;li&gt; attach to a running instance, format and mount&lt;/li&gt;&lt;br /&gt;
&lt;li&gt; in the source region, connect to your instance&lt;/li&gt;&lt;br /&gt;
&lt;li&gt; rsync (over ssh, so no messing with security groups) the mounted volume to the target volume&lt;/li&gt;&lt;br /&gt;
&lt;li&gt; once the rsync is done, create a snapshot in the target region&lt;/li&gt;&lt;br /&gt;
&lt;li&gt; register this snapsho as new &lt;span class=&quot;caps&quot;&gt;AMI&lt;/span&gt; with &lt;a href=&quot;http://citizen428.net/exit.php?url_id=4751&amp;amp;entry_id=420&quot; title=&quot;http://docs.amazonwebservices.com/AmazonEC2/dg/2007-01-03/CLTRG-register.html&quot;  onmouseover=&quot;window.status=&#039;http://docs.amazonwebservices.com/AmazonEC2/dg/2007-01-03/CLTRG-register.html&#039;;return true;&quot; onmouseout=&quot;window.status=&#039;&#039;;return true;&quot;&gt;ec2-register&lt;/a&gt;&lt;/li&gt;&lt;br /&gt;
&lt;/ul&gt;&lt;/p&gt;

	&lt;p&gt;Not rocket science, but definitely not as good as just being able to share your own AMIs between regions&amp;#8230; &lt;/p&gt; 
    </content:encoded>

    <pubDate>Wed, 03 Mar 2010 16:24:05 +0100</pubDate>
    <guid isPermaLink="false">http://citizen428.net/archives/420-guid.html</guid>
    <category>aws</category>

</item>
<item>
    <title>Plot EC2 instance usage with Clojure and Incanter</title>
    <link>http://citizen428.net/archives/418-Plot-EC2-instance-usage-with-Clojure-and-Incanter.html</link>
    
    <comments>http://citizen428.net/archives/418-Plot-EC2-instance-usage-with-Clojure-and-Incanter.html#comments</comments>
    <wfw:comment>http://citizen428.net/wfwcomment.php?cid=418</wfw:comment>

    <slash:comments>1</slash:comments>
    <wfw:commentRss>http://citizen428.net/rss.php?version=2.0&amp;type=comments&amp;cid=418</wfw:commentRss>
    

    <author>nospam@example.com (citizen428)</author>
    <content:encoded>
    	&lt;p&gt;Have you ever wondered which instance types you use most when dealing with Amazon&amp;#8217;s EC2? I have, so I came up with a short Clojure/&lt;a href=&quot;http://citizen428.net/exit.php?url_id=4749&amp;amp;entry_id=418&quot; title=&quot;http://incanter.org&quot;  onmouseover=&quot;window.status=&#039;http://incanter.org&#039;;return true;&quot; onmouseout=&quot;window.status=&#039;&#039;;return true;&quot;&gt;Incanter&lt;/a&gt; program to plot a nice chart like this:&lt;br /&gt;
&lt;br /&gt;

&lt;img src=&quot;http://twitpic.com/show/thumb/15byfe.png&quot; width=&quot;150&quot; height=&quot;150&quot; alt=&quot;EC2 usage plotted by #incanter (@liebke) on Twitpic&quot; border=&quot;1&quot;&gt;&lt;br /&gt;

&lt;a href=&quot;http://citizen428.net/exit.php?url_id=4746&amp;amp;entry_id=418&quot;  onmouseover=&quot;window.status=&#039;http://twitpic.com/15byfe&#039;;return true;&quot; onmouseout=&quot;window.status=&#039;&#039;;return true;&quot; title=&quot;EC2 usage plotted by incanter&quot;&gt;(full size image)&lt;/a&gt;&lt;/p&gt;

	&lt;p&gt;Here&amp;#8217;s the code, if you have any feedback please leave a comment, this was the first time I used Incanter.&lt;/p&gt;

	&lt;p&gt;&lt;script src=&quot;http://gist.github.com/315191.js?file=parse-ec2-report.clj&quot;&gt;&lt;/script&gt; &lt;/p&gt; 
    </content:encoded>

    <pubDate>Fri, 26 Feb 2010 00:46:29 +0100</pubDate>
    <guid isPermaLink="false">http://citizen428.net/archives/418-guid.html</guid>
    <category>aws</category>
<category>clojure</category>
<category>programming</category>

</item>
<item>
    <title>Comprehensive list of cloud-related links</title>
    <link>http://citizen428.net/archives/417-Comprehensive-list-of-cloud-related-links.html</link>
    
    <comments>http://citizen428.net/archives/417-Comprehensive-list-of-cloud-related-links.html#comments</comments>
    <wfw:comment>http://citizen428.net/wfwcomment.php?cid=417</wfw:comment>

    <slash:comments>0</slash:comments>
    <wfw:commentRss>http://citizen428.net/rss.php?version=2.0&amp;type=comments&amp;cid=417</wfw:commentRss>
    

    <author>nospam@example.com (citizen428)</author>
    <content:encoded>
    	&lt;p&gt;Lately a lot of my working time is spent on cloud technologies, most notably the &lt;a href=&quot;http://citizen428.net/exit.php?url_id=4744&amp;amp;entry_id=417&quot; title=&quot;http://aws.amazon.com/&quot;  onmouseover=&quot;window.status=&#039;http://aws.amazon.com/&#039;;return true;&quot; onmouseout=&quot;window.status=&#039;&#039;;return true;&quot;&gt;Amazon Web Services&lt;/a&gt;. In recent month I compiled a rather comprehensive list of cloud-related links which I now decided to share with you all. &lt;/p&gt;

	&lt;p&gt;&lt;a href=&quot;http://citizen428.net/exit.php?url_id=4745&amp;amp;entry_id=417&quot; title=&quot;http://gist.github.com/314445&quot;  onmouseover=&quot;window.status=&#039;http://gist.github.com/314445&#039;;return true;&quot; onmouseout=&quot;window.status=&#039;&#039;;return true;&quot;&gt;Cloud Links&lt;/a&gt;&lt;/p&gt;

	&lt;p&gt;It&amp;#8217;s just a markdown file copied into a Gist, so if you want to add any links just fork away! &lt;img src=&quot;http://citizen428.net/templates/default/img/emoticons/smile.png&quot; alt=&quot;:-)&quot; style=&quot;display: inline; vertical-align: bottom;&quot; class=&quot;emoticon&quot; /&gt; &lt;/p&gt; 
    </content:encoded>

    <pubDate>Thu, 25 Feb 2010 11:34:55 +0100</pubDate>
    <guid isPermaLink="false">http://citizen428.net/archives/417-guid.html</guid>
    <category>cloud</category>
<category>links</category>
<category>work</category>

</item>
<item>
    <title>Major changes in ClojureX</title>
    <link>http://citizen428.net/archives/415-Major-changes-in-ClojureX.html</link>
    
    <comments>http://citizen428.net/archives/415-Major-changes-in-ClojureX.html#comments</comments>
    <wfw:comment>http://citizen428.net/wfwcomment.php?cid=415</wfw:comment>

    <slash:comments>1</slash:comments>
    <wfw:commentRss>http://citizen428.net/rss.php?version=2.0&amp;type=comments&amp;cid=415</wfw:commentRss>
    

    <author>nospam@example.com (citizen428)</author>
    <content:encoded>
    	&lt;p&gt;When ClojureX was started it tried to be everything for everybody. Not only did it checkout and compile the git HEADs of clojure, clojure-contrib and jline, it also (optionally) downloaded packages for Clojure support in TextMate or Emacs, configured and installed them. This has two obvious drawbacks. First off, people end up downloading stuff they don&amp;#8217;t need. With current disk sizes and connection speeds that&amp;#8217;s probably not much of a problem, but some users may still find annoying. More importantly though it was hard to keep up with the upstream changes, e.g. clojure-contrib&amp;#8217;s recent switch to Maven. &lt;/p&gt;

	&lt;p&gt;So now instead of trying to provide a one-size-fits-all solution I&amp;#8217;m taking a totally different approach: from now on ClojureX will only contain the most recent &lt;strong&gt;stable&lt;/strong&gt; releases of clojure, clojure-contrib and jline, as well as a very full-featured clj script:&lt;/p&gt;

	&lt;p&gt;&lt;script src=&quot;http://gist.github.com/310392.js?file=ClojureX+help&quot;&gt;&lt;/script&gt;&lt;/p&gt;

	&lt;p&gt;I know that this potentially makes ClojureX less useful to some people, but I do believe that it&amp;#8217;s one of the fastest and most painless ways to set up a Clojure development environment. &lt;/p&gt; 
    </content:encoded>

    <pubDate>Sun, 21 Feb 2010 17:21:00 +0100</pubDate>
    <guid isPermaLink="false">http://citizen428.net/archives/415-guid.html</guid>
    <category>clojure</category>
<category>mac</category>
<category>programming</category>

</item>
<item>
    <title>OpenSolaris cheat sheet</title>
    <link>http://citizen428.net/archives/414-OpenSolaris-cheat-sheet.html</link>
    
    <comments>http://citizen428.net/archives/414-OpenSolaris-cheat-sheet.html#comments</comments>
    <wfw:comment>http://citizen428.net/wfwcomment.php?cid=414</wfw:comment>

    <slash:comments>0</slash:comments>
    <wfw:commentRss>http://citizen428.net/rss.php?version=2.0&amp;type=comments&amp;cid=414</wfw:commentRss>
    

    <author>nospam@example.com (citizen428)</author>
    <content:encoded>
    	&lt;p&gt;I&amp;#8217;ve always been a big fan of the handy little utility &lt;a href=&quot;http://citizen428.net/exit.php?url_id=4742&amp;amp;entry_id=414&quot; title=&quot;http://cheat.errtheblog.com&quot;  onmouseover=&quot;window.status=&#039;http://cheat.errtheblog.com&#039;;return true;&quot; onmouseout=&quot;window.status=&#039;&#039;;return true;&quot;&gt;cheat&lt;/a&gt; and recently became interested in &lt;a href=&quot;http://citizen428.net/exit.php?url_id=4743&amp;amp;entry_id=414&quot; title=&quot;http://hub.opensolaris.org/bin/view/Main/&quot;  onmouseover=&quot;window.status=&#039;http://hub.opensolaris.org/bin/view/Main/&#039;;return true;&quot; onmouseout=&quot;window.status=&#039;&#039;;return true;&quot;&gt;OpenSolaris&lt;/a&gt; (which btw runs fine on my Thinkpad x200s), so I did the obvious and created an OpenSolaris cheat sheet:&lt;/p&gt;

	&lt;p&gt;http://cheat.errtheblog.com/s/open_solaris&lt;/p&gt;

	&lt;p&gt;It&amp;#8217;s still missing information regarding &lt;span class=&quot;caps&quot;&gt;ZFS&lt;/span&gt;, but I guess I&amp;#8217;ll eventually add that too. And who knows, maybe I even get motivated enough for a nicely formatted Latex version&amp;#8230; &lt;/p&gt; 
    </content:encoded>

    <pubDate>Tue, 26 Jan 2010 19:37:45 +0100</pubDate>
    <guid isPermaLink="false">http://citizen428.net/archives/414-guid.html</guid>
    <category>opensolaris</category>
<category>tips</category>

</item>
<item>
    <title>Scary Ruby</title>
    <link>http://citizen428.net/archives/413-Scary-Ruby.html</link>
    
    <comments>http://citizen428.net/archives/413-Scary-Ruby.html#comments</comments>
    <wfw:comment>http://citizen428.net/wfwcomment.php?cid=413</wfw:comment>

    <slash:comments>0</slash:comments>
    <wfw:commentRss>http://citizen428.net/rss.php?version=2.0&amp;type=comments&amp;cid=413</wfw:commentRss>
    

    <author>nospam@example.com (citizen428)</author>
    <content:encoded>
    	&lt;p&gt;We all know that Ruby&amp;#8217;s a flexible beast, but just how much you can bend it is almost scary. How about inheriting from a class randomly chosen at runtime? Sure, no problem:&lt;br /&gt;
&lt;script src=&quot;http://gist.github.com/275701.js?file=gistfile1.rb&quot;&gt;&lt;/script&gt;&lt;/p&gt;

	&lt;p&gt;I dare you to find a use case for this &lt;img src=&quot;http://citizen428.net/templates/default/img/emoticons/wink.png&quot; alt=&quot;;-)&quot; style=&quot;display: inline; vertical-align: bottom;&quot; class=&quot;emoticon&quot; /&gt;&lt;/p&gt;

	&lt;p&gt;And in case random isn&amp;#8217;t good enough for you, why not have the user choose the superclass for you?&lt;/p&gt;

	&lt;p&gt;&lt;script src=&quot;http://gist.github.com/275701.js?file=gistfile2.rb&quot;&gt;&lt;/script&gt; &lt;/p&gt; 
    </content:encoded>

    <pubDate>Tue, 12 Jan 2010 23:40:33 +0100</pubDate>
    <guid isPermaLink="false">http://citizen428.net/archives/413-guid.html</guid>
    <category>programming</category>
<category>ruby</category>

</item>
<item>
    <title>Bored? Don't worry, here's a new programming language...</title>
    <link>http://citizen428.net/archives/412-Bored-Dont-worry,-heres-a-new-programming-language....html</link>
    
    <comments>http://citizen428.net/archives/412-Bored-Dont-worry,-heres-a-new-programming-language....html#comments</comments>
    <wfw:comment>http://citizen428.net/wfwcomment.php?cid=412</wfw:comment>

    <slash:comments>0</slash:comments>
    <wfw:commentRss>http://citizen428.net/rss.php?version=2.0&amp;type=comments&amp;cid=412</wfw:commentRss>
    

    <author>nospam@example.com (citizen428)</author>
    <content:encoded>
    	&lt;p&gt;Recently &amp;#8211; for various degrees of recent that is &amp;#8211; people really seem to be into programming language design and development. You&amp;#8217;ve probably all heard about &lt;a href=&quot;http://citizen428.net/exit.php?url_id=4734&amp;amp;entry_id=412&quot; title=&quot;http://www.scala-lang.org/&quot;  onmouseover=&quot;window.status=&#039;http://www.scala-lang.org/&#039;;return true;&quot; onmouseout=&quot;window.status=&#039;&#039;;return true;&quot;&gt;Scala&lt;/a&gt;, &lt;a href=&quot;http://citizen428.net/exit.php?url_id=4735&amp;amp;entry_id=412&quot; title=&quot;http://clojure.org/&quot;  onmouseover=&quot;window.status=&#039;http://clojure.org/&#039;;return true;&quot; onmouseout=&quot;window.status=&#039;&#039;;return true;&quot;&gt;Clojure&lt;/a&gt; and &lt;a href=&quot;http://citizen428.net/exit.php?url_id=4736&amp;amp;entry_id=412&quot; title=&quot;http://golang.org/&quot;  onmouseover=&quot;window.status=&#039;http://golang.org/&#039;;return true;&quot; onmouseout=&quot;window.status=&#039;&#039;;return true;&quot;&gt;Go&lt;/a&gt; already, but here are some more new languages which may be new to you (descriptions taken from the projects&amp;#8217; websites):&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;&lt;a href=&quot;http://citizen428.net/exit.php?url_id=4737&amp;amp;entry_id=412&quot; title=&quot;http://code.google.com/p/anic/&quot;  onmouseover=&quot;window.status=&#039;http://code.google.com/p/anic/&#039;;return true;&quot; onmouseout=&quot;window.status=&#039;&#039;;return true;&quot;&gt;ANI&lt;/a&gt;, &lt;i&gt;the experimental, high-performance, statically-safe, fully implicitly parallel, object-oriented, general-purpose dataflow programming language.&lt;/i&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href=&quot;http://citizen428.net/exit.php?url_id=4738&amp;amp;entry_id=412&quot; title=&quot;http://jashkenas.github.com/coffee-script/&quot;  onmouseover=&quot;window.status=&#039;http://jashkenas.github.com/coffee-script/&#039;;return true;&quot; onmouseout=&quot;window.status=&#039;&#039;;return true;&quot;&gt;CoffeeScript&lt;/a&gt; &lt;i&gt;is a little language that compiles into JavaScript. [...] it compiles into clean JavaScript (the good parts) that can use existing JavaScript libraries seamlessly, and passes through JSLint without warnings. The compiled output is quite readable — pretty-printed, with comments preserved intact.&lt;/i&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href=&quot;http://citizen428.net/exit.php?url_id=4739&amp;amp;entry_id=412&quot; title=&quot;http://www.factorcode.org/&quot;  onmouseover=&quot;window.status=&#039;http://www.factorcode.org/&#039;;return true;&quot; onmouseout=&quot;window.status=&#039;&#039;;return true;&quot;&gt;Factor&lt;/a&gt; &lt;i&gt;is a concatenative programming language where references to dynamically-typed values are passed between words (functions) on a stack. [It] is expressive, fast, supports interactive development and has a full-featured library. &lt;/i&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href=&quot;http://citizen428.net/exit.php?url_id=4740&amp;amp;entry_id=412&quot; title=&quot;http://ooc-lang.org/&quot;  onmouseover=&quot;window.status=&#039;http://ooc-lang.org/&#039;;return true;&quot; onmouseout=&quot;window.status=&#039;&#039;;return true;&quot;&gt;ooc&lt;/a&gt;, &lt;i&gt;a modern, object-oriented, functional-ish, high-level, low-level, sexy programming language. It&amp;#8217;s translated to pure C with a source-to-source compiler. It strives to be powerful, modular, extensible, portable, yet simple and fast.&lt;/i&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href=&quot;http://citizen428.net/exit.php?url_id=4741&amp;amp;entry_id=412&quot; title=&quot;http://mth.github.com/yeti/&quot;  onmouseover=&quot;window.status=&#039;http://mth.github.com/yeti/&#039;;return true;&quot; onmouseout=&quot;window.status=&#039;&#039;;return true;&quot;&gt;Yeti&lt;/a&gt;, &lt;i&gt;ML style functional programming language, that runs on the &lt;span class=&quot;caps&quot;&gt;JVM&lt;/span&gt;.&lt;/i&gt;&lt;/li&gt;
&lt;/ul&gt;

  
    </content:encoded>

    <pubDate>Mon, 11 Jan 2010 19:55:23 +0100</pubDate>
    <guid isPermaLink="false">http://citizen428.net/archives/412-guid.html</guid>
    <category>programming</category>

</item>
<item>
    <title>2009 Reading list</title>
    <link>http://citizen428.net/archives/410-2009-Reading-list.html</link>
    
    <comments>http://citizen428.net/archives/410-2009-Reading-list.html#comments</comments>
    <wfw:comment>http://citizen428.net/wfwcomment.php?cid=410</wfw:comment>

    <slash:comments>2</slash:comments>
    <wfw:commentRss>http://citizen428.net/rss.php?version=2.0&amp;type=comments&amp;cid=410</wfw:commentRss>
    

    <author>nospam@example.com (citizen428)</author>
    <content:encoded>
    	&lt;p&gt;Here&amp;#8217;s what I read in 2009, in the order I read them:&lt;/p&gt;

	&lt;p&gt;&lt;b&gt;Brick Lane&lt;/b&gt;: Monica Ali&lt;br /&gt;
&lt;b&gt;Die Angst des Tormanns beim Elfmeter&lt;/b&gt;: Peter Handke&lt;br /&gt;
&lt;b&gt;Soweto Stories&lt;/b&gt;: Miriam Tzali&lt;br /&gt;
&lt;b&gt;The Eighth Day&lt;/b&gt;: John Case&lt;br /&gt;
&lt;b&gt;A Language in Common&lt;/b&gt;: Marion Molteno&lt;br /&gt;
&lt;b&gt;The Lover&lt;/b&gt;: A. B. Yehoshua&lt;br /&gt;
&lt;b&gt;Everything Is Illuminated&lt;/b&gt;: Jonathan Safran Foer&lt;br /&gt;
&lt;b&gt;Ali Smith&amp;#8217;s Supersonic 70s&lt;/b&gt;: Ali Smith&lt;br /&gt;
&lt;b&gt;Die Memoiren des Rodriguez Fazantas&lt;/b&gt;: Helge Schneider&lt;br /&gt;
&lt;b&gt;German Amok&lt;/b&gt;: Feridun Zaimoglu&lt;br /&gt;
&lt;b&gt;Imaginings of Sand&lt;/b&gt;: Andre Brink&lt;br /&gt;
&lt;b&gt;Leinwand&lt;/b&gt;: Feridun Zaimoglu&lt;br /&gt;
&lt;b&gt;Bitter Fruit&lt;/b&gt;: Achmat Dangor&lt;br /&gt;
&lt;b&gt;Die Betrogene&lt;/b&gt;: Thomas Mann&lt;br /&gt;
&lt;b&gt;The Crow Road&lt;/b&gt;: Iain Banks&lt;br /&gt;
&lt;b&gt;The White Tiger&lt;/b&gt;: Aravind Adiga&lt;br /&gt;
&lt;b&gt;Kali: Eine Vorwintergeschichte&lt;/b&gt;: Peter Handke&lt;br /&gt;
&lt;b&gt;The Icarus Girl&lt;/b&gt;: Helen Oyeyemi&lt;br /&gt;
&lt;b&gt;Der Hund aus Terracotta&lt;/b&gt;: Andrea Camilleri&lt;br /&gt;
&lt;b&gt;Ansichten eines Clowns&lt;/b&gt;: Heinrich BÃ¶ll&lt;br /&gt;
&lt;b&gt;Lust&lt;/b&gt;: Elfriede Jelinek&lt;br /&gt;
&lt;b&gt;Transmission&lt;/b&gt;: Hari Kunzru&lt;br /&gt;
&lt;b&gt;Zwölf Gramm Glück&lt;/b&gt;: Feridun Zaimoglu&lt;br /&gt;
&lt;b&gt;Hokkaido Highway Blues&lt;/b&gt;: Will Ferguson&lt;br /&gt;
&lt;b&gt;Never Let Me Go&lt;/b&gt;: Kazuo Ishiguro&lt;br /&gt;
&lt;b&gt;Lunar Park&lt;/b&gt;: Bret Easton Ellis&lt;br /&gt;
&lt;b&gt;The Burial Brothers&lt;/b&gt;: Simon Mayle&lt;br /&gt;
&lt;b&gt;Ruby in Practice&lt;/b&gt;: Jeremy McAnally&lt;br /&gt;
&lt;b&gt;An der Arche um Acht&lt;/b&gt;: Ulrich Hub&lt;br /&gt;
&lt;b&gt;Ubik&lt;/b&gt;: Philip Kindred Dick&lt;br /&gt;
&lt;b&gt;A Loyal Character Dancer&lt;/b&gt;: Qiu Xiaolong&lt;br /&gt;
&lt;b&gt;Bartleby The Scrivener&lt;/b&gt;: Herman Melville&lt;br /&gt;
&lt;b&gt;2 B R 0 2 B&lt;/b&gt;: Kurt Vonnegut&lt;br /&gt;
&lt;b&gt;Handbuch des Kriegers des Lichts&lt;/b&gt;: Paulo Coelho&lt;br /&gt;
&lt;b&gt;The Well-Grounded Rubyist&lt;/b&gt;: David A. Black&lt;br /&gt;
&lt;b&gt;The Accidental&lt;/b&gt;: Ali Smith&lt;br /&gt;
&lt;b&gt;Rice Boy&lt;/b&gt;: Evan Dahm&lt;br /&gt;
&lt;b&gt;South Africa: The Rise and Fall of Apartheid&lt;/b&gt;: Nancy L. Clark&lt;br /&gt;
&lt;b&gt;Squeak by Example&lt;/b&gt;: Andrew P. Black&lt;br /&gt;
&lt;b&gt;Rabbit, Run&lt;/b&gt;: John Updike&lt;br /&gt;
&lt;b&gt;Heartland&lt;/b&gt;: Joey Goebel&lt;br /&gt;
&lt;b&gt;Guards! Guards!&lt;/b&gt;: Terry Pratchett&lt;br /&gt;
&lt;b&gt;Die Girls von Riad&lt;/b&gt;: Rajaa Alsanea&lt;br /&gt;
&lt;b&gt;Angela&amp;#8217;s Ashes&lt;/b&gt;: Frank McCourt&lt;br /&gt;
&lt;b&gt;Verblendung&lt;/b&gt;: Stieg Larsson&lt;br /&gt;
&lt;b&gt;Der Tote im Sumida&lt;/b&gt;: Sujata Massey&lt;br /&gt;
&lt;b&gt;Crime&lt;/b&gt;: Irvine Welsh&lt;br /&gt;
&lt;b&gt;Interesting Times&lt;/b&gt;: Terry Pratchett&lt;br /&gt;
&lt;b&gt;Sacred Games&lt;/b&gt;: Vikram Chandra&lt;br /&gt;
&lt;b&gt;The God of Small Things&lt;/b&gt;: Arundhati Roy&lt;br /&gt;
&lt;b&gt;Programming Clojure&lt;/b&gt;: Stuart Halloway&lt;br /&gt;
&lt;b&gt;Armageddon&lt;/b&gt;: Leon Uris&lt;br /&gt;
&lt;b&gt;Small Gods&lt;/b&gt;: Terry Pratchett&lt;br /&gt;
&lt;b&gt;The Dice Man&lt;/b&gt;: Luke Rhinehart&lt;br /&gt;
&lt;b&gt;Verdammnis&lt;/b&gt;: Stieg Larsson&lt;br /&gt;
&lt;b&gt;Oranges Are Not the Only Fruit&lt;/b&gt;: Jeanette Winterson&lt;br /&gt;
&lt;b&gt;Vergebung&lt;/b&gt;: Stieg Larsson&lt;br /&gt;
&lt;b&gt;JavaScript: The Good Parts&lt;/b&gt;: Douglas Crockford&lt;br /&gt;
&lt;b&gt;Going Postal&lt;/b&gt;: Terry Pratchett&lt;/p&gt;

	&lt;p&gt;Started in 2009 but not finished:&lt;br /&gt;
&lt;b&gt;Gödel, Escher, Bach&lt;/b&gt;: Douglas R. Hofstadter&lt;br /&gt;
&lt;b&gt;Brückenkurs Mathematik&lt;/b&gt;: Guido Walz&lt;/p&gt;

	&lt;p&gt;This list is not taking into account stuff that didn&amp;#8217;t have ISBNs like some eBooks or scientific papers. &lt;/p&gt; 
    </content:encoded>

    <pubDate>Sat, 02 Jan 2010 13:47:26 +0100</pubDate>
    <guid isPermaLink="false">http://citizen428.net/archives/410-guid.html</guid>
    <category>books</category>
<category>personal</category>

</item>
<item>
    <title>Simple AWS scripting with boto</title>
    <link>http://citizen428.net/archives/408-Simple-AWS-scripting-with-boto.html</link>
    
    <comments>http://citizen428.net/archives/408-Simple-AWS-scripting-with-boto.html#comments</comments>
    <wfw:comment>http://citizen428.net/wfwcomment.php?cid=408</wfw:comment>

    <slash:comments>0</slash:comments>
    <wfw:commentRss>http://citizen428.net/rss.php?version=2.0&amp;type=comments&amp;cid=408</wfw:commentRss>
    

    <author>nospam@example.com (citizen428)</author>
    <content:encoded>
    	&lt;p&gt;&lt;a href=&quot;http://citizen428.net/exit.php?url_id=4733&amp;amp;entry_id=408&quot; title=&quot;http://code.google.com/p/boto/&quot;  onmouseover=&quot;window.status=&#039;http://code.google.com/p/boto/&#039;;return true;&quot; onmouseout=&quot;window.status=&#039;&#039;;return true;&quot;&gt;boto&lt;/a&gt; is a very nice Python interface to the Amazon Web Services which I can heartily recommend for your cloud scripting needs. Here&amp;#8217;s a quick example program I whipped up around 2 weeks ago (be gentle, I&amp;#8217;m not a Python guy and this is just a throwaway quickie), which will list all your AMIs (excluding public ones), used S3 buckets plus a list of currently running instances with some information like instance type, start time etc. The nice part is that you can connect to any instance via &lt;span class=&quot;caps&quot;&gt;SSH&lt;/span&gt; directly from this lsit which I find more convenient than copy/pasting the public &lt;span class=&quot;caps&quot;&gt;DNS&lt;/span&gt; name from the &lt;span class=&quot;caps&quot;&gt;AWS&lt;/span&gt; console:&lt;/p&gt;

	&lt;p&gt;&lt;script src=&quot;http://gist.github.com/264696.js?file=cloudwtf.py&quot;&gt;&lt;/script&gt; &lt;/p&gt; 
    </content:encoded>

    <pubDate>Mon, 28 Dec 2009 15:30:00 +0100</pubDate>
    <guid isPermaLink="false">http://citizen428.net/archives/408-guid.html</guid>
    <category>aws</category>
<category>cloud</category>
<category>programming</category>
<category>python</category>

</item>
<item>
    <title>Android and me</title>
    <link>http://citizen428.net/archives/409-Android-and-me.html</link>
    
    <comments>http://citizen428.net/archives/409-Android-and-me.html#comments</comments>
    <wfw:comment>http://citizen428.net/wfwcomment.php?cid=409</wfw:comment>

    <slash:comments>1</slash:comments>
    <wfw:commentRss>http://citizen428.net/rss.php?version=2.0&amp;type=comments&amp;cid=409</wfw:commentRss>
    

    <author>nospam@example.com (citizen428)</author>
    <content:encoded>
    	&lt;p&gt;Last Monday I got an &lt;a href=&quot;http://citizen428.net/exit.php?url_id=4724&amp;amp;entry_id=409&quot; title=&quot;http://en.wikipedia.org/wiki/Android_(operating_system)&quot;  onmouseover=&quot;window.status=&#039;http://en.wikipedia.org/wiki/Android_(operating_system)&#039;;return true;&quot; onmouseout=&quot;window.status=&#039;&#039;;return true;&quot;&gt;Android&lt;/a&gt; phone from work (unfortunately A1 still only has the &lt;span class=&quot;caps&quot;&gt;HTC&lt;/span&gt; Magic, but I don&amp;#8217;t want to be ungrateful) and I obviously had to get into the whole community firmware thing and all. Here are some links that I hope are interesting and/or useful:&lt;br /&gt;
&lt;ul&gt;&lt;br /&gt;
&lt;li&gt;&lt;a href=&quot;http://citizen428.net/exit.php?url_id=4721&amp;amp;entry_id=409&quot; title=&quot;http://developer.htc.com/adp.html&quot;  onmouseover=&quot;window.status=&#039;http://developer.htc.com/adp.html&#039;;return true;&quot; onmouseout=&quot;window.status=&#039;&#039;;return true;&quot;&gt;Fastboot for Mac&lt;/a&gt; (you have to scroll down a bit)&lt;/li&gt;&lt;br /&gt;
&lt;li&gt;&lt;a href=&quot;http://citizen428.net/exit.php?url=aHR0cDovL2ZvcnVtLnhkYS1kZXZlbG9wZXJzLmNvbS9zaG93dGhyZWFkLnBocD90PTUyOTAxOT4mIzgyMjA7RW5naW5lZXJpbmcgPHNwYW4gY2xhc3M9&amp;amp;entry_id=409&quot; title=&quot;http://forum.xda-developers.com/showthread.php?t=529019&amp;gt;&amp;amp;#8220;Engineering &amp;lt;span class=&quot;  onmouseover=&quot;window.status=&#039;http://forum.xda-developers.com/showthread.php?t=529019&amp;gt;&amp;amp;#8220;Engineering &amp;lt;span class=&#039;;return true;&quot; onmouseout=&quot;window.status=&#039;&#039;;return true;&quot;caps&quot;&gt;SPL&lt;/span&gt; for &lt;span class=&quot;caps&quot;&gt;HTC&lt;/span&gt; Magic&lt;/a&gt;&lt;/li&gt;&lt;br /&gt;
&lt;li&gt;&lt;a href=&quot;http://citizen428.net/exit.php?url=aHR0cDovL2ZvcnVtLnhkYS1kZXZlbG9wZXJzLmNvbS9zaG93cG9zdC5waHA/cD00MDI5MzE1JnBvc3Rjb3VudD0x&amp;amp;entry_id=409&quot; title=&quot;http://forum.xda-developers.com/showpost.php?p=4029315&amp;amp;postcount=1&quot;  onmouseover=&quot;window.status=&#039;http://forum.xda-developers.com/showpost.php?p=4029315&amp;amp;postcount=1&#039;;return true;&quot; onmouseout=&quot;window.status=&#039;&#039;;return true;&quot;&gt;Amon_RA Sapphire Recovery Image&lt;/li&gt;&lt;br /&gt;
&lt;li&gt;&lt;a href=&quot;http://citizen428.net/exit.php?url_id=4726&amp;amp;entry_id=409&quot; title=&quot;http://wiki.smartphonefrance.info/firmware-htcmagic.ashx&quot;  onmouseover=&quot;window.status=&#039;http://wiki.smartphonefrance.info/firmware-htcmagic.ashx&#039;;return true;&quot; onmouseout=&quot;window.status=&#039;&#039;;return true;&quot;&gt;Smartphone France Recovery and Firmware Image&lt;/a&gt; (nice image, already rooted)&lt;/li&gt;&lt;br /&gt;
&lt;li&gt;&lt;a href=&quot;http://citizen428.net/exit.php?url_id=4723&amp;amp;entry_id=409&quot; title=&quot;http://forum.xda-developers.com/showthread.php?t=556933%26highlight=theofficial%2Brogers&quot;  onmouseover=&quot;window.status=&#039;http://forum.xda-developers.com/showthread.php?t=556933%26highlight=theofficial%2Brogers&#039;;return true;&quot; onmouseout=&quot;window.status=&#039;&#039;;return true;&quot;&gt;TheOfficial Rogers ROM&lt;/a&gt; (very nice Android 1.5 &lt;span class=&quot;caps&quot;&gt;ROM&lt;/span&gt;, needs root before installing)&lt;/li&gt;&lt;br /&gt;
&lt;/ul&gt;&lt;/p&gt;

	&lt;p&gt;One last word of advice: save your &lt;span class=&quot;caps&quot;&gt;APN&lt;/span&gt; settings before you flash your phone!
 &lt;/p&gt; 
    </content:encoded>

    <pubDate>Thu, 17 Dec 2009 21:15:00 +0100</pubDate>
    <guid isPermaLink="false">http://citizen428.net/archives/409-guid.html</guid>
    
</item>
<item>
    <title>happynerds.net is online!</title>
    <link>http://citizen428.net/archives/405-happynerds.net-is-online!.html</link>
    
    <comments>http://citizen428.net/archives/405-happynerds.net-is-online!.html#comments</comments>
    <wfw:comment>http://citizen428.net/wfwcomment.php?cid=405</wfw:comment>

    <slash:comments>0</slash:comments>
    <wfw:commentRss>http://citizen428.net/rss.php?version=2.0&amp;type=comments&amp;cid=405</wfw:commentRss>
    

    <author>nospam@example.com (citizen428)</author>
    <content:encoded>
    	&lt;p&gt;In my &lt;a href=&quot;http://citizen428.net/exit.php?url_id=4717&amp;amp;entry_id=405&quot; title=&quot;http://citizen428.net/archives/404-Fun-with-Sinatra,-Heroku-and-MongoDB.html&quot;  onmouseover=&quot;window.status=&#039;http://citizen428.net/archives/404-Fun-with-Sinatra,-Heroku-and-MongoDB.html&#039;;return true;&quot; onmouseout=&quot;window.status=&#039;&#039;;return true;&quot;&gt;previous blog post&lt;/a&gt; I mentioned how much fun I have in creating a small web project with Sinatra, Heroku and MongoHQ and today said project finally went online:&lt;/p&gt;

	&lt;p&gt;&lt;a href=&quot;http://citizen428.net/exit.php?url_id=4718&amp;amp;entry_id=405&quot; title=&quot;http://www.happynerds.net/&quot;  onmouseover=&quot;window.status=&#039;http://www.happynerds.net/&#039;;return true;&quot; onmouseout=&quot;window.status=&#039;&#039;;return true;&quot;&gt;Happynerds &amp;#8211; Programming Links for Kids&lt;/a&gt;&lt;/p&gt;

	&lt;p&gt;If you wonder why I&amp;#8217;m doing this, RailsBridge has a &lt;a href=&quot;http://citizen428.net/exit.php?url_id=4719&amp;amp;entry_id=405&quot; title=&quot;http://teachingkids.railsbridge.org/&quot;  onmouseover=&quot;window.status=&#039;http://teachingkids.railsbridge.org/&#039;;return true;&quot; onmouseout=&quot;window.status=&#039;&#039;;return true;&quot;&gt;good summary&lt;/a&gt; on the topic.&lt;/p&gt;

  
    </content:encoded>

    <pubDate>Sun, 13 Dec 2009 16:52:29 +0100</pubDate>
    <guid isPermaLink="false">http://citizen428.net/archives/405-guid.html</guid>
    <category>kids</category>
<category>programming</category>
<category>webtips</category>

</item>
<item>
    <title>Fun with Sinatra, Heroku and MongoDB</title>
    <link>http://citizen428.net/archives/404-Fun-with-Sinatra,-Heroku-and-MongoDB.html</link>
    
    <comments>http://citizen428.net/archives/404-Fun-with-Sinatra,-Heroku-and-MongoDB.html#comments</comments>
    <wfw:comment>http://citizen428.net/wfwcomment.php?cid=404</wfw:comment>

    <slash:comments>4</slash:comments>
    <wfw:commentRss>http://citizen428.net/rss.php?version=2.0&amp;type=comments&amp;cid=404</wfw:commentRss>
    

    <author>nospam@example.com (citizen428)</author>
    <content:encoded>
    	&lt;p&gt;I&amp;#8217;ve been toying around with the idea for a small website lately, but never actually got around to do it. In an attempt to clear out my personal to do list I finally motivated myself to start yesterday, and I have to say the following combination of tools is not only insanely efficient, but also really fun to work with:&lt;br /&gt;
&lt;ul&gt;&lt;br /&gt;
&lt;li&gt;&lt;a href=&quot;http://citizen428.net/exit.php?url_id=4708&amp;amp;entry_id=404&quot; title=&quot;http://www.sinatrarb.com/&quot;  onmouseover=&quot;window.status=&#039;http://www.sinatrarb.com/&#039;;return true;&quot; onmouseout=&quot;window.status=&#039;&#039;;return true;&quot;&gt;Sinatra&lt;/a&gt;, &lt;i&gt;&amp;#8220;a &lt;span class=&quot;caps&quot;&gt;DSL&lt;/span&gt; for quickly creating web applications in Ruby with minimal effort&amp;#8221;&lt;/i&gt;. I recommend using it in combination with &lt;a href=&quot;http://citizen428.net/exit.php?url_id=4709&amp;amp;entry_id=404&quot; title=&quot;http://mongrel.rubyforge.org/&quot;  onmouseover=&quot;window.status=&#039;http://mongrel.rubyforge.org/&#039;;return true;&quot; onmouseout=&quot;window.status=&#039;&#039;;return true;&quot;&gt;Mongrel&lt;/a&gt;, &lt;a href=&quot;http://citizen428.net/exit.php?url_id=4710&amp;amp;entry_id=404&quot; title=&quot;http://github.com/rtomayko/shotgun&quot;  onmouseover=&quot;window.status=&#039;http://github.com/rtomayko/shotgun&#039;;return true;&quot; onmouseout=&quot;window.status=&#039;&#039;;return true;&quot;&gt;Shotgun&lt;/a&gt; and &lt;a href=&quot;http://citizen428.net/exit.php?url_id=4716&amp;amp;entry_id=404&quot; title=&quot;http://haml-lang.com/&quot;  onmouseover=&quot;window.status=&#039;http://haml-lang.com/&#039;;return true;&quot; onmouseout=&quot;window.status=&#039;&#039;;return true;&quot;&gt;Haml&lt;/a&gt;.&lt;/li&gt;&lt;br /&gt;
&lt;li&gt;&lt;a href=&quot;http://citizen428.net/exit.php?url_id=4711&amp;amp;entry_id=404&quot; title=&quot;http://heroku.com/&quot;  onmouseover=&quot;window.status=&#039;http://heroku.com/&#039;;return true;&quot; onmouseout=&quot;window.status=&#039;&#039;;return true;&quot;&gt;Heroku&lt;/a&gt;, a Ruby cloud hosting platform. Small sites are for free and Heroku&amp;#8217;s git-based workflow just feels so natural. You can also &lt;a href=&quot;http://citizen428.net/exit.php?url_id=4712&amp;amp;entry_id=404&quot; title=&quot;http://docs.heroku.com/gems&quot;  onmouseover=&quot;window.status=&#039;http://docs.heroku.com/gems&#039;;return true;&quot; onmouseout=&quot;window.status=&#039;&#039;;return true;&quot;&gt;manage your gem dependencies&lt;/a&gt; and &lt;a href=&quot;http://citizen428.net/exit.php?url_id=4713&amp;amp;entry_id=404&quot; title=&quot;http://docs.heroku.com/config-vars&quot;  onmouseover=&quot;window.status=&#039;http://docs.heroku.com/config-vars&#039;;return true;&quot; onmouseout=&quot;window.status=&#039;&#039;;return true;&quot;&gt;set up environment variables&lt;/a&gt;, which made my life a whole lot easier.&lt;/li&gt;&lt;br /&gt;
&lt;li&gt;&lt;a href=&quot;http://citizen428.net/exit.php?url_id=4714&amp;amp;entry_id=404&quot; title=&quot;http://www.mongodb.org&quot;  onmouseover=&quot;window.status=&#039;http://www.mongodb.org&#039;;return true;&quot; onmouseout=&quot;window.status=&#039;&#039;;return true;&quot;&gt;MongoDB&lt;/a&gt;, &lt;i&gt;&amp;#8220;a scalable, high-performance, open source, schema-free, document-oriented database&amp;#8221;&lt;/i&gt;. In this specific case I used &lt;a href=&quot;http://citizen428.net/exit.php?url_id=4715&amp;amp;entry_id=404&quot; title=&quot;http://www.mongohq.com/home&quot;  onmouseover=&quot;window.status=&#039;http://www.mongohq.com/home&#039;;return true;&quot; onmouseout=&quot;window.status=&#039;&#039;;return true;&quot;&gt;MongoHQ&lt;/a&gt; for the database hosting, since they were nice enough to provide me with a beta account. I stored all the connection information for MongoHQ in environment variables as described above:&lt;/p&gt;

	&lt;p&gt;&lt;script src=&quot;http://gist.github.com/250193.js?file=mongohq.rb&quot;&gt;&lt;/script&gt;&lt;br /&gt;
&lt;/ul&gt;&lt;/p&gt;

	&lt;p&gt;With this combination I was able to go from zero to mostly finished (I still need to write some of the content and make/steal a stylesheet) in very little time, while actually having fun! Thanks everybody for providing the Ruby community which such awesome tools! &lt;img src=&quot;http://citizen428.net/templates/default/img/emoticons/smile.png&quot; alt=&quot;:-)&quot; style=&quot;display: inline; vertical-align: bottom;&quot; class=&quot;emoticon&quot; /&gt; &lt;/p&gt; 
    </content:encoded>

    <pubDate>Sun, 06 Dec 2009 12:49:57 +0100</pubDate>
    <guid isPermaLink="false">http://citizen428.net/archives/404-guid.html</guid>
    <category>heroku</category>
<category>mongodb</category>
<category>mongohq</category>
<category>programming</category>
<category>ruby</category>
<category>sinatra</category>

</item>
<item>
    <title>Gravedigging why the lucky stiff: Io Has A Very Clean Mirror</title>
    <link>http://citizen428.net/archives/402-Gravedigging-why-the-lucky-stiff-Io-Has-A-Very-Clean-Mirror.html</link>
    
    <comments>http://citizen428.net/archives/402-Gravedigging-why-the-lucky-stiff-Io-Has-A-Very-Clean-Mirror.html#comments</comments>
    <wfw:comment>http://citizen428.net/wfwcomment.php?cid=402</wfw:comment>

    <slash:comments>0</slash:comments>
    <wfw:commentRss>http://citizen428.net/rss.php?version=2.0&amp;type=comments&amp;cid=402</wfw:commentRss>
    

    <author>nospam@example.com (citizen428)</author>
    <content:encoded>
    	&lt;p&gt;&lt;a href=&quot;http://citizen428.net/exit.php?url_id=4700&amp;amp;entry_id=402&quot; title=&quot;http://www.iolanguage.com/&quot;  onmouseover=&quot;window.status=&#039;http://www.iolanguage.com/&#039;;return true;&quot; onmouseout=&quot;window.status=&#039;&#039;;return true;&quot;&gt;Io&lt;/a&gt; is a small small, prototype-based OO programming language that&amp;#8217;s fun to play with. Unfortunately there&amp;#8217;s not too much information about it out there and quite predictably googling for &amp;#8220;io&amp;#8221; gets you lots of results you are &lt;strong&gt;not&lt;/strong&gt; looking for. But today I remembered that &lt;a href=&quot;http://citizen428.net/exit.php?url_id=4701&amp;amp;entry_id=402&quot; title=&quot;http://en.wikipedia.org/wiki/Why_the_lucky_stiff&quot;  onmouseover=&quot;window.status=&#039;http://en.wikipedia.org/wiki/Why_the_lucky_stiff&#039;;return true;&quot; onmouseout=&quot;window.status=&#039;&#039;;return true;&quot;&gt;why&lt;/a&gt; once did a nice little article on the language, and thanks to the amazing &lt;a href=&quot;http://citizen428.net/exit.php?url_id=4702&amp;amp;entry_id=402&quot; title=&quot;http://www.archive.org/&quot;  onmouseover=&quot;window.status=&#039;http://www.archive.org/&#039;;return true;&quot; onmouseout=&quot;window.status=&#039;&#039;;return true;&quot;&gt;Internet Archive&lt;/a&gt; I actually managed to find it! So with out further ado, here we go:&lt;/p&gt;

	&lt;p&gt;&lt;a href=&quot;http://citizen428.net/exit.php?url_id=4703&amp;amp;entry_id=402&quot; title=&quot;http://web.archive.org/web/20080106163631/http://hackety.org/2008/01/05/ioHasAVeryCleanMirror.html&quot;  onmouseover=&quot;window.status=&#039;http://web.archive.org/web/20080106163631/http://hackety.org/2008/01/05/ioHasAVeryCleanMirror.html&#039;;return true;&quot; onmouseout=&quot;window.status=&#039;&#039;;return true;&quot;&gt;Io Has A Very Clean Mirror&lt;/a&gt; &lt;/p&gt; 
    </content:encoded>

    <pubDate>Tue, 01 Dec 2009 21:54:09 +0100</pubDate>
    <guid isPermaLink="false">http://citizen428.net/archives/402-guid.html</guid>
    <category>io</category>
<category>programming</category>

</item>
<item>
    <title>Fun with Twitter and Ruby</title>
    <link>http://citizen428.net/archives/401-Fun-with-Twitter-and-Ruby.html</link>
    
    <comments>http://citizen428.net/archives/401-Fun-with-Twitter-and-Ruby.html#comments</comments>
    <wfw:comment>http://citizen428.net/wfwcomment.php?cid=401</wfw:comment>

    <slash:comments>0</slash:comments>
    <wfw:commentRss>http://citizen428.net/rss.php?version=2.0&amp;type=comments&amp;cid=401</wfw:commentRss>
    

    <author>nospam@example.com (citizen428)</author>
    <content:encoded>
    	&lt;p&gt;I&amp;#8217;m currently toying around with some ideas for Twitter bots etc. so I had a look at some of the available gems out there. Sometimes Ruby makes stuff almost too simple&amp;#8230; &lt;img src=&quot;http://citizen428.net/templates/default/img/emoticons/wink.png&quot; alt=&quot;;-)&quot; style=&quot;display: inline; vertical-align: bottom;&quot; class=&quot;emoticon&quot; /&gt; Here are a few nice snippets of what you could do with a couple of minutes time and some Ruby:&lt;/p&gt;

	&lt;p&gt;&lt;u&gt;Automatically translate all tweets for a given keyword:&lt;/u&gt; &lt;br /&gt;
&lt;script src=&quot;http://gist.github.com/241437.js?file=gistfile1.rb&quot;&gt;&lt;/script&gt;&lt;/p&gt;

	&lt;p&gt;&lt;u&gt;Daemonize the above:&lt;/u&gt;&lt;br /&gt;
Alternatively you can also follow a userid instead of a keyword and daemonize the whole thing, thus making it super easy to create a bot which posts translations of Matz&amp;#8217;s tweets:&lt;/p&gt;

	&lt;p&gt;&lt;script src=&quot;http://gist.github.com/241437.js?file=gistfile2.rb&quot;&gt;&lt;/script&gt;&lt;/p&gt;

	&lt;p&gt;If you put this into a file like transbot.rb,  the command ruby transbot.rb will give you all the regular daemon commands like start, stop, etc.&lt;/p&gt;

	&lt;p&gt;&lt;u&gt;Ruby is trendy&lt;/u&gt;&lt;br /&gt;
Curious of getting a list of current trends on Twitter, without hashtags? There you go:&lt;br /&gt;
&lt;script src=&quot;http://gist.github.com/241437.js?file=gistfile3.rb&quot;&gt;&lt;/script&gt;&lt;br /&gt;
Combining all these ideas you could easily write a bot that follows the current Twitter trends and posts translations of them in only a couple of lines. &lt;img src=&quot;http://citizen428.net/templates/default/img/emoticons/smile.png&quot; alt=&quot;:-)&quot; style=&quot;display: inline; vertical-align: bottom;&quot; class=&quot;emoticon&quot; /&gt; &lt;/p&gt; 
    </content:encoded>

    <pubDate>Mon, 23 Nov 2009 21:50:49 +0100</pubDate>
    <guid isPermaLink="false">http://citizen428.net/archives/401-guid.html</guid>
    <category>programming</category>
<category>ruby</category>
<category>twitter</category>

</item>
<item>
    <title>Fixing MacPorts on Snow Leopard</title>
    <link>http://citizen428.net/archives/400-Fixing-MacPorts-on-Snow-Leopard.html</link>
    
    <comments>http://citizen428.net/archives/400-Fixing-MacPorts-on-Snow-Leopard.html#comments</comments>
    <wfw:comment>http://citizen428.net/wfwcomment.php?cid=400</wfw:comment>

    <slash:comments>1</slash:comments>
    <wfw:commentRss>http://citizen428.net/rss.php?version=2.0&amp;type=comments&amp;cid=400</wfw:commentRss>
    

    <author>nospam@example.com (citizen428)</author>
    <content:encoded>
    	&lt;p&gt;After upgrading to Snow Leopard I had quite a bit of trouble with my &lt;a href=&quot;http://citizen428.net/exit.php?url_id=4697&amp;amp;entry_id=400&quot; title=&quot;http://www.macports.org/&quot;  onmouseover=&quot;window.status=&#039;http://www.macports.org/&#039;;return true;&quot; onmouseout=&quot;window.status=&#039;&#039;;return true;&quot;&gt;MacPorts&lt;/a&gt; installation, since most builds just failed with configure errors. After the obvious first steps of installing a newer version for SL and making sure I have the most recent XCode, I was a bit stumped until I finally found this site:&lt;/p&gt;

	&lt;p&gt;&lt;a href=&quot;http://citizen428.net/exit.php?url_id=4698&amp;amp;entry_id=400&quot; title=&quot;http://trac.macports.org/wiki/Migration&quot;  onmouseover=&quot;window.status=&#039;http://trac.macports.org/wiki/Migration&#039;;return true;&quot; onmouseout=&quot;window.status=&#039;&#039;;return true;&quot;&gt;Migrating a MacPorts install to a new major OS version or &lt;span class=&quot;caps&quot;&gt;CPU&lt;/span&gt; architecture&lt;/a&gt;&lt;/p&gt;

	&lt;p&gt;After finding this guide &amp;#8211; which btw really solved my problems &amp;#8211; I felt a bit stupid, but since I didn&amp;#8217;t have to do anything after the Tiger-&gt;Leopard upgrade, I really didn&amp;#8217;t expect this.
 &lt;/p&gt; 
    </content:encoded>

    <pubDate>Mon, 19 Oct 2009 20:41:22 +0200</pubDate>
    <guid isPermaLink="false">http://citizen428.net/archives/400-guid.html</guid>
    <category>mac</category>
<category>osx</category>
<category>tip</category>

</item>

</channel>
</rss>