<?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>The If Works &#187; Rails</title>
	<atom:link href="http://blog.jcoglan.com/category/rails/feed/" rel="self" type="application/rss+xml" />
	<link>http://blog.jcoglan.com</link>
	<description>This dirt was a building before</description>
	<lastBuildDate>Mon, 19 Jul 2010 07:46:12 +0000</lastBuildDate>
	<language>en</language>
	<sy:updatePeriod>hourly</sy:updatePeriod>
	<sy:updateFrequency>1</sy:updateFrequency>
	<generator>http://wordpress.org/?v=3.0.1-alpha-15443</generator>
		<item>
		<title>Cross-process metaprogramming on the cheap</title>
		<link>http://blog.jcoglan.com/2010/01/14/cross-process-metaprogramming-on-the-cheap/</link>
		<comments>http://blog.jcoglan.com/2010/01/14/cross-process-metaprogramming-on-the-cheap/#comments</comments>
		<pubDate>Thu, 14 Jan 2010 01:30:33 +0000</pubDate>
		<dc:creator>James Coglan</dc:creator>
				<category><![CDATA[JavaScript]]></category>
		<category><![CDATA[Metaprogramming]]></category>
		<category><![CDATA[Rails]]></category>
		<category><![CDATA[Ruby]]></category>
		<category><![CDATA[Testing]]></category>

		<guid isPermaLink="false">http://blog.jcoglan.com/?p=503</guid>
		<description><![CDATA[I will preface my first post of the new decade by saying: this is not by any means elegant. It&#8217;s an egregious hack, but it may come in handy for those of you using Culerity for testing your Rails front-end using JavaScript. This is not so much about JavaScript as about dealing with the multitude [...]]]></description>
		<wfw:commentRss>http://blog.jcoglan.com/2010/01/14/cross-process-metaprogramming-on-the-cheap/feed/</wfw:commentRss>
		<slash:comments>1</slash:comments>
		</item>
		<item>
		<title>Getting started with Cucumber, RSpec, Webrat and multiruby</title>
		<link>http://blog.jcoglan.com/2009/10/03/getting-started-with-cucumber-rspec-webrat-and-multiruby/</link>
		<comments>http://blog.jcoglan.com/2009/10/03/getting-started-with-cucumber-rspec-webrat-and-multiruby/#comments</comments>
		<pubDate>Sat, 03 Oct 2009 13:24:47 +0000</pubDate>
		<dc:creator>James Coglan</dc:creator>
				<category><![CDATA[Metaprogramming]]></category>
		<category><![CDATA[Rails]]></category>
		<category><![CDATA[Ruby]]></category>
		<category><![CDATA[Testing]]></category>

		<guid isPermaLink="false">http://blog.jcoglan.com/?p=410</guid>
		<description><![CDATA[.cuke-pass { color: #4e9a06; } .cuke-fail { color: #d73734; } .cuke-pending { color: #c4a000; } .cuke-skipped { color: #06989a; } After a couple years off from full-time Ruby/Rails work, I&#8217;m getting back into it having just joined the development team at Songkick. Much as I&#8217;ve tried to keep my hand in with the Ruby world [...]]]></description>
		<wfw:commentRss>http://blog.jcoglan.com/2009/10/03/getting-started-with-cucumber-rspec-webrat-and-multiruby/feed/</wfw:commentRss>
		<slash:comments>6</slash:comments>
		</item>
		<item>
		<title>Consent updates: Rails 2.3 compatibility, request expressions every which way</title>
		<link>http://blog.jcoglan.com/2009/05/09/consent-updates-rails-23-compatibility-request-expressions-every-which-way/</link>
		<comments>http://blog.jcoglan.com/2009/05/09/consent-updates-rails-23-compatibility-request-expressions-every-which-way/#comments</comments>
		<pubDate>Sat, 09 May 2009 19:50:49 +0000</pubDate>
		<dc:creator>James Coglan</dc:creator>
				<category><![CDATA[Consent]]></category>
		<category><![CDATA[Rails]]></category>
		<category><![CDATA[Ruby]]></category>

		<guid isPermaLink="false">http://blog.jcoglan.com/?p=306</guid>
		<description><![CDATA[A brief note to point out some changes I made to Consent, my access control DSL for Rails. I&#8217;ve been doing some Rails development for the first time in a few months and ran into some things that needed changing. First up, it seems Rails 2.3 uses application_controller.rb rather than application.rb for the root controller [...]]]></description>
		<wfw:commentRss>http://blog.jcoglan.com/2009/05/09/consent-updates-rails-23-compatibility-request-expressions-every-which-way/feed/</wfw:commentRss>
		<slash:comments>1</slash:comments>
		</item>
		<item>
		<title>Consent: a little firewall DSL for your Rails app</title>
		<link>http://blog.jcoglan.com/2009/01/03/consent-a-little-firewall-dsl-for-your-rails-app/</link>
		<comments>http://blog.jcoglan.com/2009/01/03/consent-a-little-firewall-dsl-for-your-rails-app/#comments</comments>
		<pubDate>Sat, 03 Jan 2009 17:13:06 +0000</pubDate>
		<dc:creator>James Coglan</dc:creator>
				<category><![CDATA[Consent]]></category>
		<category><![CDATA[Functional]]></category>
		<category><![CDATA[Metaprogramming]]></category>
		<category><![CDATA[Rails]]></category>
		<category><![CDATA[Ruby]]></category>

		<guid isPermaLink="false">http://blog.jcoglan.com/?p=188</guid>
		<description><![CDATA[Well, it&#8217;s been a couple of months. Rest assured I&#8217;ve still been hacking away; JS.Class will be getting hashes and constants at some point in the future, I&#8217;ve got a bunch of improvements to make on Bluff, and I&#8217;ve been contributing to PDoc which is a really promising JavaScript doc engine from Tobie Langel that [...]]]></description>
		<wfw:commentRss>http://blog.jcoglan.com/2009/01/03/consent-a-little-firewall-dsl-for-your-rails-app/feed/</wfw:commentRss>
		<slash:comments>1</slash:comments>
		</item>
		<item>
		<title>Another super-tiny Rails plugin: classy_inputs</title>
		<link>http://blog.jcoglan.com/2008/05/18/another-super-tiny-rails-plugin-classy_inputs/</link>
		<comments>http://blog.jcoglan.com/2008/05/18/another-super-tiny-rails-plugin-classy_inputs/#comments</comments>
		<pubDate>Sun, 18 May 2008 10:04:52 +0000</pubDate>
		<dc:creator>James Coglan</dc:creator>
				<category><![CDATA[Rails]]></category>
		<category><![CDATA[Ruby]]></category>

		<guid isPermaLink="false">http://blog.jcoglan.com/?p=105</guid>
		<description><![CDATA[Good lord do I ever hate input tags. (YUI hates them too, but I&#8217;ll leave that story for another time). All the different types should really have been different tag names, and they are a total pain to use with CSS. As such, I used to end up doing tedious stuff like adding a :class [...]]]></description>
		<wfw:commentRss>http://blog.jcoglan.com/2008/05/18/another-super-tiny-rails-plugin-classy_inputs/feed/</wfw:commentRss>
		<slash:comments>8</slash:comments>
		</item>
		<item>
		<title>Tiny Sunday coding project: has_password</title>
		<link>http://blog.jcoglan.com/2008/05/11/tiny-sunday-coding-project-has_password/</link>
		<comments>http://blog.jcoglan.com/2008/05/11/tiny-sunday-coding-project-has_password/#comments</comments>
		<pubDate>Sun, 11 May 2008 15:45:56 +0000</pubDate>
		<dc:creator>James Coglan</dc:creator>
				<category><![CDATA[Rails]]></category>
		<category><![CDATA[Ruby]]></category>

		<guid isPermaLink="false">http://blog.jcoglan.com/?p=103</guid>
		<description><![CDATA[Just a little announcement about something I cooked up this afternoon. It&#8217;s nothing ground-breaking but might save you a little time. Basically, I was getting super-tired of writing the same authentication code for every project so I extracted it into a plugin called has_password. Install like so: ruby script/plugin install git://github.com/jcoglan/has_password Now, this plugin is [...]]]></description>
		<wfw:commentRss>http://blog.jcoglan.com/2008/05/11/tiny-sunday-coding-project-has_password/feed/</wfw:commentRss>
		<slash:comments>2</slash:comments>
		</item>
		<item>
		<title>Quick and dirty icons in ActionView</title>
		<link>http://blog.jcoglan.com/2008/03/25/quick-and-dirty-icons-in-actionview/</link>
		<comments>http://blog.jcoglan.com/2008/03/25/quick-and-dirty-icons-in-actionview/#comments</comments>
		<pubDate>Tue, 25 Mar 2008 19:22:12 +0000</pubDate>
		<dc:creator>James Coglan</dc:creator>
				<category><![CDATA[Metaprogramming]]></category>
		<category><![CDATA[Rails]]></category>
		<category><![CDATA[Ruby]]></category>

		<guid isPermaLink="false">http://blog.jcoglan.com/2008/03/25/quick-and-dirty-icons-in-actionview/</guid>
		<description><![CDATA[Tiny tiny Rails tip: you can use method_missing to make using icon sets easier when writing Rails views. Behold: module ApplicationHelper def method_missing(sym, *args) super unless sym.to_s =~ /_icon$/ image_tag("silk/#{sym.to_s.gsub(/_icon$/, '')}.png") end end Now the following call: &#60;%= pencil_icon %&#62; produces this image tag: &#60;img src="/images/silk/pencil.png" /&#62;]]></description>
		<wfw:commentRss>http://blog.jcoglan.com/2008/03/25/quick-and-dirty-icons-in-actionview/feed/</wfw:commentRss>
		<slash:comments>1</slash:comments>
		</item>
		<item>
		<title>On-demand thumbnails with Rails and rmagick</title>
		<link>http://blog.jcoglan.com/2008/03/23/on-demand-thumbnails-with-rails-and-rmagick/</link>
		<comments>http://blog.jcoglan.com/2008/03/23/on-demand-thumbnails-with-rails-and-rmagick/#comments</comments>
		<pubDate>Sun, 23 Mar 2008 12:46:32 +0000</pubDate>
		<dc:creator>James Coglan</dc:creator>
				<category><![CDATA[Rails]]></category>
		<category><![CDATA[Ruby]]></category>

		<guid isPermaLink="false">http://blog.jcoglan.com/2008/03/23/on-demand-thumbnails-with-rails-and-rmagick/</guid>
		<description><![CDATA[My, it&#8217;s been a while since I wrote a Rails tutorial. I&#8217;m going to come back from the land of esoteric JavaScript techniques for a minute and talk about something you might actually want to use in real life. Many people, when writing an app that uses image uploads in some way, like to generate [...]]]></description>
		<wfw:commentRss>http://blog.jcoglan.com/2008/03/23/on-demand-thumbnails-with-rails-and-rmagick/feed/</wfw:commentRss>
		<slash:comments>4</slash:comments>
		</item>
		<item>
		<title>Let&#8217;s get committed</title>
		<link>http://blog.jcoglan.com/2008/02/01/lets-get-committed/</link>
		<comments>http://blog.jcoglan.com/2008/02/01/lets-get-committed/#comments</comments>
		<pubDate>Fri, 01 Feb 2008 20:22:50 +0000</pubDate>
		<dc:creator>James Coglan</dc:creator>
				<category><![CDATA[Rails]]></category>
		<category><![CDATA[Ruby]]></category>

		<guid isPermaLink="false">http://blog.jcoglan.com/2008/02/01/lets-get-committed/</guid>
		<description><![CDATA[Right, I know I said I&#8217;d do this a long time ago, but I just got round to checking up on some of my Rails patches with the hopes of persuading one or two of you that they might be worth supporting and getting committed to the core. This post concerns a couple of patches [...]]]></description>
		<wfw:commentRss>http://blog.jcoglan.com/2008/02/01/lets-get-committed/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Announcing Holly</title>
		<link>http://blog.jcoglan.com/2008/01/07/announcing-holly/</link>
		<comments>http://blog.jcoglan.com/2008/01/07/announcing-holly/#comments</comments>
		<pubDate>Mon, 07 Jan 2008 03:13:45 +0000</pubDate>
		<dc:creator>James Coglan</dc:creator>
				<category><![CDATA[Holly]]></category>
		<category><![CDATA[JavaScript]]></category>
		<category><![CDATA[Rails]]></category>
		<category><![CDATA[Ruby]]></category>

		<guid isPermaLink="false">http://blog.jcoglan.com/2008/01/07/announcing-holly/</guid>
		<description><![CDATA[After some discussion at work about how to manage JavaScript dependencies in our CMS, I decided to write a quick Rails plugin for doing just that. It&#8217;s called Holly, and it lets you use special comments inside script and CSS files to declare their dependencies. Whenever you use javascript_include_tag or stylesheet_link_tag, Holly inspects the dependencies [...]]]></description>
		<wfw:commentRss>http://blog.jcoglan.com/2008/01/07/announcing-holly/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>PackR won&#8217;t touch your $supers</title>
		<link>http://blog.jcoglan.com/2007/12/13/packr-wont-touch-your-supers/</link>
		<comments>http://blog.jcoglan.com/2007/12/13/packr-wont-touch-your-supers/#comments</comments>
		<pubDate>Thu, 13 Dec 2007 21:06:49 +0000</pubDate>
		<dc:creator>James Coglan</dc:creator>
				<category><![CDATA[JavaScript]]></category>
		<category><![CDATA[PackR]]></category>
		<category><![CDATA[Prototype]]></category>
		<category><![CDATA[Rails]]></category>
		<category><![CDATA[Ruby]]></category>

		<guid isPermaLink="false">http://blog.jcoglan.com/2007/12/13/packr-wont-touch-your-supers/</guid>
		<description><![CDATA[Another quick update: PackR received an update today that means that when you use its :shrink_vars mode, it won&#8217;t minify any variables called $super. In Prototype, $super is used to implement inheritance and your class definitions will break if you change its name. I didn&#8217;t really want to make PackR inconsistent with Dean&#8217;s original, but [...]]]></description>
		<wfw:commentRss>http://blog.jcoglan.com/2007/12/13/packr-wont-touch-your-supers/feed/</wfw:commentRss>
		<slash:comments>1</slash:comments>
		</item>
		<item>
		<title>PackR gem now available</title>
		<link>http://blog.jcoglan.com/2007/12/05/packr-gem-now-available/</link>
		<comments>http://blog.jcoglan.com/2007/12/05/packr-gem-now-available/#comments</comments>
		<pubDate>Wed, 05 Dec 2007 00:17:28 +0000</pubDate>
		<dc:creator>James Coglan</dc:creator>
				<category><![CDATA[JavaScript]]></category>
		<category><![CDATA[PackR]]></category>
		<category><![CDATA[Rails]]></category>
		<category><![CDATA[Ruby]]></category>

		<guid isPermaLink="false">http://blog.jcoglan.com/2007/12/05/packr-gem-now-available/</guid>
		<description><![CDATA[Update: the gem seems to be up on RubyForge now, so just gem install packr and you&#8217;re all set. At the request of Aman Gupta (again!) PackR is now available as a gem. I&#8217;ve not got myself all set up on RubyForge yet, but in the meantime you can download the gem from my subversion [...]]]></description>
		<wfw:commentRss>http://blog.jcoglan.com/2007/12/05/packr-gem-now-available/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>PackR, now with class methods</title>
		<link>http://blog.jcoglan.com/2007/11/25/packr-now-with-class-methods/</link>
		<comments>http://blog.jcoglan.com/2007/11/25/packr-now-with-class-methods/#comments</comments>
		<pubDate>Sun, 25 Nov 2007 10:31:33 +0000</pubDate>
		<dc:creator>James Coglan</dc:creator>
				<category><![CDATA[JavaScript]]></category>
		<category><![CDATA[PackR]]></category>
		<category><![CDATA[Rails]]></category>
		<category><![CDATA[Ruby]]></category>

		<guid isPermaLink="false">http://blog.jcoglan.com/2007/11/25/packr-now-with-class-methods/</guid>
		<description><![CDATA[Quick note: at the suggestion of Aman Gupta, PackR now supports Packr.pack, Packr.minify and Packr.pack_file as class methods, so you don&#8217;t need to create an instance of PackR before doing anything. Originally, I wanted PackR&#8217;s design to mirror the JavaScript version to make maintainance easier, but these methods are a tiny addition so I&#8217;m happy [...]]]></description>
		<wfw:commentRss>http://blog.jcoglan.com/2007/11/25/packr-now-with-class-methods/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Announcing PackR</title>
		<link>http://blog.jcoglan.com/2007/10/17/announcing-packr/</link>
		<comments>http://blog.jcoglan.com/2007/10/17/announcing-packr/#comments</comments>
		<pubDate>Wed, 17 Oct 2007 00:21:12 +0000</pubDate>
		<dc:creator>James Coglan</dc:creator>
				<category><![CDATA[JavaScript]]></category>
		<category><![CDATA[PackR]]></category>
		<category><![CDATA[Rails]]></category>
		<category><![CDATA[Ruby]]></category>

		<guid isPermaLink="false">http://blog.jcoglan.com/2007/10/17/announcing-packr/</guid>
		<description><![CDATA[I&#8217;ve no idea who may have done this already, but I certainly coundn&#8217;t find anyone who had in five minutes of searching. I&#8217;ve written a Ruby port of Dean Edwards&#8217; Packer, and released it as a Rails plugin. It includes a rake task for batch-processing the scripts in your application. Install like so: ruby script/plugin [...]]]></description>
		<wfw:commentRss>http://blog.jcoglan.com/2007/10/17/announcing-packr/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Why freeze when you can symlink</title>
		<link>http://blog.jcoglan.com/2007/10/06/why-freeze-when-you-can-symlink/</link>
		<comments>http://blog.jcoglan.com/2007/10/06/why-freeze-when-you-can-symlink/#comments</comments>
		<pubDate>Sat, 06 Oct 2007 10:35:02 +0000</pubDate>
		<dc:creator>James Coglan</dc:creator>
				<category><![CDATA[Rails]]></category>

		<guid isPermaLink="false">http://blog.jcoglan.com/2007/10/06/why-freeze-when-you-can-symlink/</guid>
		<description><![CDATA[Just a quick thought: for a while now, I&#8217;ve been putting this in my Capistrano recipe, in the :after_update_code task: run "cd #{release_path} &#038;&#038; rake rails:freeze:edge TAG=rel_1-2-4" But what&#8217;s the point in exporting the same 5Mb of files every time you deploy? Instead, let&#8217;s do this: run "ln -s #{release_path}/../../shared/rails/1.2.4 #{release_path}/vendor/rails" cd into your Capitrano [...]]]></description>
		<wfw:commentRss>http://blog.jcoglan.com/2007/10/06/why-freeze-when-you-can-symlink/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
	</channel>
</rss>
