<?xml version="1.0" encoding="UTF-8"?><rss version="2.0"
	xmlns:content="http://purl.org/rss/1.0/modules/content/"
	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/"
		>
<channel>
	<title>Comments on: Discontinuing Resourcelogic</title>
	<atom:link href="http://www.binarylogic.com/2009/10/06/discontinuing-resourcelogic/feed/" rel="self" type="application/rss+xml" />
	<link>http://www.binarylogic.com/2009/10/06/discontinuing-resourcelogic/</link>
	<description>Ben Johnson's thoughts and programming techniques</description>
	<lastBuildDate>Tue, 26 Jan 2010 22:32:54 +0000</lastBuildDate>
	<generator>http://wordpress.org/?v=2.8</generator>
	<sy:updatePeriod>hourly</sy:updatePeriod>
	<sy:updateFrequency>1</sy:updateFrequency>
		<item>
		<title>By: Gabe da Silveira</title>
		<link>http://www.binarylogic.com/2009/10/06/discontinuing-resourcelogic/comment-page-1/#comment-1052</link>
		<dc:creator>Gabe da Silveira</dc:creator>
		<pubDate>Tue, 03 Nov 2009 01:54:39 +0000</pubDate>
		<guid isPermaLink="false">http://www.binarylogic.com/?p=805#comment-1052</guid>
		<description>I mostly agree with your conclusions here.  I think there is a bit of a bikeshed thing behind all these tools... every Rails app has controllers, and there is a lot of code that ends up looking pretty boilerplate.

But in my experience it&#039;s a far cry from the type of boilerplate you have to deal with in Java.  In my app we have over 100 controllers, and most of them are subtly different, and for good reason.  Sure, we might be able to eliminate a few hundred lines of &quot;boilerplate&quot; by using one of these plugins, but it wouldn&#039;t be any more readable because all the actions are pretty short anyway, and there wouldn&#039;t be any valuable abstraction because there is no conceivable upgrade that we could apply to all the controllers without considering each of them individually anyway.

Now I can see the value in a specific project with a lot of resources that all have very similar semantic footprints.  In that case you could define an app-specific default for handling resources.  However I don&#039;t believe most apps fall into this category.  For most apps Rails provides a very nice set of primitives.  The work in Rails 3 enhances these defaults, and I believe that many Rails developers have useful ideas that could be applied towards improving these primitives much as the Merb team did.</description>
		<content:encoded><![CDATA[<p>I mostly agree with your conclusions here.  I think there is a bit of a bikeshed thing behind all these tools&#8230; every Rails app has controllers, and there is a lot of code that ends up looking pretty boilerplate.</p>
<p>But in my experience it&#8217;s a far cry from the type of boilerplate you have to deal with in Java.  In my app we have over 100 controllers, and most of them are subtly different, and for good reason.  Sure, we might be able to eliminate a few hundred lines of &#8220;boilerplate&#8221; by using one of these plugins, but it wouldn&#8217;t be any more readable because all the actions are pretty short anyway, and there wouldn&#8217;t be any valuable abstraction because there is no conceivable upgrade that we could apply to all the controllers without considering each of them individually anyway.</p>
<p>Now I can see the value in a specific project with a lot of resources that all have very similar semantic footprints.  In that case you could define an app-specific default for handling resources.  However I don&#8217;t believe most apps fall into this category.  For most apps Rails provides a very nice set of primitives.  The work in Rails 3 enhances these defaults, and I believe that many Rails developers have useful ideas that could be applied towards improving these primitives much as the Merb team did.</p>
]]></content:encoded>
	</item>
	<item>
		<title>By: Falk</title>
		<link>http://www.binarylogic.com/2009/10/06/discontinuing-resourcelogic/comment-page-1/#comment-1013</link>
		<dc:creator>Falk</dc:creator>
		<pubDate>Thu, 22 Oct 2009 06:55:34 +0000</pubDate>
		<guid isPermaLink="false">http://www.binarylogic.com/?p=805#comment-1013</guid>
		<description>&gt; Personally, I feel you did have provide an 
&gt; amazing, innovative, and useful idea in 
&gt; resourcelogic. Contexts

Yep, we need restfulcontextlogic! ;)</description>
		<content:encoded><![CDATA[<p>&gt; Personally, I feel you did have provide an<br />
&gt; amazing, innovative, and useful idea in<br />
&gt; resourcelogic. Contexts</p>
<p>Yep, we need restfulcontextlogic! ;)</p>
]]></content:encoded>
	</item>
	<item>
		<title>By: Falk</title>
		<link>http://www.binarylogic.com/2009/10/06/discontinuing-resourcelogic/comment-page-1/#comment-1012</link>
		<dc:creator>Falk</dc:creator>
		<pubDate>Thu, 22 Oct 2009 06:48:14 +0000</pubDate>
		<guid isPermaLink="false">http://www.binarylogic.com/?p=805#comment-1012</guid>
		<description>Scanning 50 lines of well-written, good-structured (and maybe even documented) code is usually not a pain, but scanning 2 lines of super-magic can be really frustrating... So I vote for more lines and less magic.</description>
		<content:encoded><![CDATA[<p>Scanning 50 lines of well-written, good-structured (and maybe even documented) code is usually not a pain, but scanning 2 lines of super-magic can be really frustrating&#8230; So I vote for more lines and less magic.</p>
]]></content:encoded>
	</item>
	<item>
		<title>By: Falk</title>
		<link>http://www.binarylogic.com/2009/10/06/discontinuing-resourcelogic/comment-page-1/#comment-1011</link>
		<dc:creator>Falk</dc:creator>
		<pubDate>Thu, 22 Oct 2009 06:44:23 +0000</pubDate>
		<guid isPermaLink="false">http://www.binarylogic.com/?p=805#comment-1011</guid>
		<description>Hi Ben,

I like your plugins a lot (am using authlogic, searchlogic &amp; settingslogic) and your post reflects exactly my thoughts when i tried these resource-helpers. Your post hardens my decision not to use such tools because of too much magic and obfuscation.

I like how you publish your thoughts and reflections! Your post made me feel good about leaving &quot;magic restful helper tools&quot; beside (although there might be special projects which could benefit from those tools).</description>
		<content:encoded><![CDATA[<p>Hi Ben,</p>
<p>I like your plugins a lot (am using authlogic, searchlogic &amp; settingslogic) and your post reflects exactly my thoughts when i tried these resource-helpers. Your post hardens my decision not to use such tools because of too much magic and obfuscation.</p>
<p>I like how you publish your thoughts and reflections! Your post made me feel good about leaving &#8220;magic restful helper tools&#8221; beside (although there might be special projects which could benefit from those tools).</p>
]]></content:encoded>
	</item>
	<item>
		<title>By: Dan Croak</title>
		<link>http://www.binarylogic.com/2009/10/06/discontinuing-resourcelogic/comment-page-1/#comment-1010</link>
		<dc:creator>Dan Croak</dc:creator>
		<pubDate>Tue, 20 Oct 2009 17:35:38 +0000</pubDate>
		<guid isPermaLink="false">http://www.binarylogic.com/?p=805#comment-1010</guid>
		<description>+1 inherited_resources is the only controller abstraction I&#039;ve felt good about putting in a project.

The upcoming respond_to/respond_with in Rails 3 should also clean up some of the noise in Rails&#039; existing DSL.</description>
		<content:encoded><![CDATA[<p>+1 inherited_resources is the only controller abstraction I&#8217;ve felt good about putting in a project.</p>
<p>The upcoming respond_to/respond_with in Rails 3 should also clean up some of the noise in Rails&#8217; existing DSL.</p>
]]></content:encoded>
	</item>
	<item>
		<title>By: Arik Jones</title>
		<link>http://www.binarylogic.com/2009/10/06/discontinuing-resourcelogic/comment-page-1/#comment-980</link>
		<dc:creator>Arik Jones</dc:creator>
		<pubDate>Tue, 13 Oct 2009 16:14:39 +0000</pubDate>
		<guid isPermaLink="false">http://www.binarylogic.com/?p=805#comment-980</guid>
		<description>I agree for the most part, but in practice it&#039;s unreasonable for my needs to constantly worry about code I may never change later.

There is nothing more annoying than looking back on your controller code and realizing 70% of your code has been the same since generating it 6 months ago. 

So yes, I suggest using libraries cause it saves me from having to scan 50+ lines of code just to change 2. I&#039;m all about maintainability. Fixing code due to upgrades is a fact of life no matter how simple your may be.</description>
		<content:encoded><![CDATA[<p>I agree for the most part, but in practice it&#8217;s unreasonable for my needs to constantly worry about code I may never change later.</p>
<p>There is nothing more annoying than looking back on your controller code and realizing 70% of your code has been the same since generating it 6 months ago. </p>
<p>So yes, I suggest using libraries cause it saves me from having to scan 50+ lines of code just to change 2. I&#8217;m all about maintainability. Fixing code due to upgrades is a fact of life no matter how simple your may be.</p>
]]></content:encoded>
	</item>
	<item>
		<title>By: trans</title>
		<link>http://www.binarylogic.com/2009/10/06/discontinuing-resourcelogic/comment-page-1/#comment-979</link>
		<dc:creator>trans</dc:creator>
		<pubDate>Mon, 12 Oct 2009 23:42:29 +0000</pubDate>
		<guid isPermaLink="false">http://www.binarylogic.com/?p=805#comment-979</guid>
		<description>YADSL.</description>
		<content:encoded><![CDATA[<p>YADSL.</p>
]]></content:encoded>
	</item>
	<item>
		<title>By: Jakub Suder</title>
		<link>http://www.binarylogic.com/2009/10/06/discontinuing-resourcelogic/comment-page-1/#comment-977</link>
		<dc:creator>Jakub Suder</dc:creator>
		<pubDate>Mon, 12 Oct 2009 09:16:01 +0000</pubDate>
		<guid isPermaLink="false">http://www.binarylogic.com/?p=805#comment-977</guid>
		<description>I had the same experience while using the Hobo library in two projects. At first it seemed to make the work easier by automating everything, but in the end it turned out that it&#039;s just as much work (or probably even more) than if I did it the standard way... It did make the code a bit shorter, but you had to spend a lot of time figuring out how to write it (I wrote about this here: http://psionides.jogger.pl/2008/12/02/code-like-a-hobo/ ).</description>
		<content:encoded><![CDATA[<p>I had the same experience while using the Hobo library in two projects. At first it seemed to make the work easier by automating everything, but in the end it turned out that it&#8217;s just as much work (or probably even more) than if I did it the standard way&#8230; It did make the code a bit shorter, but you had to spend a lot of time figuring out how to write it (I wrote about this here: <a href="http://psionides.jogger.pl/2008/12/02/code-like-a-hobo/" rel="nofollow">http://psionides.jogger.pl/2008/12/02/code-like-a-hobo/</a> ).</p>
]]></content:encoded>
	</item>
	<item>
		<title>By: Matt Scilipoti</title>
		<link>http://www.binarylogic.com/2009/10/06/discontinuing-resourcelogic/comment-page-1/#comment-973</link>
		<dc:creator>Matt Scilipoti</dc:creator>
		<pubDate>Fri, 09 Oct 2009 14:19:07 +0000</pubDate>
		<guid isPermaLink="false">http://www.binarylogic.com/?p=805#comment-973</guid>
		<description>It sounds to me like a good portion of your pain can be alleviated by moderating your use of these libraries.  If a controller has a lot of exceptions, don&#039;t use resourcelogic.  Write it out.  But first, realize that this is a smell.  Ask yourself why.  Why is it so different from the norm?  Does it need to be?

That&#039;s what I like about these libraries, you can easily identify what has changed from convention.  When I look at a &quot;hand coded&quot; controller, it&#039;s a little harder to see what makes it unique from another controller.  Where did it deviate from convention?

Personally, I feel you did have provide an amazing, innovative, and useful idea in resourcelogic.  Contexts.  For me, namespaces has been a big Fail.  Too many files.  Too many paths.  Too many places to look to find the logic.  You merged all this back into one place.  Sweet.  I hope this idea doesn&#039;t die with resourcelogic.</description>
		<content:encoded><![CDATA[<p>It sounds to me like a good portion of your pain can be alleviated by moderating your use of these libraries.  If a controller has a lot of exceptions, don&#8217;t use resourcelogic.  Write it out.  But first, realize that this is a smell.  Ask yourself why.  Why is it so different from the norm?  Does it need to be?</p>
<p>That&#8217;s what I like about these libraries, you can easily identify what has changed from convention.  When I look at a &#8220;hand coded&#8221; controller, it&#8217;s a little harder to see what makes it unique from another controller.  Where did it deviate from convention?</p>
<p>Personally, I feel you did have provide an amazing, innovative, and useful idea in resourcelogic.  Contexts.  For me, namespaces has been a big Fail.  Too many files.  Too many paths.  Too many places to look to find the logic.  You merged all this back into one place.  Sweet.  I hope this idea doesn&#8217;t die with resourcelogic.</p>
]]></content:encoded>
	</item>
	<item>
		<title>By: Michael Dvorkin</title>
		<link>http://www.binarylogic.com/2009/10/06/discontinuing-resourcelogic/comment-page-1/#comment-972</link>
		<dc:creator>Michael Dvorkin</dc:creator>
		<pubDate>Fri, 09 Oct 2009 01:32:47 +0000</pubDate>
		<guid isPermaLink="false">http://www.binarylogic.com/?p=805#comment-972</guid>
		<description>That&#039;s pretty much my experience as well, see related discussion at http://railsdog.com/blog/2009/07/resource-controller-for-skinny-rails-controllers/

I would throw in two more arguments: testing and test coverage, and upgrading to Rails 3. 

At the end of the day it&#039;s a matter of taste and personal experience. I&#039;ll happily embrace new best practices once Rails 3 comes out, but for now I&#039;m sticking with what supposedly is the intended use in Rails 2.</description>
		<content:encoded><![CDATA[<p>That&#8217;s pretty much my experience as well, see related discussion at <a href="http://railsdog.com/blog/2009/07/resource-controller-for-skinny-rails-controllers/" rel="nofollow">http://railsdog.com/blog/2009/07/resource-controller-for-skinny-rails-controllers/</a></p>
<p>I would throw in two more arguments: testing and test coverage, and upgrading to Rails 3. </p>
<p>At the end of the day it&#8217;s a matter of taste and personal experience. I&#8217;ll happily embrace new best practices once Rails 3 comes out, but for now I&#8217;m sticking with what supposedly is the intended use in Rails 2.</p>
]]></content:encoded>
	</item>
</channel>
</rss>
