<?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>SameShirtEveryDay.com &#187; Rails</title>
	<atom:link href="http://sameshirteveryday.com/category/rails/feed/" rel="self" type="application/rss+xml" />
	<link>http://sameshirteveryday.com</link>
	<description>Personal blog of the one called Alex Gorbatchev, from Toronto, Canada.</description>
	<lastBuildDate>Wed, 30 Dec 2009 20:00:32 +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>Missing &#8216;a&#8217; character on Windows with rspec and cucumber</title>
		<link>http://sameshirteveryday.com/2009/04/18/missing-a-character-on-windows-with-rspec-and-cucumber/</link>
		<comments>http://sameshirteveryday.com/2009/04/18/missing-a-character-on-windows-with-rspec-and-cucumber/#comments</comments>
		<pubDate>Sat, 18 Apr 2009 17:21:32 +0000</pubDate>
		<dc:creator>Alex Gorbatchev</dc:creator>
				<category><![CDATA[Rails]]></category>
		<category><![CDATA[Ruby]]></category>
		<category><![CDATA[Testing]]></category>
		<category><![CDATA[Web Development]]></category>
		<category><![CDATA[cucumber]]></category>
		<category><![CDATA[windows]]></category>

		<guid isPermaLink="false">http://sameshirteveryday.com/?p=190</guid>
		<description><![CDATA[Trying to get a windows rails environment going this morning I stumbled upon something interesting &#8211; all &#8216;a&#8217; characters were missing from cucumber and rspec output. This has something to do with UTF-8 encoding and there&#8217;s a ticket and wiki post on cucumber about it, but no solution that I found acceptable. Everything comes down [...]]]></description>
			<content:encoded><![CDATA[<p><img class="alignnone size-full wp-image-192" title="cucumber_a_characters_missing" src="http://sameshirteveryday.com/wp-content/uploads/2009/04/cucumber_a_characters_missing.png" alt="cucumber_a_characters_missing" width="800" height="127" /></p>
<p>Trying to get a windows rails environment going this morning I stumbled upon something interesting &#8211; all &#8216;a&#8217; characters were missing from cucumber and rspec output.</p>
<p>This has something to do with UTF-8 encoding and there&#8217;s a <a href="https://rspec.lighthouseapp.com/projects/16211/tickets/81-windows-all-the-a-characters-in-the-output-have-gone-on-strike">ticket</a> and <a href="http://wiki.github.com/aslakhellesoy/cucumber/troubleshooting">wiki post</a> on cucumber about it, but no solution that I found acceptable.</p>
<p>Everything comes down to having change encoding in the current cmd window. This is achieved via a simple call to <code>chcp 1252</code>, but nobody want&#8217;s to do this every time, right?</p>
<p>To get this executed automaticaly and without resorting to serious registry editing, simply add this line to your <code>cucmber.bat</code> and any other batch files that are exhibiting this problem. You can find <code>cucumber.bat</code> in your <code>/ruby/bin</code> folder.</p>
<p>Here&#8217;s what it looks like:</p>
<pre>chcp 1252
@ECHO OFF
IF NOT "%~f0" == "~f0" GOTO :WinNT
@"ruby.exe" "c:/ruby/bin/cucumber" %1 %2 %3 %4 %5 %6 %7 %8 %9
GOTO :EOF
:WinNT
@"ruby.exe" "%~dpn0" %*</pre>
]]></content:encoded>
			<wfw:commentRss>http://sameshirteveryday.com/2009/04/18/missing-a-character-on-windows-with-rspec-and-cucumber/feed/</wfw:commentRss>
		<slash:comments>10</slash:comments>
		</item>
		<item>
		<title>Quick 3rdRail overview in screenshots</title>
		<link>http://sameshirteveryday.com/2007/09/17/quick-3rdrail-overview-in-screenshots/</link>
		<comments>http://sameshirteveryday.com/2007/09/17/quick-3rdrail-overview-in-screenshots/#comments</comments>
		<pubDate>Mon, 17 Sep 2007 15:57:56 +0000</pubDate>
		<dc:creator>Alex Gorbatchev</dc:creator>
				<category><![CDATA[Rails]]></category>
		<category><![CDATA[Ruby]]></category>

		<guid isPermaLink="false">http://www.sameshirteveryday.com/2007/09/17/quick-3rdrail-overview/</guid>
		<description><![CDATA[Here&#8217;s a quick 3rdRail overview in screenshots (flickr required).]]></description>
			<content:encoded><![CDATA[<p><a href="http://www.flickr.com/photos/alexgorbatchev/sets/72157602047217390/detail/"><img src="http://farm2.static.flickr.com/1050/1397662916_02e9124ef1.jpg" alt="Code insight for a local class?" border="0" height="375" width="500" /></a></p>
<p>Here&#8217;s a quick <a href="http://www.flickr.com/photos/alexgorbatchev/sets/72157602047217390/detail/">3rdRail overview in screenshots</a> (flickr required).</p>
]]></content:encoded>
			<wfw:commentRss>http://sameshirteveryday.com/2007/09/17/quick-3rdrail-overview-in-screenshots/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>CodeGear releases 3rdRail, a Ruby and Rails IDE</title>
		<link>http://sameshirteveryday.com/2007/09/17/codegear-releases-3rdrail-a-ruby-and-rails-ide/</link>
		<comments>http://sameshirteveryday.com/2007/09/17/codegear-releases-3rdrail-a-ruby-and-rails-ide/#comments</comments>
		<pubDate>Mon, 17 Sep 2007 12:49:08 +0000</pubDate>
		<dc:creator>Alex Gorbatchev</dc:creator>
				<category><![CDATA[Rails]]></category>
		<category><![CDATA[Ruby]]></category>

		<guid isPermaLink="false">http://www.sameshirteveryday.com/2007/09/17/codegear-releases-3rdrail-a-ruby-ide/</guid>
		<description><![CDATA[CodeGear released 3rdRail this morning. A few highlights: Full Rails project support. Rails specific refactoring, ie renaming a method in a controller will update all references as well as link_to and rename the associated view file. Console with command completion. Integrated Gecko browser with request monitor, DOM source, CSS and JavaScript You can watch a [...]]]></description>
			<content:encoded><![CDATA[<p><a href="http://www.flickr.com/photos/alexgorbatchev/sets/72157602047217390/detail/"><img src="http://farm2.static.flickr.com/1050/1397662916_02e9124ef1.jpg" alt="Code insight for a local class?" border="0" height="375" width="500" /></a></p>
<p><a href="http://www.codegear.com/article/36983">CodeGear released 3rdRail this morning</a>. A few highlights:</p>
<ul>
<li>Full Rails project support.</li>
<li>Rails specific refactoring, ie renaming a method in a controller will update all references as well as link_to and rename the associated view file.</li>
<li>Console with command completion.</li>
<li>Integrated Gecko browser with request monitor, DOM source, CSS and JavaScript</li>
</ul>
<p>You can watch a screen cast <a href="http://updates.codegear.com/3rdrail/sneakpeak/sneakpeak.html">here</a> and download a trial for Windows, Unix and OSX <a href="http://cc.codegear.com/trial/3rdrail">here</a>.</p>
<p>Here&#8217;s a quick <a href="http://www.flickr.com/photos/alexgorbatchev/sets/72157602047217390/detail/">3rdRail overview in screenshots</a> (flickr required).</p>
]]></content:encoded>
			<wfw:commentRss>http://sameshirteveryday.com/2007/09/17/codegear-releases-3rdrail-a-ruby-and-rails-ide/feed/</wfw:commentRss>
		<slash:comments>3</slash:comments>
		</item>
		<item>
		<title>dev_mode_performance_fixes</title>
		<link>http://sameshirteveryday.com/2007/08/29/dev_mode_performance_fixes/</link>
		<comments>http://sameshirteveryday.com/2007/08/29/dev_mode_performance_fixes/#comments</comments>
		<pubDate>Wed, 29 Aug 2007 13:07:26 +0000</pubDate>
		<dc:creator>Alex Gorbatchev</dc:creator>
				<category><![CDATA[Rails]]></category>

		<guid isPermaLink="false">http://www.sameshirteveryday.com/2007/08/29/dev_mode_performance_fixes/</guid>
		<description><![CDATA[dev_mode_performance_fixes plugin by Josh Goebel promises to speed up your Rails development server. THE PROBLEM So, what is the problem? It&#8217;s the fact that classes aren&#8217;t cached in development and that Rails insists on flushing them at the end of every request resulting in large chunks of your apps code having to be loaded, parsed, [...]]]></description>
			<content:encoded><![CDATA[<p><a href="http://svn.techno-weenie.net/projects/plugins/dev_mode_performance_fixes/">dev_mode_performance_fixes</a> plugin by <a href="http://www.workingwithrails.com/person/5337-josh-goebel">Josh Goebel</a> promises to speed up your Rails development server.</p>
<blockquote><p><em>THE PROBLEM</em></p>
<p><em>So, what is the problem?  It&#8217;s the fact that classes aren&#8217;t cached in development and that Rails insists on flushing them at the end of every request resulting in large chunks of your apps code having to be loaded, parsed, and reinterpreted for EVERY SINGLE request&#8230; which is SLOW.</em></p>
<p><em>THE IDEA</em></p>
<p><em>Why don&#8217;t we only reload the files when they have actually changed?  Store the file names and their last modified time and then stat all the files before every request&#8230; if any are newer, kill the objects they originally defined and let the Dependency auto-loading code reload the objects from disk.</em></p></blockquote>
<p><code>ruby script/plugin install <a href="http://svn.techno-weenie.net/projects/plugins/dev_mode_performance_fixes/">http://svn.techno-weenie.net/projects/plugins/dev_mode_performance_fixes/</a></code></p>
]]></content:encoded>
			<wfw:commentRss>http://sameshirteveryday.com/2007/08/29/dev_mode_performance_fixes/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Hello Facebook in Rails</title>
		<link>http://sameshirteveryday.com/2007/08/17/hello-facebook-in-rails/</link>
		<comments>http://sameshirteveryday.com/2007/08/17/hello-facebook-in-rails/#comments</comments>
		<pubDate>Sat, 18 Aug 2007 01:00:56 +0000</pubDate>
		<dc:creator>Alex Gorbatchev</dc:creator>
				<category><![CDATA[Rails]]></category>
		<category><![CDATA[Web Development]]></category>

		<guid isPermaLink="false">http://www.sameshirteveryday.com/2007/08/17/hello-facebook-in-rails/</guid>
		<description><![CDATA[I&#8217;ve signed up for Facebook today to check out how the whole application development works. Setting up a development server at home which is accessible from Facebook is pretty straight forward. Here&#8217;s what you need: Facebook account Local box with Apache Domain name pointing to your home IP. I use No-Ip. Here are the steps [...]]]></description>
			<content:encoded><![CDATA[<p>I&#8217;ve signed up for Facebook today to check out how the whole application development works. Setting up a development server at home which is accessible from Facebook is pretty straight forward.</p>
<p>Here&#8217;s what you need:</p>
<ol>
<li>Facebook account</li>
<li>Local box with Apache</li>
<li>Domain name pointing to your home IP. I use <a href="http://www.no-ip.com">No-Ip</a>.</li>
</ol>
<p>Here are the steps I took.</p>
<ol>
<li>Setting up development application on Facebook. Follow <a href="http://developers.facebook.com/step_by_step.php">the guide</a>, it&#8217;s pretty straight forward.</li>
<li>Set up No-Ip to point <code>*.dev.mydomain.com</code> to my local box. This allows me to create as many Rails applications as I need to.</li>
<li>Configured Apache to forward all calls to <code>fbtest.dev.mydomain.com</code> to <code>localhost:3000</code> using <a href="http://httpd.apache.org/docs/2.0/mod/mod_proxy.html">mod_proxy</a> like so:
<pre name="code" class="xml">&lt;VirtualHost *:80&gt;
  ServerName fbtest.dev.mydomain.com
  ProxyPass / http://127.0.0.1:3000/
&lt;/VirtualHost&gt;</pre>
</li>
<li><code>gem install rfacebook</code></li>
<li><code>cd /anywhere/fbtest</code></li>
<li><code>rails .</code></li>
<li><code>ruby script/plugin install svn://rubyforge.org/var/svn/rfacebook/plugins/rfacebook_on_rails</code></li>
<li><code>rake facebook:setup</code></li>
<li>Go to <a href="http://www.facebook.com/developers/apps.php">http://www.facebook.com/developers/apps.php</a></li>
<li>Copy and paste API key and secret to <code>config/facebook.yml</code>. Set <code>canvas_path</code> to the local path on Facebook, ie <code>/myfacebookapp/</code> and <code>callback_path</code> to local path on your server, ie <code>/facebook/</code>.</li>
<li><code>ruby script/generate controller facebook index</code></li>
<li>Edit index method in Facebook controller, like so:
<pre name="code" class="ruby">
class FacebookController &lt; ApplicationController
  def index
    @result = fbsession.friends_get.uid_list
  end
end</pre>
</li>
<li>Edit index.rhtml like so:
<pre name="code" class="xml">&lt;% @result.each do |uid| %&gt;
  &lt;fb:name uid="&lt;%= uid %&gt;" /&gt;
&lt;% end %&gt;</pre>
</li>
<li>Start Apache</li>
<li><code>ruby script/server</code></li>
<li>Now you should be able to hit your Facebook application page at <code>http://apps.facebook.com/myfacebookapp</code></li>
</ol>
<p>You should see a list of your friends. Took me about 30 minutes to figure all this out.</p>
]]></content:encoded>
			<wfw:commentRss>http://sameshirteveryday.com/2007/08/17/hello-facebook-in-rails/feed/</wfw:commentRss>
		<slash:comments>12</slash:comments>
		</item>
		<item>
		<title>Getting acts_as_taggable gem to work</title>
		<link>http://sameshirteveryday.com/2007/06/20/getting-acts_as_taggable-gem-to-work/</link>
		<comments>http://sameshirteveryday.com/2007/06/20/getting-acts_as_taggable-gem-to-work/#comments</comments>
		<pubDate>Wed, 20 Jun 2007 13:59:53 +0000</pubDate>
		<dc:creator>Alex Gorbatchev</dc:creator>
				<category><![CDATA[Rails]]></category>

		<guid isPermaLink="false">http://www.sameshirteveryday.com/2007/06/20/getting-acts_as_taggable-gem-to-work/</guid>
		<description><![CDATA[require 'taggable' Now you can use acts_as_taggable without any warnings. While this may seem obvious to many here, I hope it prevents the waste of a couple hours to a few other newbies thus my post. Source. Definitely saved me time.]]></description>
			<content:encoded><![CDATA[<blockquote><p><code>require 'taggable'</code></p>
<p><em>Now you can use acts_as_taggable without any warnings. While this may seem obvious to many here, I hope it prevents the waste of a couple hours to a few other newbies thus my post.</em></p></blockquote>
<p><a href="http://blade.nagaokaut.ac.jp/cgi-bin/scat.rb/ruby/ruby-talk/235019">Source</a>. Definitely saved me time.</p>
]]></content:encoded>
			<wfw:commentRss>http://sameshirteveryday.com/2007/06/20/getting-acts_as_taggable-gem-to-work/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>find_by_sql() custom columnts trick</title>
		<link>http://sameshirteveryday.com/2007/06/18/find_by_sql-custom-columnts-trick/</link>
		<comments>http://sameshirteveryday.com/2007/06/18/find_by_sql-custom-columnts-trick/#comments</comments>
		<pubDate>Tue, 19 Jun 2007 03:56:04 +0000</pubDate>
		<dc:creator>Alex Gorbatchev</dc:creator>
				<category><![CDATA[Rails]]></category>
		<category><![CDATA[Ruby]]></category>

		<guid isPermaLink="false">http://www.sameshirteveryday.com/2007/06/18/find_by_sql-custom-columnts-trick/</guid>
		<description><![CDATA[Just stumbled on the fact that ActiveRecord automatically creates properties for all column in a SQL query, not just those in the table. Model.find_by_sql("SELECT *, COUNT(*) AS rank FROM ...").each do &#124;item&#124; puts "%s (%d)" % [item.name, item.rank] end]]></description>
			<content:encoded><![CDATA[<p>Just stumbled on the fact that ActiveRecord automatically creates properties for all column in a SQL query, not just those in the table.</p>
<pre name="code" class="ruby">Model.find_by_sql("SELECT *, COUNT(*) AS rank FROM ...").each do |item|
  puts "%s (%d)" % [item.name, item.rank]
end</pre>
]]></content:encoded>
			<wfw:commentRss>http://sameshirteveryday.com/2007/06/18/find_by_sql-custom-columnts-trick/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>ActiveRecord associations without primary keys?</title>
		<link>http://sameshirteveryday.com/2007/06/18/activerecord-associations-without-primary-keys/</link>
		<comments>http://sameshirteveryday.com/2007/06/18/activerecord-associations-without-primary-keys/#comments</comments>
		<pubDate>Mon, 18 Jun 2007 16:31:21 +0000</pubDate>
		<dc:creator>Alex Gorbatchev</dc:creator>
				<category><![CDATA[Rails]]></category>

		<guid isPermaLink="false">http://www.sameshirteveryday.com/2007/06/18/activerecord-associations-without-primary-keys/</guid>
		<description><![CDATA[I&#8217;ve looked low and high for this feature in ActiveRecord but can&#8217;t seem to find a solution. What I need is ability to specify associations by a column other than a primary key. For example: create_table :nodes do &#124;t&#124; t.column :parent_id, :integer t.column :uid, :string, :limit =&#62; 32 end create_table :info do &#124;t&#124; t.column :uid, [...]]]></description>
			<content:encoded><![CDATA[<p>I&#8217;ve looked low and high for this feature in ActiveRecord but can&#8217;t seem to find a solution.</p>
<p>What I need is ability to specify associations by a column other than a primary key. For example:</p>
<pre name="code" class="ruby">create_table :nodes do |t|
  t.column :parent_id,        :integer
  t.column :uid,              :string,    :limit =&gt; 32
end

create_table :info do |t|
  t.column :uid,         :string, :limit =&gt; 32
  t.column :formatted,   :text
end

class Node &lt; ActiveRecord::Base
  acts_as_tree
  has_many :info, :foreign_key =&gt; :uid, :primary_key =&gt; :uid
end

class Info &lt; ActiveRecord::Base
  belongs_to :node, :foreign_key =&gt; :uid, :primary_key =&gt; :uid
end</pre>
<p>As you can see, I&#8217;ve used a made up <code>:primary_key</code> option to indicate which key column should be used. <code>set_primary_key</code> isn&#8217;t a good option here because UID column is for lose association and it isn&#8217;t a primary key.</p>
<p>Is this at all possible in Rails 1.2.3? Unfortunately my Rails core knowledge is very limited at this point and I wouldn&#8217;t be able to add this feature myself.</p>
]]></content:encoded>
			<wfw:commentRss>http://sameshirteveryday.com/2007/06/18/activerecord-associations-without-primary-keys/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Leaving Mediatemple for Dreamhost</title>
		<link>http://sameshirteveryday.com/2007/06/07/leaving-mediatemple-for-dreamhost/</link>
		<comments>http://sameshirteveryday.com/2007/06/07/leaving-mediatemple-for-dreamhost/#comments</comments>
		<pubDate>Fri, 08 Jun 2007 03:55:28 +0000</pubDate>
		<dc:creator>Alex Gorbatchev</dc:creator>
				<category><![CDATA[Noobkit]]></category>
		<category><![CDATA[Rails]]></category>

		<guid isPermaLink="false">http://www.sameshirteveryday.com/2007/06/07/leaving-mediatemple-for-dreamhost/</guid>
		<description><![CDATA[So I&#8217;m really pissed with Mediatemple. Not only it&#8217;s not the fastest dog on the block, especially the backend, they consistently kept shutting down Noobkit 5-8 times a day. Mediatemple allocates 64MB of RAM for a Mongrel instance, which is fine. If your app goes over, they just shut Mongrel down, automatically&#8230; without restarting it. [...]]]></description>
			<content:encoded><![CDATA[<p>So I&#8217;m really pissed with Mediatemple.</p>
<p>Not only it&#8217;s not the fastest dog on the block, especially the backend, they consistently kept shutting down <a href="http://www.noobkit.com">Noobkit</a> 5-8 times a day.</p>
<p>Mediatemple allocates 64MB of RAM for a Mongrel instance, which is fine. If your app goes over, they just shut Mongrel down, automatically&#8230; without restarting it. So I&#8217;m getting an SMS from <a href="http://www.pingdom.com/">Pingdom</a> at 3AM telling me that the site is down and I have to go &#8220;cap restart&#8221; it.</p>
<p>Noobkit is a very small site currently and only been up and running for just over 10 days with barely 200 uniques a day. There&#8217;s absolutely no way Mongrel can tip over 64MB with this type of load. I tried running a production Mogrel locally and pound it with Apache&#8217;s AB. After 10,000 hits I&#8217;m seeing 45MB of RAM.</p>
<p>Response from Mediatemple to my question about frequent Mongrel shutdowns was as expected:</p>
<blockquote>
<p class="MsoPlainText">After reviewing our records, I was able to confirm that it has been shutting down repeatedly. However, testing it live versus on another system will not necessarily be an accurate estimate. You will either need to debug your application, or increase your container to another a larger server.</p>
</blockquote>
<p class="MsoPlainText">So yesterday I found a no-registration coupon and got myself an account at DreamHost. Moving the blog was a peace of cake. Setting up Capistrano was pretty easy as well and the DNS should be updated overnight.</p>
<p class="MsoPlainText">At first, DreamHost seems much snappier. We&#8217;ll see how it works out.</p>
]]></content:encoded>
			<wfw:commentRss>http://sameshirteveryday.com/2007/06/07/leaving-mediatemple-for-dreamhost/feed/</wfw:commentRss>
		<slash:comments>1</slash:comments>
		</item>
		<item>
		<title>open_id_authentication</title>
		<link>http://sameshirteveryday.com/2007/06/06/open_id_authentication/</link>
		<comments>http://sameshirteveryday.com/2007/06/06/open_id_authentication/#comments</comments>
		<pubDate>Wed, 06 Jun 2007 05:18:35 +0000</pubDate>
		<dc:creator>Alex Gorbatchev</dc:creator>
				<category><![CDATA[Rails]]></category>

		<guid isPermaLink="false">http://www.sameshirteveryday.com/2007/06/06/open_id_authentication/</guid>
		<description><![CDATA[As always folks, all good ideas come to you right after your release the bad once. After writing and making my user registration all pretty for Noobkit, I realized today, about 12 hours after release, that it would&#8217;ve been much easier and better if were to just use Open ID. Having looked around for a [...]]]></description>
			<content:encoded><![CDATA[<p>As always folks, all good ideas come to you right after your release the bad once.</p>
<p>After writing and making my user registration all pretty for <a href="http://www.noobkit.com">Noobkit</a>, I realized today, about 12 hours after release, that it would&#8217;ve been much easier and better if were to just use <a href="http://www.openid.org">Open ID</a>.</p>
<p>Having looked around for a decent acts_as_open_id_user_and_does_everything_else plugin, the only thing I found was <a href="http://svn.rubyonrails.org/rails/plugins/open_id_authentication/">this shameful attempt</a> by none other than the DHH himself.</p>
<p>I don&#8217;t know if he was high when he submitted it because it&#8217;s just horrible. Never mind the fact that it doesn&#8217;t run at all and code has syntax errors. Methods that are called just once, strange object/result/message bubbling and integration with user models which are never mentioned anywhere except on the error pages. Worst of all, it actually extends ApplicationController. Do I really need Open ID authentication methods in every single controller? Where&#8217;s all the prettiness and tidiness?</p>
<p>Well, I brought my own bag of said &#8220;prettiness and tidiness&#8221;. The result is my own <a href="http://code.google.com/p/open-id-authentication/">open_id_authentication</a> plugin. I&#8217;ve cleaned up the code, made it a regular module to be included in a model and split up spaghetti dual purpose method into two simple methods. One to be called to start Open ID authentication process and the second one to process response from the Open ID server.</p>
<p>Next time, when I learn how to create generators in plugins I will add some nice model generation. For now, it&#8217;s completely decoupled from the user model.</p>
<p>Enjoy!</p>
]]></content:encoded>
			<wfw:commentRss>http://sameshirteveryday.com/2007/06/06/open_id_authentication/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
	</channel>
</rss>

