<?xml version="1.0" encoding="UTF-8"?><!-- generator="WordPress/2.9.2" -->
<rss version="0.92">
<channel>
	<title>Involution</title>
	<link>http://involution.com</link>
	<description>Tony Perrie's Weblog</description>
	<lastBuildDate>Mon, 15 Feb 2010 23:47:00 +0000</lastBuildDate>
	<docs>http://backend.userland.com/rss092</docs>
	<language>en</language>
	
	<item>
		<title>Rails Join Query For Empty Right Tables</title>
		<description><![CDATA[Say you wanted to select all the accounts from your applications with no associated users.  You&#8217;d think this would be obvious, however I racked my brain for a few minutes thinking of a Rails-way of sorting this out.  
The good news is with Rails 2.2 or later, it can be accomplished like this [...]]]></description>
		<link>http://involution.com/2010/02/04/rails-join-query-for-empty-right-tables/</link>
			</item>
	<item>
		<title>Transamerica Building Panorama</title>
		<description><![CDATA[
First attempt using a Canon EOS 7D.
]]></description>
		<link>http://involution.com/2009/11/20/transamerica-building-panorama/</link>
			</item>
	<item>
		<title>Interactive Memcached Debugging with Rails</title>
		<description><![CDATA[The memcached support in Rails is great, but it&#8217;s a bit difficult to see what the heck is going on in a production environment.  The first problem is, by default Rails doesn&#8217;t keep a list of all memcached keys that are available on the system.  So, you have to use a plugin like [...]]]></description>
		<link>http://involution.com/2009/06/20/interactive-memcached-debugging-with-rails/</link>
			</item>
	<item>
		<title>Using YUICompressor with Capistrano and Rails 2.3+ on Combined Javascript and CSS</title>
		<description><![CDATA[YUICompressor is a standalone Javascript and CSS minifier from the YUI folks.  It&#8217;s fairly awesome in that it does deep analysis of Javascript using Rhino (a standalone Javascript interpreter).  Most minifiers take the low road and merely remove spaces and newlines, and, if you&#8217;re lucky maybe shorten the variable names.  YUICompressor one-ups [...]]]></description>
		<link>http://involution.com/2009/06/18/using-yuicompressor-with-capistrano-and-rails-2-3-on-combined-javascript-and-css/</link>
			</item>
	<item>
		<title>Panasonic TZ5 HDRs</title>
		<description><![CDATA[For being such a small camera, the Panasonic TZ5 does a pretty decent of job shooting bracketed images.  Bracketing is where you shoot three differently exposed shots and then use software like Photoshop CS4 or Photomatix Pro to blend them together to produce a high-dynamic range (HDR) photograph.  Over the past year, I&#8217;ve [...]]]></description>
		<link>http://involution.com/2009/06/15/panasonic-tz5-hdrs/</link>
			</item>
	<item>
		<title>Using Phusion Passenger with HAProxy</title>
		<description><![CDATA[Today I decided to turn on HAProxy to load-balance between Apache instances running Phusion Passenger on two separate machines.  The results are clear.  Doing this nearly doubled our ApacheBench throughput scores.
This config was adaped from the 37Signals blog post here.
# /etc/haproxy/haproxy.cfg
global
        maxconn 4096

defaults
    [...]]]></description>
		<link>http://involution.com/2009/02/25/using-phusion-passenger-with-haproxy/</link>
			</item>
	<item>
		<title>Chaining Named Scopes</title>
		<description><![CDATA[There aren&#8217;t many examples of how to combine named_scopes programmatically on the ol&#8217; Blogosphere these days.  All I could find were a few scant references to using anonymous scopes like this.  It took me quite a while to figure this out which is surprising since this use case seems like such a common [...]]]></description>
		<link>http://involution.com/2008/11/10/chaining-named-scopes/</link>
			</item>
	<item>
		<title>Converting a char* to a hexadecimal char* using C</title>
		<description><![CDATA[Back when I used to work on microprocessors, I would find an infinity of half-working hex-to-decimal converters lurking around in various C repositories.  At first glance, it&#8217;s such a trivial function to write.  Often, in a vain effort to &#8220;keep it simple&#8221;, programmers go off half-cocked and partially implement another bad version snprintf [...]]]></description>
		<link>http://involution.com/2008/09/16/converting-a-char-to-a-hexadecimal-char-using-c/</link>
			</item>
	<item>
		<title>Using Ruby on Rails&#8217; View Helpers To Create a Javascript Form Reset Button</title>
		<description><![CDATA[Apparently, it is possible reset an entire form using Javascript from a button using the Rails form helpers.  Up until now, I&#8217;ve been sniffing the submit tag&#8217;s name in the controller and avoiding the save when posting an update.  The beauty of the Javascript form reset method is that it requires absolutely no [...]]]></description>
		<link>http://involution.com/2008/08/22/using-ruby-on-rails-form-helpers-to-create-a-javascript-form-reset-button/</link>
			</item>
	<item>
		<title>Persisting a Country Selection in Rails Using country_select</title>
		<description><![CDATA[Rails&#8217; country_select form helper doesn&#8217;t accept a :selected option.  If a validation error occurs, you really don&#8217;t want to force the user to reselect a country.  However, there&#8217;s no documented way of persisting that data when re-rendering an unvalidated form.
Fortunately, the country_select helper accepts a parameter called priority_countries.  This exists so you [...]]]></description>
		<link>http://involution.com/2008/07/22/persisting-a-country-selection-in-rails-using-country_select/</link>
			</item>
	<item>
		<title>Monkeypatching For Robots</title>
		<description><![CDATA[Even though Jeff Atwood believes that monkeypatching will lead to the apocalypse, I&#8217;ve discovered three cases where it has proven to be most useful.  
Case 1: Dynamically Patching a Plug-in
Let&#8217;s face it.  The Ruby on Rails wiki is littered with a cadre of unmaintained plugins.  One example is file_column.  Attachment_fu pretty [...]]]></description>
		<link>http://involution.com/2008/07/16/monkey-patching-for-robots/</link>
			</item>
	<item>
		<title>Malfeasance in 64-bit PowerPC MySQL Gem Compilation</title>
		<description><![CDATA[For the three people in the world building the Rails mysql gem on a PowerPC G5-based OS X Server with the 64-bit MySQL installed getting this crazy error:

lazy symbol binding failed: Symbol not found: _mysql_init

The magic ninja gem install command that will cure all your ills goes a little something like this:

sudo env ARCHFLAGS="-arch ppc64" [...]]]></description>
		<link>http://involution.com/2008/05/12/malfeasance-in-64-bit-powerpc-mysql-gem-compilation/</link>
			</item>
</channel>
</rss>

<!-- Dynamic Page Served (once) in 0.357 seconds -->
