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

<channel>
	<title>Hints and Kinks &#187; matthew</title>
	<atom:link href="http://matthew.mceachen.us/blog/author/matthew/feed" rel="self" type="application/rss+xml" />
	<link>http://matthew.mceachen.us/blog</link>
	<description>Tips and tricks and howtos galore</description>
	<lastBuildDate>Wed, 18 Jan 2012 12:17:48 +0000</lastBuildDate>
	<language>en</language>
	<sy:updatePeriod>hourly</sy:updatePeriod>
	<sy:updateFrequency>1</sy:updateFrequency>
	<generator>http://wordpress.org/?v=3.3.1</generator>
		<item>
		<title>HOWTO: Deal with Amazon&#8217;s &#8220;requested Availability Zone is no longer supported&#8221; error</title>
		<link>http://matthew.mceachen.us/blog/howto-deal-with-amazons-the-requested-availability-zone-is-no-longer-supported-error-1193.html</link>
		<comments>http://matthew.mceachen.us/blog/howto-deal-with-amazons-the-requested-availability-zone-is-no-longer-supported-error-1193.html#comments</comments>
		<pubDate>Sun, 03 Jul 2011 20:27:14 +0000</pubDate>
		<dc:creator>matthew</dc:creator>
				<category><![CDATA[Technical HOWTOs]]></category>
		<category><![CDATA[aws]]></category>

		<guid isPermaLink="false">http://matthew.mceachen.us/blog/?p=1193</guid>
		<description><![CDATA[In shutting down the AdGrok servers (talk about bittersweet&#8230;), I stopped the instances, but then remembered I wanted to shred the files first, so I clicked &#8220;start,&#8221; and was greeted by the following error: The requested Availability Zone is no &#8230; <a href="http://matthew.mceachen.us/blog/howto-deal-with-amazons-the-requested-availability-zone-is-no-longer-supported-error-1193.html">Continue reading <span class="meta-nav">&#8594;</span></a>]]></description>
		<wfw:commentRss>http://matthew.mceachen.us/blog/howto-deal-with-amazons-the-requested-availability-zone-is-no-longer-supported-error-1193.html/feed</wfw:commentRss>
		<slash:comments>1</slash:comments>
		</item>
		<item>
		<title>It really is rocket science!</title>
		<link>http://matthew.mceachen.us/blog/it-really-is-rocket-science-1180.html</link>
		<comments>http://matthew.mceachen.us/blog/it-really-is-rocket-science-1180.html#comments</comments>
		<pubDate>Sun, 29 May 2011 23:00:05 +0000</pubDate>
		<dc:creator>matthew</dc:creator>
				<category><![CDATA[Technical HOWTOs]]></category>
		<category><![CDATA[rockets]]></category>
		<category><![CDATA[science]]></category>

		<guid isPermaLink="false">http://matthew.mceachen.us/blog/?p=1180</guid>
		<description><![CDATA[This last Friday I taught my &#8220;it really is rocket science&#8221; class to another hundred children (Kindergarten through 5th grade). Last year PTO Today wrote an article about Arts and Science day, and interviewed me. This year, the kids were &#8230; <a href="http://matthew.mceachen.us/blog/it-really-is-rocket-science-1180.html">Continue reading <span class="meta-nav">&#8594;</span></a>]]></description>
		<wfw:commentRss>http://matthew.mceachen.us/blog/it-really-is-rocket-science-1180.html/feed</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>HOWTO: Fix &#8220;rake/rdoctask is deprecated. use rdoc/task instead&#8221;</title>
		<link>http://matthew.mceachen.us/blog/howto-fix-rake-rdoctask-is-deprecated-use-rdoc-task-instead-1169.html</link>
		<comments>http://matthew.mceachen.us/blog/howto-fix-rake-rdoctask-is-deprecated-use-rdoc-task-instead-1169.html#comments</comments>
		<pubDate>Thu, 26 May 2011 16:29:26 +0000</pubDate>
		<dc:creator>matthew</dc:creator>
				<category><![CDATA[Technical HOWTOs]]></category>
		<category><![CDATA[rdoc]]></category>
		<category><![CDATA[ruby]]></category>

		<guid isPermaLink="false">http://matthew.mceachen.us/blog/?p=1169</guid>
		<description><![CDATA[Seeing this? rake/rdoctask is deprecated. Use rdoc/task instead (in RDoc 2.4.2+) Edit your Rakefile and change these lines: require 'rake/rdoctask' Rake::RDocTask.new&#40;:rdoc&#41; do &#124;rdoc&#124; ... to look like this: require 'rdoc/task' RDoc::Task.new do &#124;rdoc&#124; ... You may need to add gem &#8230; <a href="http://matthew.mceachen.us/blog/howto-fix-rake-rdoctask-is-deprecated-use-rdoc-task-instead-1169.html">Continue reading <span class="meta-nav">&#8594;</span></a>]]></description>
		<wfw:commentRss>http://matthew.mceachen.us/blog/howto-fix-rake-rdoctask-is-deprecated-use-rdoc-task-instead-1169.html/feed</wfw:commentRss>
		<slash:comments>8</slash:comments>
		</item>
		<item>
		<title>HOWTO: Wrangle the pg (postgresql) gem with macports and rvm</title>
		<link>http://matthew.mceachen.us/blog/howto-wrangle-the-pg-postgresql-gem-with-macports-and-rvm-1159.html</link>
		<comments>http://matthew.mceachen.us/blog/howto-wrangle-the-pg-postgresql-gem-with-macports-and-rvm-1159.html#comments</comments>
		<pubDate>Sat, 21 May 2011 23:13:35 +0000</pubDate>
		<dc:creator>matthew</dc:creator>
				<category><![CDATA[Technical HOWTOs]]></category>
		<category><![CDATA[macports]]></category>
		<category><![CDATA[pg]]></category>
		<category><![CDATA[postgresql]]></category>
		<category><![CDATA[ruby]]></category>
		<category><![CDATA[rubygems]]></category>

		<guid isPermaLink="false">http://matthew.mceachen.us/blog/?p=1159</guid>
		<description><![CDATA[Seeing this? Installing pg (0.11.0) with native extensions /Users/mrm/.rvm/rubies/ruby-1.9.2-p180/lib/ruby/site_ruby/1.9.1/rubygems/installer.rb:533:in `rescue in block in build_extensions': ERROR: Failed to build gem native extension. (Gem::Installer::ExtensionBuildError) /Users/mrm/.rvm/rubies/ruby-1.9.2-p180/bin/ruby extconf.rb checking for pg_config... no No pg_config... trying anyway. If building fails, please try again with --with-pg-config=/path/to/pg_config &#8230; <a href="http://matthew.mceachen.us/blog/howto-wrangle-the-pg-postgresql-gem-with-macports-and-rvm-1159.html">Continue reading <span class="meta-nav">&#8594;</span></a>]]></description>
		<wfw:commentRss>http://matthew.mceachen.us/blog/howto-wrangle-the-pg-postgresql-gem-with-macports-and-rvm-1159.html/feed</wfw:commentRss>
		<slash:comments>5</slash:comments>
		</item>
		<item>
		<title>HOWTO: Fix git-gui&#8217;s &#8220;Spell checking is unavailable&#8221; dialog</title>
		<link>http://matthew.mceachen.us/blog/howto-fix-git-guis-spell-checking-is-unavailable-dialog-1153.html</link>
		<comments>http://matthew.mceachen.us/blog/howto-fix-git-guis-spell-checking-is-unavailable-dialog-1153.html#comments</comments>
		<pubDate>Sat, 21 May 2011 19:27:06 +0000</pubDate>
		<dc:creator>matthew</dc:creator>
				<category><![CDATA[Technical HOWTOs]]></category>
		<category><![CDATA[git]]></category>
		<category><![CDATA[macports]]></category>

		<guid isPermaLink="false">http://matthew.mceachen.us/blog/?p=1153</guid>
		<description><![CDATA[Launching `git gui` from the command line, when built with MacPorts, causes an irritating dialog to pop up: The solution is simple: $ sudo port install aspell aspell-dict-en]]></description>
		<wfw:commentRss>http://matthew.mceachen.us/blog/howto-fix-git-guis-spell-checking-is-unavailable-dialog-1153.html/feed</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Creating acts_as_&#8230; gems for Rails 3.1.x</title>
		<link>http://matthew.mceachen.us/blog/creating-acts_as_-gems-for-rails-3-1-x-1146.html</link>
		<comments>http://matthew.mceachen.us/blog/creating-acts_as_-gems-for-rails-3-1-x-1146.html#comments</comments>
		<pubDate>Sat, 21 May 2011 19:03:38 +0000</pubDate>
		<dc:creator>matthew</dc:creator>
				<category><![CDATA[Technical HOWTOs]]></category>
		<category><![CDATA[gem]]></category>
		<category><![CDATA[rails]]></category>
		<category><![CDATA[ruby]]></category>

		<guid isPermaLink="false">http://matthew.mceachen.us/blog/?p=1146</guid>
		<description><![CDATA[There are a lot of posts on how to build rubygems. With Rails 3.1, though, they&#8217;re all old and busted. The new hotness is built right into rails now. Just incant rails plugin new APP_PATH You&#8217;ll get: a .gemspec and &#8230; <a href="http://matthew.mceachen.us/blog/creating-acts_as_-gems-for-rails-3-1-x-1146.html">Continue reading <span class="meta-nav">&#8594;</span></a>]]></description>
		<wfw:commentRss>http://matthew.mceachen.us/blog/creating-acts_as_-gems-for-rails-3-1-x-1146.html/feed</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Hierarchical Tagging with Rails 3 and Closure Trees</title>
		<link>http://matthew.mceachen.us/blog/hierarchical-tagging-with-rails-3-and-closure-trees-1131.html</link>
		<comments>http://matthew.mceachen.us/blog/hierarchical-tagging-with-rails-3-and-closure-trees-1131.html#comments</comments>
		<pubDate>Wed, 18 May 2011 06:26:15 +0000</pubDate>
		<dc:creator>matthew</dc:creator>
				<category><![CDATA[Technical HOWTOs]]></category>
		<category><![CDATA[closure tree]]></category>
		<category><![CDATA[rails]]></category>
		<category><![CDATA[ruby]]></category>
		<category><![CDATA[rubygem]]></category>

		<guid isPermaLink="false">http://matthew.mceachen.us/blog/?p=1131</guid>
		<description><![CDATA[In rebuilding PhotoStructure on Rails, I was surprised that one of the most popular gem for trees used a nested set model. Nested sets are performant for reads, but for adding and deleting nodes, it&#8217;s extremely expensive &#8212; on average, &#8230; <a href="http://matthew.mceachen.us/blog/hierarchical-tagging-with-rails-3-and-closure-trees-1131.html">Continue reading <span class="meta-nav">&#8594;</span></a>]]></description>
		<wfw:commentRss>http://matthew.mceachen.us/blog/hierarchical-tagging-with-rails-3-and-closure-trees-1131.html/feed</wfw:commentRss>
		<slash:comments>2</slash:comments>
		</item>
		<item>
		<title>Sandbox telegrams, or, how your Chrome extension can interact with page content scripts</title>
		<link>http://matthew.mceachen.us/blog/sandbox-telegrams-or-how-your-chrome-extension-can-interact-with-page-content-scripts-1123.html</link>
		<comments>http://matthew.mceachen.us/blog/sandbox-telegrams-or-how-your-chrome-extension-can-interact-with-page-content-scripts-1123.html#comments</comments>
		<pubDate>Fri, 25 Mar 2011 06:22:41 +0000</pubDate>
		<dc:creator>matthew</dc:creator>
				<category><![CDATA[Technical HOWTOs]]></category>
		<category><![CDATA[chrome]]></category>
		<category><![CDATA[greyhat]]></category>
		<category><![CDATA[javascript]]></category>

		<guid isPermaLink="false">http://matthew.mceachen.us/blog/?p=1123</guid>
		<description><![CDATA[In AdGrok&#8217;s GrokBar, we inject a &#8220;heads-up display&#8221; on pages that the user is advertising. The heads-up display is actually an iframe that&#8217;s positioned within a browser-extension-injected div, and that iframe renders content from our secure server farm. You can &#8230; <a href="http://matthew.mceachen.us/blog/sandbox-telegrams-or-how-your-chrome-extension-can-interact-with-page-content-scripts-1123.html">Continue reading <span class="meta-nav">&#8594;</span></a>]]></description>
		<wfw:commentRss>http://matthew.mceachen.us/blog/sandbox-telegrams-or-how-your-chrome-extension-can-interact-with-page-content-scripts-1123.html/feed</wfw:commentRss>
		<slash:comments>5</slash:comments>
		</item>
		<item>
		<title>Multi-value hashes in Ruby</title>
		<link>http://matthew.mceachen.us/blog/multi-value-hashes-in-ruby-1114.html</link>
		<comments>http://matthew.mceachen.us/blog/multi-value-hashes-in-ruby-1114.html#comments</comments>
		<pubDate>Thu, 24 Mar 2011 21:26:22 +0000</pubDate>
		<dc:creator>matthew</dc:creator>
				<category><![CDATA[Technical HOWTOs]]></category>
		<category><![CDATA[ruby]]></category>

		<guid isPermaLink="false">http://matthew.mceachen.us/blog/?p=1114</guid>
		<description><![CDATA[Any non-trivial project quickly finds itself needing data structures that are more exotic than simple arrays or maps. In my quest for multimap nirvana, I first found references where every value-put call would need to be changed to look like &#8230; <a href="http://matthew.mceachen.us/blog/multi-value-hashes-in-ruby-1114.html">Continue reading <span class="meta-nav">&#8594;</span></a>]]></description>
		<wfw:commentRss>http://matthew.mceachen.us/blog/multi-value-hashes-in-ruby-1114.html/feed</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Run a RAID6 on Amazon EBS For Fun and Profit</title>
		<link>http://matthew.mceachen.us/blog/run-a-raid6-on-amazon-ebs-for-fun-and-profit-1103.html</link>
		<comments>http://matthew.mceachen.us/blog/run-a-raid6-on-amazon-ebs-for-fun-and-profit-1103.html#comments</comments>
		<pubDate>Sat, 19 Mar 2011 01:55:07 +0000</pubDate>
		<dc:creator>matthew</dc:creator>
				<category><![CDATA[Technical HOWTOs]]></category>
		<category><![CDATA[aws]]></category>
		<category><![CDATA[ebs]]></category>
		<category><![CDATA[mysql]]></category>

		<guid isPermaLink="false">http://matthew.mceachen.us/blog/?p=1103</guid>
		<description><![CDATA[With all this badmouthing Amazon&#8217;s Elastic Block Store, I wanted to share how we&#8217;ve set up our MySQL server for AdGrok. Step 1: Create a bajillion tiny EBS volumes We&#8217;ve got a bunch of performance data in MySQL, so our &#8230; <a href="http://matthew.mceachen.us/blog/run-a-raid6-on-amazon-ebs-for-fun-and-profit-1103.html">Continue reading <span class="meta-nav">&#8594;</span></a>]]></description>
		<wfw:commentRss>http://matthew.mceachen.us/blog/run-a-raid6-on-amazon-ebs-for-fun-and-profit-1103.html/feed</wfw:commentRss>
		<slash:comments>2</slash:comments>
		</item>
	</channel>
</rss>

