<?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 for Peter Williams</title>
	<atom:link href="http://barelyenough.org/comments/feed/" rel="self" type="application/rss+xml" />
	<link>http://barelyenough.org</link>
	<description>… and there is much to be learned</description>
	<lastBuildDate>Sun, 18 Jul 2010 13:33:53 +0000</lastBuildDate>
	<generator>http://wordpress.org/?v=2.9.2</generator>
	<sy:updatePeriod>hourly</sy:updatePeriod>
	<sy:updateFrequency>1</sy:updateFrequency>
		<item>
		<title>Comment on Ruby Backtraces by Peter Williams</title>
		<link>http://barelyenough.org/blog/2005/04/ruby-backtraces/comment-page-1/#comment-84715</link>
		<dc:creator>Peter Williams</dc:creator>
		<pubDate>Sun, 18 Jul 2010 13:33:53 +0000</pubDate>
		<guid isPermaLink="false">http://pezra.barelyenough.org/blog/2005/04/ruby-backtraces/#comment-84715</guid>
		<description>&lt;p&gt;Asher,&lt;/p&gt;

&lt;p&gt;Very cool. It is good to know that you can achieve that sort of thing in user space with the 1.9 vm.&lt;/p&gt;
</description>
		<content:encoded><![CDATA[<p>Asher,</p>
<p>Very cool. It is good to know that you can achieve that sort of thing in user space with the 1.9 vm.</p>
]]></content:encoded>
	</item>
	<item>
		<title>Comment on Ruby Backtraces by Asher</title>
		<link>http://barelyenough.org/blog/2005/04/ruby-backtraces/comment-page-1/#comment-84705</link>
		<dc:creator>Asher</dc:creator>
		<pubDate>Sun, 18 Jul 2010 08:21:32 +0000</pubDate>
		<guid isPermaLink="false">http://pezra.barelyenough.org/blog/2005/04/ruby-backtraces/#comment-84705</guid>
		<description>&lt;p&gt;I put together a gem to address this with Ruby &gt;= 1.9&lt;/p&gt;

&lt;p&gt;gem install sender&lt;/p&gt;

&lt;p&gt;Adds a number of functions including object oriented backtrace (Kernel.backtrace), backtrace_includes? each_backtrace_frame, &lt;strong&gt;sender&lt;/strong&gt; and &lt;strong&gt;caller&lt;/strong&gt;.&lt;/p&gt;
</description>
		<content:encoded><![CDATA[<p>I put together a gem to address this with Ruby &gt;= 1.9</p>
<p>gem install sender</p>
<p>Adds a number of functions including object oriented backtrace (Kernel.backtrace), backtrace_includes? each_backtrace_frame, <strong>sender</strong> and <strong>caller</strong>.</p>
]]></content:encoded>
	</item>
	<item>
		<title>Comment on Vertical Slicing by Peter Williams</title>
		<link>http://barelyenough.org/blog/2010/07/vertical-slicing/comment-page-1/#comment-84600</link>
		<dc:creator>Peter Williams</dc:creator>
		<pubDate>Tue, 13 Jul 2010 18:41:56 +0000</pubDate>
		<guid isPermaLink="false">http://barelyenough.org/?p=466#comment-84600</guid>
		<description>&lt;p&gt;Devon,&lt;/p&gt;

&lt;p&gt;I apply DRY at the semantic level, rather than syntactic.  Doing so makes it equivalent to SPOT, in my opinion.  The formal definition of DRY is:&lt;/p&gt;

&lt;blockquote&gt;
  &lt;p&gt;Every piece of knowledge must have a single, unambiguous,
  authoritative representation within a system&lt;/p&gt;
&lt;/blockquote&gt;

&lt;p&gt;That seems quite the same as SPOT. (Without the unsavory implication that anything like truth can occur in a computer program.)&lt;/p&gt;

&lt;p&gt;I see your point about the potential misapplication of DRY.  It certainly has the potential to result in excessive complexity if applied incorrectly.  However, in my experience, it is far more common for it to be under applied, or ignored entirely, than to be applied at the wrong level.&lt;/p&gt;
</description>
		<content:encoded><![CDATA[<p>Devon,</p>
<p>I apply DRY at the semantic level, rather than syntactic.  Doing so makes it equivalent to SPOT, in my opinion.  The formal definition of DRY is:</p>
<blockquote>
<p>Every piece of knowledge must have a single, unambiguous,<br />
  authoritative representation within a system</p>
</blockquote>
<p>That seems quite the same as SPOT. (Without the unsavory implication that anything like truth can occur in a computer program.)</p>
<p>I see your point about the potential misapplication of DRY.  It certainly has the potential to result in excessive complexity if applied incorrectly.  However, in my experience, it is far more common for it to be under applied, or ignored entirely, than to be applied at the wrong level.</p>
]]></content:encoded>
	</item>
	<item>
		<title>Comment on Vertical Slicing by Devon Jones</title>
		<link>http://barelyenough.org/blog/2010/07/vertical-slicing/comment-page-1/#comment-84599</link>
		<dc:creator>Devon Jones</dc:creator>
		<pubDate>Tue, 13 Jul 2010 15:22:53 +0000</pubDate>
		<guid isPermaLink="false">http://barelyenough.org/?p=466#comment-84599</guid>
		<description>&lt;p&gt;I quite agree.  My only area of significant difference is that I prefer to aim for SPOT (single point of truth) as opposed to DRY.  My contention is that when people try to overgeneralize code so that no code is ever repeated, that code becomes inherently more complicated.  If instead you target a system having a SPOT for each piece of data or process, you ensure avoiding connascence of algorithm while allowing the code in each piece to be as simple as possible.  IMHO DRY drives code complexity in ways that SPOT does not. Worded another way, sometimes a little repetition is preferred.&lt;/p&gt;
</description>
		<content:encoded><![CDATA[<p>I quite agree.  My only area of significant difference is that I prefer to aim for SPOT (single point of truth) as opposed to DRY.  My contention is that when people try to overgeneralize code so that no code is ever repeated, that code becomes inherently more complicated.  If instead you target a system having a SPOT for each piece of data or process, you ensure avoiding connascence of algorithm while allowing the code in each piece to be as simple as possible.  IMHO DRY drives code complexity in ways that SPOT does not. Worded another way, sometimes a little repetition is preferred.</p>
]]></content:encoded>
	</item>
	<item>
		<title>Comment on Vertical Slicing by Kevin Weller</title>
		<link>http://barelyenough.org/blog/2010/07/vertical-slicing/comment-page-1/#comment-84588</link>
		<dc:creator>Kevin Weller</dc:creator>
		<pubDate>Mon, 12 Jul 2010 23:37:09 +0000</pubDate>
		<guid isPermaLink="false">http://barelyenough.org/?p=466#comment-84588</guid>
		<description>&lt;p&gt;Nicely put.  However, vertical and horizontal slicing are not mutually exclusive...they can be effectively combined.&lt;/p&gt;
</description>
		<content:encoded><![CDATA[<p>Nicely put.  However, vertical and horizontal slicing are not mutually exclusive&#8230;they can be effectively combined.</p>
]]></content:encoded>
	</item>
	<item>
		<title>Comment on Vertical Slicing by Tweets that mention Peter Williams - Vertical Slicing -- Topsy.com</title>
		<link>http://barelyenough.org/blog/2010/07/vertical-slicing/comment-page-1/#comment-84584</link>
		<dc:creator>Tweets that mention Peter Williams - Vertical Slicing -- Topsy.com</dc:creator>
		<pubDate>Mon, 12 Jul 2010 17:27:25 +0000</pubDate>
		<guid isPermaLink="false">http://barelyenough.org/?p=466#comment-84584</guid>
		<description>&lt;p&gt;[...] This post was mentioned on Twitter by Jim Ray. Jim Ray said: RT @pezra: New blog post: Vertical slicing http://barelyenough.org/blog/2010/07/vertical-slicing [...]&lt;/p&gt;
</description>
		<content:encoded><![CDATA[<p>[...] This post was mentioned on Twitter by Jim Ray. Jim Ray said: RT @pezra: New blog post: Vertical slicing <a href="http://barelyenough.org/blog/2010/07/vertical-slicing" rel="nofollow">http://barelyenough.org/blog/2010/07/vertical-slicing</a> [...]</p>
]]></content:encoded>
	</item>
	<item>
		<title>Comment on Hypermedia as the Engine of Application State by Peter Williams - Vertical Slicing</title>
		<link>http://barelyenough.org/blog/2007/05/hypermedia-as-the-engine-of-application-state/comment-page-1/#comment-84582</link>
		<dc:creator>Peter Williams - Vertical Slicing</dc:creator>
		<pubDate>Mon, 12 Jul 2010 15:39:04 +0000</pubDate>
		<guid isPermaLink="false">http://pezra.barelyenough.org/blog/2007/05/hypermedia-as-the-engine-of-application-state/#comment-84582</guid>
		<description>&lt;p&gt;[...] design can introduce excessive coupling which will eat up most of the advantages described above. Hypermedia &#8211; or more precisely, following the REST architectural style &#8211; is the best way i know to [...]&lt;/p&gt;
</description>
		<content:encoded><![CDATA[<p>[...] design can introduce excessive coupling which will eat up most of the advantages described above. Hypermedia &#8211; or more precisely, following the REST architectural style &#8211; is the best way i know to [...]</p>
]]></content:encoded>
	</item>
	<item>
		<title>Comment on Small pieces by Peter Williams - Vertical Slicing</title>
		<link>http://barelyenough.org/blog/2009/09/small-pieces/comment-page-1/#comment-84576</link>
		<dc:creator>Peter Williams - Vertical Slicing</dc:creator>
		<pubDate>Mon, 12 Jul 2010 02:57:36 +0000</pubDate>
		<guid isPermaLink="false">http://barelyenough.org/?p=397#comment-84576</guid>
		<description>&lt;p&gt;[...] am a fan of polylithic architectures. Such architectures have many advantages related to enhancing evolvability and maintainability. [...]&lt;/p&gt;
</description>
		<content:encoded><![CDATA[<p>[...] am a fan of polylithic architectures. Such architectures have many advantages related to enhancing evolvability and maintainability. [...]</p>
]]></content:encoded>
	</item>
	<item>
		<title>Comment on Mercurial and Perforce by Johan Walles</title>
		<link>http://barelyenough.org/blog/2006/08/mercurial-and-perforce/comment-page-1/#comment-83957</link>
		<dc:creator>Johan Walles</dc:creator>
		<pubDate>Thu, 10 Jun 2010 14:01:30 +0000</pubDate>
		<guid isPermaLink="false">http://pezra.barelyenough.org/blog/?p=250#comment-83957</guid>
		<description>&lt;p&gt;If directory tracking is important to you in a VCS you may want to have a look at Bazaar:&lt;/p&gt;

&lt;p&gt;http://doc.bazaar.canonical.com/migration/en/why-switch-to-bazaar.html#rename-tracking-and-smart-merging&lt;/p&gt;
</description>
		<content:encoded><![CDATA[<p>If directory tracking is important to you in a VCS you may want to have a look at Bazaar:</p>
<p><a href="http://doc.bazaar.canonical.com/migration/en/why-switch-to-bazaar.html#rename-tracking-and-smart-merging" rel="nofollow">http://doc.bazaar.canonical.com/migration/en/why-switch-to-bazaar.html#rename-tracking-and-smart-merging</a></p>
]]></content:encoded>
	</item>
	<item>
		<title>Comment on Unobtrusive link info by Peter Williams</title>
		<link>http://barelyenough.org/blog/2010/01/unobtrusive-link-info/comment-page-1/#comment-83921</link>
		<dc:creator>Peter Williams</dc:creator>
		<pubDate>Tue, 08 Jun 2010 16:43:26 +0000</pubDate>
		<guid isPermaLink="false">http://barelyenough.org/?p=416#comment-83921</guid>
		<description>&lt;p&gt;Reda B.,&lt;/p&gt;

&lt;p&gt;There are advantages of using a standard link mechanism, such as a atom:link element or a xlink attribute.  Using standardized linking structures allow clients that do not understand the semantics of your doctype to extract some link related information.  Such standardization should allow libraries to be built that are less media type specific, and therefore more reusable.&lt;/p&gt;

&lt;p&gt;That being said i think that the &lt;code&gt;Link&lt;/code&gt; header field is a better way to deal with the sorts of links that benefit from standardization.&lt;/p&gt;
</description>
		<content:encoded><![CDATA[<p>Reda B.,</p>
<p>There are advantages of using a standard link mechanism, such as a atom:link element or a xlink attribute.  Using standardized linking structures allow clients that do not understand the semantics of your doctype to extract some link related information.  Such standardization should allow libraries to be built that are less media type specific, and therefore more reusable.</p>
<p>That being said i think that the <code>Link</code> header field is a better way to deal with the sorts of links that benefit from standardization.</p>
]]></content:encoded>
	</item>
</channel>
</rss>
