<?xml version="1.0" encoding="UTF-8"?>
<rss version="2.0"
	xmlns:content="http://purl.org/rss/1.0/modules/content/"
	xmlns:wfw="http://wellformedweb.org/CommentAPI/"
	xmlns:dc="http://purl.org/dc/elements/1.1/"
	xmlns:atom="http://www.w3.org/2005/Atom"
	xmlns:sy="http://purl.org/rss/1.0/modules/syndication/"
	xmlns:slash="http://purl.org/rss/1.0/modules/slash/"
	xmlns:georss="http://www.georss.org/georss" xmlns:geo="http://www.w3.org/2003/01/geo/wgs84_pos#" xmlns:media="http://search.yahoo.com/mrss/"
	>

<channel>
	<title>Keith Bennett&#039;s Technical Blog</title>
	<atom:link href="http://krbtech.wordpress.com/feed/" rel="self" type="application/rss+xml" />
	<link>http://krbtech.wordpress.com</link>
	<description>Software Development with Ruby and Friends</description>
	<lastBuildDate>Sun, 29 Jan 2012 04:13:24 +0000</lastBuildDate>
	<language>en</language>
	<sy:updatePeriod>hourly</sy:updatePeriod>
	<sy:updateFrequency>1</sy:updateFrequency>
	<generator>http://wordpress.com/</generator>
<cloud domain='krbtech.wordpress.com' port='80' path='/?rsscloud=notify' registerProcedure='' protocol='http-post' />
<image>
		<url>http://1.gravatar.com/blavatar/7f19a9f54b8d1358379307eed1166d17?s=96&#038;d=http%3A%2F%2Fs2.wp.com%2Fi%2Fbuttonw-com.png</url>
		<title>Keith Bennett&#039;s Technical Blog</title>
		<link>http://krbtech.wordpress.com</link>
	</image>
	<atom:link rel="search" type="application/opensearchdescription+xml" href="http://krbtech.wordpress.com/osd.xml" title="Keith Bennett&#039;s Technical Blog" />
	<atom:link rel='hub' href='http://krbtech.wordpress.com/?pushpress=hub'/>
		<item>
		<title>class_eval, instance_eval, eval</title>
		<link>http://krbtech.wordpress.com/2012/01/28/class_eval-instance_eval-eval/</link>
		<comments>http://krbtech.wordpress.com/2012/01/28/class_eval-instance_eval-eval/#comments</comments>
		<pubDate>Sat, 28 Jan 2012 21:17:08 +0000</pubDate>
		<dc:creator>keithrbennett</dc:creator>
				<category><![CDATA[Uncategorized]]></category>

		<guid isPermaLink="false">http://krbtech.wordpress.com/?p=508</guid>
		<description><![CDATA[A couple of days ago I attended an interesting discussion of metaprogramming by Arild Shirazi at a meeting of the Northern Virginia Ruby User Group. Arild showed how he used metaprogramming (class_eval in particular) to generate functions whose names would only be known at runtime. His talk was very effective at reminding me that I [...]<img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=krbtech.wordpress.com&amp;blog=5670930&amp;post=508&amp;subd=krbtech&amp;ref=&amp;feed=1" width="1" height="1" />]]></description>
		<wfw:commentRss>http://krbtech.wordpress.com/2012/01/28/class_eval-instance_eval-eval/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
	
		<media:content url="http://0.gravatar.com/avatar/486ca04f06d968004643ce5b47376ded?s=96&#38;d=identicon&#38;r=G" medium="image">
			<media:title type="html">keithrbennett</media:title>
		</media:content>
	</item>
		<item>
		<title>Design by Contract, Ruby Style</title>
		<link>http://krbtech.wordpress.com/2011/06/15/dependency-inversion-ruby-style/</link>
		<comments>http://krbtech.wordpress.com/2011/06/15/dependency-inversion-ruby-style/#comments</comments>
		<pubDate>Thu, 16 Jun 2011 04:22:49 +0000</pubDate>
		<dc:creator>keithrbennett</dc:creator>
				<category><![CDATA[Uncategorized]]></category>

		<guid isPermaLink="false">http://krbtech.wordpress.com/?p=450</guid>
		<description><![CDATA[I recently encountered a situation in which I was writing data to a key/value data store. There was a code layer that insulated the business logic layer from the data store internals. I wanted to be able to unit test this business logic without needing access to the data store. I could mock the data [...]<img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=krbtech.wordpress.com&amp;blog=5670930&amp;post=450&amp;subd=krbtech&amp;ref=&amp;feed=1" width="1" height="1" />]]></description>
		<wfw:commentRss>http://krbtech.wordpress.com/2011/06/15/dependency-inversion-ruby-style/feed/</wfw:commentRss>
		<slash:comments>2</slash:comments>
	
		<media:content url="http://0.gravatar.com/avatar/486ca04f06d968004643ce5b47376ded?s=96&#38;d=identicon&#38;r=G" medium="image">
			<media:title type="html">keithrbennett</media:title>
		</media:content>
	</item>
		<item>
		<title>Android GUI&#8217;s &#8212; The Case Against GUI Builders and Data Driven GUI Configuration</title>
		<link>http://krbtech.wordpress.com/2011/05/28/android-guis-the-case-against-gui-builders-and-data-driven-gui-configuration/</link>
		<comments>http://krbtech.wordpress.com/2011/05/28/android-guis-the-case-against-gui-builders-and-data-driven-gui-configuration/#comments</comments>
		<pubDate>Sun, 29 May 2011 02:20:27 +0000</pubDate>
		<dc:creator>keithrbennett</dc:creator>
				<category><![CDATA[Uncategorized]]></category>

		<guid isPermaLink="false">http://krbtech.wordpress.com/?p=436</guid>
		<description><![CDATA[GUI builders are great, but for building anything more than a trivial solitary application, without discipline and diligence, the duplication can create a productivity and quality quagmire. In addition, XML is a human-hostile configuration language. Copy and Paste &#8211; Bad! As the number of windows increases, the natural tendency is to copy and paste. For [...]<img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=krbtech.wordpress.com&amp;blog=5670930&amp;post=436&amp;subd=krbtech&amp;ref=&amp;feed=1" width="1" height="1" />]]></description>
		<wfw:commentRss>http://krbtech.wordpress.com/2011/05/28/android-guis-the-case-against-gui-builders-and-data-driven-gui-configuration/feed/</wfw:commentRss>
		<slash:comments>2</slash:comments>
	
		<media:content url="http://0.gravatar.com/avatar/486ca04f06d968004643ce5b47376ded?s=96&#38;d=identicon&#38;r=G" medium="image">
			<media:title type="html">keithrbennett</media:title>
		</media:content>
	</item>
		<item>
		<title>Singapore and Its Red Dot RubyConf</title>
		<link>http://krbtech.wordpress.com/2011/05/10/singapore-and-its-red-dot-rubyconf/</link>
		<comments>http://krbtech.wordpress.com/2011/05/10/singapore-and-its-red-dot-rubyconf/#comments</comments>
		<pubDate>Tue, 10 May 2011 06:45:56 +0000</pubDate>
		<dc:creator>keithrbennett</dc:creator>
				<category><![CDATA[Uncategorized]]></category>

		<guid isPermaLink="false">http://krbtech.wordpress.com/?p=388</guid>
		<description><![CDATA[The Conference On April 22-23, 2011 was the first ever regional Ruby Conference in Southeast Asia (http://reddotrubyconf.com, Twitter tag #reddotrubyconf). (Conference links and resources provided by @cheeaun are here). It was really cool seeing people from so many different countries in the region unite around their appreciation of the Ruby language. In additional to the [...]<img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=krbtech.wordpress.com&amp;blog=5670930&amp;post=388&amp;subd=krbtech&amp;ref=&amp;feed=1" width="1" height="1" />]]></description>
		<wfw:commentRss>http://krbtech.wordpress.com/2011/05/10/singapore-and-its-red-dot-rubyconf/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
	
		<media:content url="http://0.gravatar.com/avatar/486ca04f06d968004643ce5b47376ded?s=96&#38;d=identicon&#38;r=G" medium="image">
			<media:title type="html">keithrbennett</media:title>
		</media:content>

		<media:content url="http://krbtech.files.wordpress.com/2011/05/matz_and_paolo.jpg?w=300" medium="image">
			<media:title type="html">Matz and Paolo Falcone</media:title>
		</media:content>

		<media:content url="http://krbtech.files.wordpress.com/2011/05/matz_and_keith.jpg?w=300" medium="image">
			<media:title type="html">Matz and Me (Keith Bennett)</media:title>
		</media:content>

		<media:content url="http://krbtech.files.wordpress.com/2011/05/smu.jpg?w=300" medium="image">
			<media:title type="html">SMU (Singapore Management University), RedDotRubyConf Site</media:title>
		</media:content>

		<media:content url="http://krbtech.files.wordpress.com/2011/05/keith_and_jason_ong.jpg?w=300" medium="image">
			<media:title type="html">Keith Bennett (Me) with Jason Ong</media:title>
		</media:content>

		<media:content url="http://krbtech.files.wordpress.com/2011/05/andras-e1305008011779.jpg?w=225" medium="image">
			<media:title type="html">Andras Kristof of Viki.com</media:title>
		</media:content>

		<media:content url="http://krbtech.files.wordpress.com/2011/05/moto-phone-closed.jpg?w=300" medium="image">
			<media:title type="html">Andras&#039; Motorola Android Phone, Closed</media:title>
		</media:content>

		<media:content url="http://krbtech.files.wordpress.com/2011/05/moto-phone-opened.jpg?w=300" medium="image">
			<media:title type="html">Andras&#039; Motorola Android Phone, Opened</media:title>
		</media:content>

		<media:content url="http://krbtech.files.wordpress.com/2011/05/sg-hackerspace-1.jpg?w=300" medium="image">
			<media:title type="html">Keith, Jay, and Jason at HackerspaceSG</media:title>
		</media:content>

		<media:content url="http://krbtech.files.wordpress.com/2011/05/5453342282_4e3417d48a.jpg?w=300" medium="image">
			<media:title type="html">HackerspaceSG Main Room</media:title>
		</media:content>

		<media:content url="http://krbtech.files.wordpress.com/2011/05/img_0662.jpg?w=300" medium="image">
			<media:title type="html">Keith, Jason, Ben, Shara, Brian at HackerspaceSG</media:title>
		</media:content>

		<media:content url="http://krbtech.files.wordpress.com/2011/05/durian-crepe-1-e1305011501950.jpg?w=225" medium="image">
			<media:title type="html">Making the Durian Crepe</media:title>
		</media:content>

		<media:content url="http://krbtech.files.wordpress.com/2011/05/durian-crepe-2.jpg?w=300" medium="image">
			<media:title type="html">Adding the Durian to the Crepe</media:title>
		</media:content>

		<media:content url="http://krbtech.files.wordpress.com/2011/05/durian-crepe-3.jpg?w=300" medium="image">
			<media:title type="html">Durian Crepe - The Finished Product</media:title>
		</media:content>

		<media:content url="http://krbtech.files.wordpress.com/2011/05/singapore-natl-library-1.jpg?w=300" medium="image">
			<media:title type="html">Singapore National Library</media:title>
		</media:content>

		<media:content url="http://krbtech.files.wordpress.com/2011/05/singapore-hindu-temple-1.jpg?w=300" medium="image">
			<media:title type="html">Inside the Hindu Temple at Bugis</media:title>
		</media:content>
	</item>
		<item>
		<title>Sun Java Coding Conventions Revisited</title>
		<link>http://krbtech.wordpress.com/2010/03/06/sun-java-coding-conventions-revisited/</link>
		<comments>http://krbtech.wordpress.com/2010/03/06/sun-java-coding-conventions-revisited/#comments</comments>
		<pubDate>Sat, 06 Mar 2010 21:10:16 +0000</pubDate>
		<dc:creator>keithrbennett</dc:creator>
				<category><![CDATA[Uncategorized]]></category>
		<category><![CDATA[code conventions]]></category>
		<category><![CDATA[code standards]]></category>
		<category><![CDATA[coding conventions]]></category>
		<category><![CDATA[coding standards]]></category>
		<category><![CDATA[java]]></category>
		<category><![CDATA[sun]]></category>

		<guid isPermaLink="false">http://krbtech.wordpress.com/?p=300</guid>
		<description><![CDATA[The Sun Java Code Conventions document, written in 1997, and available at http://java.sun.com/docs/codeconv/, continues to be a valuable resource for Java programmers. In addition to the nuts and bolts of formatting and the like, it includes some great wisdom, such as: The frequency of comments sometimes reflects poor quality of code. When you feel compelled [...]<img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=krbtech.wordpress.com&amp;blog=5670930&amp;post=300&amp;subd=krbtech&amp;ref=&amp;feed=1" width="1" height="1" />]]></description>
		<wfw:commentRss>http://krbtech.wordpress.com/2010/03/06/sun-java-coding-conventions-revisited/feed/</wfw:commentRss>
		<slash:comments>3</slash:comments>
	
		<media:content url="http://0.gravatar.com/avatar/486ca04f06d968004643ce5b47376ded?s=96&#38;d=identicon&#38;r=G" medium="image">
			<media:title type="html">keithrbennett</media:title>
		</media:content>
	</item>
		<item>
		<title>Bangspace &#8212; Bangkok Hackerspace</title>
		<link>http://krbtech.wordpress.com/2010/03/02/bangspace-bangkok-hackerspace/</link>
		<comments>http://krbtech.wordpress.com/2010/03/02/bangspace-bangkok-hackerspace/#comments</comments>
		<pubDate>Tue, 02 Mar 2010 18:58:27 +0000</pubDate>
		<dc:creator>keithrbennett</dc:creator>
				<category><![CDATA[Uncategorized]]></category>
		<category><![CDATA[bangkok]]></category>
		<category><![CDATA[bangspace]]></category>
		<category><![CDATA[hackerspace]]></category>

		<guid isPermaLink="false">http://krbtech.wordpress.com/?p=216</guid>
		<description><![CDATA[One of the manifestations of community among IT professionals and enthusiasts is the hackerspace (see Wikipedia article at http://en.wikipedia.org/wiki/Hackerspace). A hackerspace is a place where hackers (in the loose sense of the word, that is, benevolent software and hardware enthusiasts) can meet to talk, learn, and work together. A recent addition to the hackerspaces of [...]<img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=krbtech.wordpress.com&amp;blog=5670930&amp;post=216&amp;subd=krbtech&amp;ref=&amp;feed=1" width="1" height="1" />]]></description>
		<wfw:commentRss>http://krbtech.wordpress.com/2010/03/02/bangspace-bangkok-hackerspace/feed/</wfw:commentRss>
		<slash:comments>5</slash:comments>
	
		<media:content url="http://0.gravatar.com/avatar/486ca04f06d968004643ce5b47376ded?s=96&#38;d=identicon&#38;r=G" medium="image">
			<media:title type="html">keithrbennett</media:title>
		</media:content>

		<media:content url="http://krbtech.files.wordpress.com/2010/02/bangspace-front1.jpg" medium="image">
			<media:title type="html">Bangspace Street View</media:title>
		</media:content>

		<media:content url="http://krbtech.files.wordpress.com/2010/02/bangspace-door2.jpg" medium="image">
			<media:title type="html">Bangspace Front Door</media:title>
		</media:content>

		<media:content url="http://krbtech.files.wordpress.com/2010/02/bangspace-sugree-android-talk2.jpg" medium="image">
			<media:title type="html">bangspace-sugree-android-talk</media:title>
		</media:content>

		<media:content url="http://krbtech.files.wordpress.com/2010/02/jan1.jpg" medium="image">
			<media:title type="html">Jan at Bangspace</media:title>
		</media:content>

		<media:content url="http://krbtech.files.wordpress.com/2010/02/em-and-adam.jpg" medium="image">
			<media:title type="html">Amp and Adam at Bangspace</media:title>
		</media:content>

		<media:content url="http://krbtech.files.wordpress.com/2010/02/keith-with-tiger.jpg" medium="image">
			<media:title type="html">keith-with-tiger</media:title>
		</media:content>
	</item>
		<item>
		<title>GPartEd &#8211; Free and Open Source Disk Partitioner</title>
		<link>http://krbtech.wordpress.com/2009/07/01/gparted-free-and-open-source-disk-partitioner/</link>
		<comments>http://krbtech.wordpress.com/2009/07/01/gparted-free-and-open-source-disk-partitioner/#comments</comments>
		<pubDate>Wed, 01 Jul 2009 18:18:50 +0000</pubDate>
		<dc:creator>keithrbennett</dc:creator>
				<category><![CDATA[Uncategorized]]></category>
		<category><![CDATA[gnome]]></category>
		<category><![CDATA[gparted]]></category>
		<category><![CDATA[partition editor]]></category>
		<category><![CDATA[partition magic]]></category>

		<guid isPermaLink="false">http://krbtech.wordpress.com/?p=197</guid>
		<description><![CDATA[GPartEd (http://gparted.sourceforge.net) is a free and open source software tool that does disk partitioning like its commercial counterpart, PartitionMagic. Although GPartEd is cursed with a boring name, it is nevertheless a superstar product with both looks and brains. (For the looks, see http://gparted.sourceforge.net/screenshots.php.) The name GPartEd is an abbreviation for Gnome Partition Editor. Although I [...]<img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=krbtech.wordpress.com&amp;blog=5670930&amp;post=197&amp;subd=krbtech&amp;ref=&amp;feed=1" width="1" height="1" />]]></description>
		<wfw:commentRss>http://krbtech.wordpress.com/2009/07/01/gparted-free-and-open-source-disk-partitioner/feed/</wfw:commentRss>
		<slash:comments>5</slash:comments>
	
		<media:content url="http://0.gravatar.com/avatar/486ca04f06d968004643ce5b47376ded?s=96&#38;d=identicon&#38;r=G" medium="image">
			<media:title type="html">keithrbennett</media:title>
		</media:content>

		<media:content url="http://gparted.sourceforge.net/screens/gparted_1_big.jpg" medium="image">
			<media:title type="html">GPartEd Main Window</media:title>
		</media:content>
	</item>
		<item>
		<title>The Loss of One&#8217;s Adopted Country &#8211; Another Result of the Economic Crisis</title>
		<link>http://krbtech.wordpress.com/2009/03/30/the-loss-of-ones-adopted-country-another-result-of-the-economic-crisis/</link>
		<comments>http://krbtech.wordpress.com/2009/03/30/the-loss-of-ones-adopted-country-another-result-of-the-economic-crisis/#comments</comments>
		<pubDate>Mon, 30 Mar 2009 18:20:33 +0000</pubDate>
		<dc:creator>keithrbennett</dc:creator>
				<category><![CDATA[Uncategorized]]></category>

		<guid isPermaLink="false">http://krbtech.wordpress.com/?p=190</guid>
		<description><![CDATA[At a recent technical meeting I met a colleague with whom I&#8217;ve spoken from time to time. He is from India and has been working on an H-1 visa after getting his Masters degree at a state university here in the U.S. He, his wife, and his children have been here together for thirteen years, [...]<img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=krbtech.wordpress.com&amp;blog=5670930&amp;post=190&amp;subd=krbtech&amp;ref=&amp;feed=1" width="1" height="1" />]]></description>
		<wfw:commentRss>http://krbtech.wordpress.com/2009/03/30/the-loss-of-ones-adopted-country-another-result-of-the-economic-crisis/feed/</wfw:commentRss>
		<slash:comments>4</slash:comments>
	
		<media:content url="http://0.gravatar.com/avatar/486ca04f06d968004643ce5b47376ded?s=96&#38;d=identicon&#38;r=G" medium="image">
			<media:title type="html">keithrbennett</media:title>
		</media:content>
	</item>
		<item>
		<title>Dabbling in Clojure</title>
		<link>http://krbtech.wordpress.com/2009/03/16/same-temperature-converter-different-language-clojure/</link>
		<comments>http://krbtech.wordpress.com/2009/03/16/same-temperature-converter-different-language-clojure/#comments</comments>
		<pubDate>Mon, 16 Mar 2009 22:00:16 +0000</pubDate>
		<dc:creator>keithrbennett</dc:creator>
				<category><![CDATA[Uncategorized]]></category>
		<category><![CDATA[clojure]]></category>
		<category><![CDATA[jruby]]></category>
		<category><![CDATA[jvm]]></category>
		<category><![CDATA[swing]]></category>
		<category><![CDATA[temperature converter]]></category>

		<guid isPermaLink="false">http://krbtech.wordpress.com/?p=124</guid>
		<description><![CDATA[Clojure (http://www.clojure.org) is a Lisp implementation running on the Java Virtual Machine, written primarily by Rich Hickey and designed for simple and reliable concurrent programming. Clojure is a radical departure from the more conventional languages such as C, C++, Java, and Ruby. As a functional language, using it requires a different outlook and thinking style. [...]<img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=krbtech.wordpress.com&amp;blog=5670930&amp;post=124&amp;subd=krbtech&amp;ref=&amp;feed=1" width="1" height="1" />]]></description>
		<wfw:commentRss>http://krbtech.wordpress.com/2009/03/16/same-temperature-converter-different-language-clojure/feed/</wfw:commentRss>
		<slash:comments>8</slash:comments>
	
		<media:content url="http://0.gravatar.com/avatar/486ca04f06d968004643ce5b47376ded?s=96&#38;d=identicon&#38;r=G" medium="image">
			<media:title type="html">keithrbennett</media:title>
		</media:content>

		<media:content url="http://krbtech.files.wordpress.com/2009/02/converter-window.png" medium="image">
			<media:title type="html">converter-window</media:title>
		</media:content>
	</item>
		<item>
		<title>JRuby &#8212; A Better Language for the Java Virtual Machine</title>
		<link>http://krbtech.wordpress.com/2009/02/26/jruby-a-better-language-for-the-java-virtual-machine/</link>
		<comments>http://krbtech.wordpress.com/2009/02/26/jruby-a-better-language-for-the-java-virtual-machine/#comments</comments>
		<pubDate>Thu, 26 Feb 2009 07:53:22 +0000</pubDate>
		<dc:creator>keithrbennett</dc:creator>
				<category><![CDATA[Uncategorized]]></category>
		<category><![CDATA[code blocks]]></category>
		<category><![CDATA[conversion]]></category>
		<category><![CDATA[converter]]></category>
		<category><![CDATA[hash]]></category>
		<category><![CDATA[java]]></category>
		<category><![CDATA[jruby]]></category>
		<category><![CDATA[notation]]></category>
		<category><![CDATA[swing]]></category>
		<category><![CDATA[temperature]]></category>

		<guid isPermaLink="false">http://krbtech.wordpress.com/?p=11</guid>
		<description><![CDATA[A powerful synergy results when combining the power, reliability, portability, and rich library set of the Java platform with the power and flexibility of JRuby.  This article will discuss a couple of ways in which JRuby surpasses Java as a programming language for the JVM: Code as first class objects &#8211; code blocks, lambdas, and [...]<img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=krbtech.wordpress.com&amp;blog=5670930&amp;post=11&amp;subd=krbtech&amp;ref=&amp;feed=1" width="1" height="1" />]]></description>
		<wfw:commentRss>http://krbtech.wordpress.com/2009/02/26/jruby-a-better-language-for-the-java-virtual-machine/feed/</wfw:commentRss>
		<slash:comments>4</slash:comments>
	
		<media:content url="http://0.gravatar.com/avatar/486ca04f06d968004643ce5b47376ded?s=96&#38;d=identicon&#38;r=G" medium="image">
			<media:title type="html">keithrbennett</media:title>
		</media:content>

		<media:content url="http://krbtech.files.wordpress.com/2009/02/converter-window.png" medium="image">
			<media:title type="html">converter-window</media:title>
		</media:content>
	</item>
	</channel>
</rss>
