<?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>Refactorings</title>
	<atom:link href="http://www.joelwickard.name/feed" rel="self" type="application/rss+xml" />
	<link>http://www.joelwickard.name</link>
	<description></description>
	<lastBuildDate>Thu, 27 Oct 2011 12:56:55 +0000</lastBuildDate>
	<language>en</language>
	<sy:updatePeriod>hourly</sy:updatePeriod>
	<sy:updateFrequency>1</sy:updateFrequency>
	<generator>http://wordpress.org/?v=3.2.1</generator>
		<item>
		<title>Rails Omniauth: OAuth::Unauthorized  401 Unauthorized</title>
		<link>http://www.joelwickard.name/364/rails-omniauth-oauthunauthorized-401-unauthorized.html</link>
		<comments>http://www.joelwickard.name/364/rails-omniauth-oauthunauthorized-401-unauthorized.html#comments</comments>
		<pubDate>Thu, 06 Oct 2011 18:42:23 +0000</pubDate>
		<dc:creator>jwickard</dc:creator>
				<category><![CDATA[Software]]></category>
		<category><![CDATA[Omniauth]]></category>
		<category><![CDATA[Rails]]></category>
		<category><![CDATA[Ruby]]></category>

		<guid isPermaLink="false">http://www.joelwickard.name/?p=364</guid>
		<description><![CDATA[I&#8217;m adding multiple authentications to a web app I am working on using Omniauth. I ran into an error early on with integrating twitter into my rails app. I followed along with the install instructions on the wiki, however when I hit the url: /auth/twitter which should have redirected me to the twitter oauth authorization [...]]]></description>
			<content:encoded><![CDATA[<p>I&#8217;m adding multiple authentications to a web app I am working on using <a href="https://github.com/intridea/omniauth" title="Omni Auth" target="_blank">Omniauth</a>.  I ran into an error early on with integrating twitter into my rails app.  </p>
<p>I followed along with the install instructions on the wiki, however when I hit the url: /auth/twitter which should have redirected me to the twitter oauth authorization page, I got the following:</p>
<p><a href="http://www.joelwickard.name/wp-content/uploads/2011/10/Screen-Shot-2011-10-06-at-1.37.47-PM.png"><img src="http://www.joelwickard.name/wp-content/uploads/2011/10/Screen-Shot-2011-10-06-at-1.37.47-PM-300x85.png" alt="" title="Screen Shot 2011-10-06 at 1.37.47 PM" width="300" height="85" class="alignnone size-medium wp-image-365" /></a></p>
<p>I searched the net and found many others getting the same error, but none of the suggestions for correction seemed to match the issue I was having.</p>
<p>Then I realized, the setup instructions on the omni auth wiki list the configuration as:</p>

<div class="wp_syntax"><div class="code"><pre class="ruby" style="font-family:monospace;">Rails.<span style="color:#9900CC;">application</span>.<span style="color:#9900CC;">config</span>.<span style="color:#9900CC;">middleware</span>.<span style="color:#9900CC;">use</span> <span style="color:#6666ff; font-weight:bold;">OmniAuth::Builder</span> <span style="color:#9966CC; font-weight:bold;">do</span>
  provider <span style="color:#ff3333; font-weight:bold;">:developer</span> <span style="color:#9966CC; font-weight:bold;">unless</span> Rails.<span style="color:#9900CC;">env</span>.<span style="color:#9900CC;">production</span>?
  provider <span style="color:#ff3333; font-weight:bold;">:twitter</span>, ENV<span style="color:#006600; font-weight:bold;">&#91;</span><span style="color:#996600;">'id'</span><span style="color:#006600; font-weight:bold;">&#93;</span>, ENV<span style="color:#006600; font-weight:bold;">&#91;</span><span style="color:#996600;">'secret'</span><span style="color:#006600; font-weight:bold;">&#93;</span>
<span style="color:#9966CC; font-weight:bold;">end</span></pre></div></div>

<p>When they should have been:</p>

<div class="wp_syntax"><div class="code"><pre class="ruby" style="font-family:monospace;">Rails.<span style="color:#9900CC;">application</span>.<span style="color:#9900CC;">config</span>.<span style="color:#9900CC;">middleware</span>.<span style="color:#9900CC;">use</span> <span style="color:#6666ff; font-weight:bold;">OmniAuth::Builder</span> <span style="color:#9966CC; font-weight:bold;">do</span>
  provider <span style="color:#ff3333; font-weight:bold;">:developer</span> <span style="color:#9966CC; font-weight:bold;">unless</span> Rails.<span style="color:#9900CC;">env</span>.<span style="color:#9900CC;">production</span>?
  provider <span style="color:#ff3333; font-weight:bold;">:twitter</span>, <span style="color:#996600;">'id'</span>, <span style="color:#996600;">'secret'</span>
<span style="color:#9966CC; font-weight:bold;">end</span></pre></div></div>

<p>I hope this helps someone else!</p>
]]></content:encoded>
			<wfw:commentRss>http://www.joelwickard.name/364/rails-omniauth-oauthunauthorized-401-unauthorized.html/feed</wfw:commentRss>
		<slash:comments>2</slash:comments>
		</item>
		<item>
		<title>New Relic with PHP-FPM</title>
		<link>http://www.joelwickard.name/357/new-relic-with-php-fpm.html</link>
		<comments>http://www.joelwickard.name/357/new-relic-with-php-fpm.html#comments</comments>
		<pubDate>Sun, 18 Sep 2011 20:35:20 +0000</pubDate>
		<dc:creator>jwickard</dc:creator>
				<category><![CDATA[Software]]></category>
		<category><![CDATA[New Relic]]></category>
		<category><![CDATA[PHP]]></category>
		<category><![CDATA[Symfony 2]]></category>

		<guid isPermaLink="false">http://www.joelwickard.name/?p=357</guid>
		<description><![CDATA[I&#8217;ve used new relic with my rails apps for over a year now and like the service a lot. I recently noticed that they have integration with php so I decided to get the php agent configured on my server so I could get stats on an upcoming symfony 2 app. I use Nginx / [...]]]></description>
			<content:encoded><![CDATA[<p>I&#8217;ve used <a href="http://newrelic.com/ign">new relic</a> with my rails apps for over a year now and like the service a lot.  I recently noticed that they have <a href="http://newrelic.com/php">integration with php</a> so I decided to get the php agent configured on my server so I could get stats on an upcoming <a href="http://symfony.com/">symfony 2</a> app.  </p>
<p>I use Nginx / PHP-fpm to run my php apps on ubuntu.  The install instructions on the new relic site worked pretty well except for one minor quirk.  </p>
<p>I had to install php5-dev so that the new relic install script had php-config to execute to find out information about my install.  After that, the install script kept complaining that it could not find a valid php install on the system.</p>
<p>With this particular setup, new relic would look for php in /usr/bin/php (from the php-config script) but that did not exist.  There was /usr/bin/php5-fpm and /usr/bin/php5-cgi.</p>
<p>I created a symlink for /usr/bin/php and reran the install script.</p>
<p>Success!</p>
]]></content:encoded>
			<wfw:commentRss>http://www.joelwickard.name/357/new-relic-with-php-fpm.html/feed</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Wednesday Morning</title>
		<link>http://www.joelwickard.name/345/wednesday-morning.html</link>
		<comments>http://www.joelwickard.name/345/wednesday-morning.html#comments</comments>
		<pubDate>Thu, 21 Oct 2010 03:16:46 +0000</pubDate>
		<dc:creator>jwickard</dc:creator>
				<category><![CDATA[My Crossfit WOD]]></category>

		<guid isPermaLink="false">http://www.joelwickard.name/?p=345</guid>
		<description><![CDATA[5 rounds of: 150m row 7 chest to bar pullups @ 160lbs 7 backsquat @ 135lbs 7 overhead press @ 160lbs]]></description>
			<content:encoded><![CDATA[<p><strong>5 rounds of:</strong></p>
<p>150m row<br />
7 chest to bar pullups @ 160lbs<br />
7 backsquat @ 135lbs<br />
7 overhead press @ 160lbs</p>
]]></content:encoded>
			<wfw:commentRss>http://www.joelwickard.name/345/wednesday-morning.html/feed</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Monday Morning</title>
		<link>http://www.joelwickard.name/343/monday-morning.html</link>
		<comments>http://www.joelwickard.name/343/monday-morning.html#comments</comments>
		<pubDate>Mon, 18 Oct 2010 14:45:48 +0000</pubDate>
		<dc:creator>jwickard</dc:creator>
				<category><![CDATA[My Crossfit WOD]]></category>

		<guid isPermaLink="false">http://www.joelwickard.name/?p=343</guid>
		<description><![CDATA[I started to drive into the gym and got halfway and realized I forgot my work clothes. Gah! Warmup 500m row Workout 2 rounds of: 20 pullups 30 bench press @ 100lbs 30 backsquat @ 85lbs 800m row]]></description>
			<content:encoded><![CDATA[<p>I started to drive into the gym and got halfway and realized I forgot my work clothes. Gah!</p>
<p><strong>Warmup</strong><br />
500m row</p>
<p><strong>Workout</strong><br />
2 rounds of:<br />
20 pullups<br />
30 bench press @ 100lbs<br />
30 backsquat @ 85lbs<br />
800m row</p>
]]></content:encoded>
			<wfw:commentRss>http://www.joelwickard.name/343/monday-morning.html/feed</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Thursday Morning!</title>
		<link>http://www.joelwickard.name/339/thursday-morning.html</link>
		<comments>http://www.joelwickard.name/339/thursday-morning.html#comments</comments>
		<pubDate>Thu, 14 Oct 2010 18:08:21 +0000</pubDate>
		<dc:creator>jwickard</dc:creator>
				<category><![CDATA[My Crossfit WOD]]></category>

		<guid isPermaLink="false">http://www.joelwickard.name/?p=339</guid>
		<description><![CDATA[Warm up: 500m row 50 Barbell Thrusters @ 40lbs 10 Pullups 40 Barbell Thrusters @ 40lbs 10 Pullups 30 Barbell Thrusters @ 40lbs 10 Pullups 20 Barbell Thrusters @ 40lbs 10 Pullups 10 Barbell Thrusters @ 40lbs]]></description>
			<content:encoded><![CDATA[<p>Warm up: 500m row</p>
<p>50 Barbell Thrusters @ 40lbs<br />
10 Pullups<br />
40 Barbell Thrusters @ 40lbs<br />
10 Pullups<br />
30 Barbell Thrusters @ 40lbs<br />
10 Pullups<br />
20 Barbell Thrusters @ 40lbs<br />
10 Pullups<br />
10 Barbell Thrusters @ 40lbs </p>
]]></content:encoded>
			<wfw:commentRss>http://www.joelwickard.name/339/thursday-morning.html/feed</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Rails Cache Sweeper And Controller / Action Callbacks</title>
		<link>http://www.joelwickard.name/315/rails-cache-sweeper-and-controller-action-callbacks.html</link>
		<comments>http://www.joelwickard.name/315/rails-cache-sweeper-and-controller-action-callbacks.html#comments</comments>
		<pubDate>Sat, 02 Oct 2010 15:08:49 +0000</pubDate>
		<dc:creator>jwickard</dc:creator>
				<category><![CDATA[Software]]></category>
		<category><![CDATA[Rails]]></category>

		<guid isPermaLink="false">http://www.joelwickard.name/?p=315</guid>
		<description><![CDATA[Recently I had a need to add action caching to a Rails app that contained a fair about of dynamic data, so required frequent expiration of cached fragments. There seemed to be plenty of information on creating Cache Sweepers that observed / implemented ActiveRecord callbacks (after_save, after_destroy etc&#8230;) but I could not find any good [...]]]></description>
			<content:encoded><![CDATA[<p>Recently I had a need to add action caching to a Rails app that contained a fair about of dynamic data, so required frequent expiration of cached fragments.</p>
<p>There seemed to be plenty of information on creating <a href="http://api.rubyonrails.org/classes/ActionController/Caching/Sweeping.html">Cache Sweepers</a> that observed / implemented ActiveRecord callbacks (after_save, after_destroy etc&#8230;) but I could not find any good examples of implementing callbacks in the CacheSweeper for controller methods / actions.</p>
<p>Here is a short example of how to implement callbacks / observe action methods in a CacheSweeper:</p>
<p>Example Controller:</p>

<div class="wp_syntax"><div class="code"><pre class="ruby" style="font-family:monospace;"><span style="color:#9966CC; font-weight:bold;">class</span> BusinessesController <span style="color:#006600; font-weight:bold;">&lt;</span> ApplicationController
  layout <span style="color:#996600;">'main'</span>
&nbsp;
  caches_action <span style="color:#ff3333; font-weight:bold;">:businesss_directory</span>, <span style="color:#ff3333; font-weight:bold;">:show</span>,
                 :<span style="color:#9966CC; font-weight:bold;">if</span> <span style="color:#006600; font-weight:bold;">=&gt;</span> <span style="color:#CC0066; font-weight:bold;">Proc</span>.<span style="color:#9900CC;">new</span> <span style="color:#006600; font-weight:bold;">&#123;</span> <span style="color:#006600; font-weight:bold;">|</span>controller<span style="color:#006600; font-weight:bold;">|</span> !controller.<span style="color:#9900CC;">user_authenticated</span>? <span style="color:#006600; font-weight:bold;">&#125;</span>, <span style="color:#ff3333; font-weight:bold;">:layout</span> <span style="color:#006600; font-weight:bold;">=&gt;</span> <span style="color:#0000FF; font-weight:bold;">false</span>
  cache_sweeper <span style="color:#ff3333; font-weight:bold;">:business_sweeper</span>, <span style="color:#ff3333; font-weight:bold;">:only</span> <span style="color:#006600; font-weight:bold;">=&gt;</span> <span style="color:#006600; font-weight:bold;">&#91;</span><span style="color:#ff3333; font-weight:bold;">:sort_images</span><span style="color:#006600; font-weight:bold;">&#93;</span>
&nbsp;
  <span style="color:#9966CC; font-weight:bold;">def</span> business_directory
    <span style="color:#008000; font-style:italic;">#... implement business directory action</span>
  <span style="color:#9966CC; font-weight:bold;">end</span>
&nbsp;
  <span style="color:#9966CC; font-weight:bold;">def</span> show
    <span style="color:#008000; font-style:italic;">#... implement show action</span>
  <span style="color:#9966CC; font-weight:bold;">end</span>
&nbsp;
  <span style="color:#9966CC; font-weight:bold;">def</span> sort_images
    <span style="color:#008000; font-style:italic;">#... implements resort action</span>
  <span style="color:#9966CC; font-weight:bold;">end</span>
<span style="color:#9966CC; font-weight:bold;">end</span></pre></div></div>

<p>So in my example, I want to observe the standard Business model as well as expire certain cache fragments when the sort_images method is called.</p>
<p>Let&#8217;s write a CacheSweeper implementation that will handle *both* for us.</p>

<div class="wp_syntax"><div class="code"><pre class="ruby" style="font-family:monospace;"><span style="color:#9966CC; font-weight:bold;">class</span> BusinessSweeper <span style="color:#006600; font-weight:bold;">&lt;</span> <span style="color:#6666ff; font-weight:bold;">ActionController::Caching::Sweeper</span>
  <span style="color:#008000; font-style:italic;">#this will allow us to implement active record callbacks</span>
  observe Business
&nbsp;
  <span style="color:#008000; font-style:italic;">#after active record create</span>
  <span style="color:#9966CC; font-weight:bold;">def</span> after_create<span style="color:#006600; font-weight:bold;">&#40;</span>business<span style="color:#006600; font-weight:bold;">&#41;</span>
    expire_cache_for<span style="color:#006600; font-weight:bold;">&#40;</span>business<span style="color:#006600; font-weight:bold;">&#41;</span>
    expire_directory_cache<span style="color:#006600; font-weight:bold;">&#40;</span>business<span style="color:#006600; font-weight:bold;">&#41;</span>
  <span style="color:#9966CC; font-weight:bold;">end</span>
&nbsp;
  <span style="color:#008000; font-style:italic;">#after active record update</span>
  <span style="color:#9966CC; font-weight:bold;">def</span> after_update<span style="color:#006600; font-weight:bold;">&#40;</span>business<span style="color:#006600; font-weight:bold;">&#41;</span>
    expire_cache_for<span style="color:#006600; font-weight:bold;">&#40;</span>business<span style="color:#006600; font-weight:bold;">&#41;</span>
    expire_directory_cache<span style="color:#006600; font-weight:bold;">&#40;</span>business<span style="color:#006600; font-weight:bold;">&#41;</span>
  <span style="color:#9966CC; font-weight:bold;">end</span>
&nbsp;
  <span style="color:#008000; font-style:italic;">#after active record destroy</span>
  <span style="color:#9966CC; font-weight:bold;">def</span> after_destroy<span style="color:#006600; font-weight:bold;">&#40;</span>business<span style="color:#006600; font-weight:bold;">&#41;</span>
    expire_cache_for<span style="color:#006600; font-weight:bold;">&#40;</span>business<span style="color:#006600; font-weight:bold;">&#41;</span>
    expire_directory_cache<span style="color:#006600; font-weight:bold;">&#40;</span>business<span style="color:#006600; font-weight:bold;">&#41;</span>
  <span style="color:#9966CC; font-weight:bold;">end</span>
&nbsp;
  <span style="color:#008000; font-style:italic;">#Here we are going to observe / filter the controller action</span>
  <span style="color:#9966CC; font-weight:bold;">def</span> after_businesses_sort_images
    expire_cache_for<span style="color:#006600; font-weight:bold;">&#40;</span>assigns<span style="color:#006600; font-weight:bold;">&#40;</span><span style="color:#ff3333; font-weight:bold;">:business</span><span style="color:#006600; font-weight:bold;">&#41;</span><span style="color:#006600; font-weight:bold;">&#41;</span>
  <span style="color:#9966CC; font-weight:bold;">end</span>
&nbsp;
  private
&nbsp;
  <span style="color:#9966CC; font-weight:bold;">def</span> expire_cache_for<span style="color:#006600; font-weight:bold;">&#40;</span>business<span style="color:#006600; font-weight:bold;">&#41;</span>
    expire_action<span style="color:#006600; font-weight:bold;">&#40;</span>business_url<span style="color:#006600; font-weight:bold;">&#40;</span>business<span style="color:#006600; font-weight:bold;">&#41;</span><span style="color:#006600; font-weight:bold;">&#41;</span>
  <span style="color:#9966CC; font-weight:bold;">end</span>
&nbsp;
  <span style="color:#9966CC; font-weight:bold;">def</span> expire_directory_cache<span style="color:#006600; font-weight:bold;">&#40;</span>business<span style="color:#006600; font-weight:bold;">&#41;</span>
    expire_action<span style="color:#006600; font-weight:bold;">&#40;</span>business_directory_url<span style="color:#006600; font-weight:bold;">&#40;</span>business<span style="color:#006600; font-weight:bold;">&#41;</span><span style="color:#006600; font-weight:bold;">&#41;</span>
  <span style="color:#9966CC; font-weight:bold;">end</span>
<span style="color:#9966CC; font-weight:bold;">end</span></pre></div></div>

<p>In order to filter / observe the action on the controller we just need to include the controller name before the action name.  If we want to reference any instance variables assigned inside the action, such as @business,  we can use the assigns() method to get a handle on them.</p>
<p>It&#8217;s that easy!</p>
]]></content:encoded>
			<wfw:commentRss>http://www.joelwickard.name/315/rails-cache-sweeper-and-controller-action-callbacks.html/feed</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>It&#8217;s A Gas!</title>
		<link>http://www.joelwickard.name/313/its-a-gas.html</link>
		<comments>http://www.joelwickard.name/313/its-a-gas.html#comments</comments>
		<pubDate>Wed, 30 Jun 2010 23:53:25 +0000</pubDate>
		<dc:creator>jwickard</dc:creator>
				<category><![CDATA[My Crossfit WOD]]></category>

		<guid isPermaLink="false">http://www.joelwickard.name/?p=313</guid>
		<description><![CDATA[Today I wanted to try something new so I did a modified endurance / grappling circuit I saw Randy Couture do during his training: Original workout was done with a bar @ 95lbs, I used 2 35lb kettle bells. The goal is to do whatever weight is manageable to you to do all six sets [...]]]></description>
			<content:encoded><![CDATA[<p>Today I wanted to try something new so I did a modified endurance / grappling circuit I saw Randy Couture do during his training:</p>
<p>Original workout was done with a bar @ 95lbs, I used 2 35lb kettle bells.  The goal is to do whatever weight is manageable to you to do all six sets and all 8 reps per station.</p>
<p>8 Bent Rows<br />
8 Erect Rows from hanging position<br />
8 Military Press<br />
8 Good Mornings (shoulder rack the weight)<br />
8 Lunges each leg (dead hang)<br />
8 back squats with immediate push press (2 motions, not a thruster for extra gassing.)<br />
8 dead lifts</p>
<p>X 6 with a 1 minute rest in between.</p>
<p>Now here&#8217;s the gas! Your goal is to not put your weight down for the entire set. rest as much as you need, but don&#8217;t put the weight down.</p>
<p>Have fun!</p>
]]></content:encoded>
			<wfw:commentRss>http://www.joelwickard.name/313/its-a-gas.html/feed</wfw:commentRss>
		<slash:comments>1</slash:comments>
		</item>
		<item>
		<title>? W.O.D.</title>
		<link>http://www.joelwickard.name/311/w-o-d.html</link>
		<comments>http://www.joelwickard.name/311/w-o-d.html#comments</comments>
		<pubDate>Mon, 28 Jun 2010 14:39:05 +0000</pubDate>
		<dc:creator>admin</dc:creator>
				<category><![CDATA[My Crossfit WOD]]></category>

		<guid isPermaLink="false">http://www.joelwickard.name/?p=311</guid>
		<description><![CDATA[5 rounds of: 10 Double KettleBell thrusters w/ 35lb bells 10 Double Kettlebell Bent Rows w/ 35lb bells 10 Pushups 10 situps 10 Double Kettlebell SDHP w/ 35lb bells]]></description>
			<content:encoded><![CDATA[<p>5 rounds of:</p>
<p>10 Double KettleBell thrusters w/ 35lb bells<br />
10 Double Kettlebell Bent Rows  w/ 35lb bells<br />
10 Pushups<br />
10 situps<br />
10 Double Kettlebell SDHP w/ 35lb bells</p>
]]></content:encoded>
			<wfw:commentRss>http://www.joelwickard.name/311/w-o-d.html/feed</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>iPhone Upgrade</title>
		<link>http://www.joelwickard.name/309/iphone-upgrade.html</link>
		<comments>http://www.joelwickard.name/309/iphone-upgrade.html#comments</comments>
		<pubDate>Tue, 22 Jun 2010 16:40:57 +0000</pubDate>
		<dc:creator>admin</dc:creator>
				<category><![CDATA[Thoughts]]></category>

		<guid isPermaLink="false">http://www.joelwickard.name/?p=309</guid>
		<description><![CDATA[So last night I upgraded my iphone to the new OS4. I have a 3gs. I basically expected something to go wrong with the update, but it turned out to be a non-event. Everything went perfectly smooth on the upgrade. New Awesome Features Really didn&#8217;t notice much here either. Now my wallpaper is visible all [...]]]></description>
			<content:encoded><![CDATA[<p>So last night I upgraded my iphone to the new OS4.  I have a 3gs.</p>
<p>I basically expected something to go wrong with the update, but it turned out to be a non-event.</p>
<p>Everything went perfectly smooth on the upgrade.</p>
<h3>New Awesome Features</h3>
<p>Really didn&#8217;t notice much here either.  Now my wallpaper is visible all the time behind my phone icons and the icons &#8220;explode&#8221; outward when I suspend / initialize the screen.  Apparently none of the apps I use support running in the background, so it&#8217;s pretty much same experience for me!</p>
]]></content:encoded>
			<wfw:commentRss>http://www.joelwickard.name/309/iphone-upgrade.html/feed</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Look Ma!</title>
		<link>http://www.joelwickard.name/305/look-ma.html</link>
		<comments>http://www.joelwickard.name/305/look-ma.html#comments</comments>
		<pubDate>Thu, 06 May 2010 14:42:35 +0000</pubDate>
		<dc:creator>admin</dc:creator>
				<category><![CDATA[Thoughts]]></category>

		<guid isPermaLink="false">http://www.joelwickard.name/305/look-ma.html</guid>
		<description><![CDATA[I&#8217;m in the cloud!!]]></description>
			<content:encoded><![CDATA[<p>I&#8217;m in the cloud!!</p>
]]></content:encoded>
			<wfw:commentRss>http://www.joelwickard.name/305/look-ma.html/feed</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
	</channel>
</rss>

