<?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: The Boy Scout Rule</title>
	<atom:link href="http://www.hans-eric.com/2010/07/26/the-boy-scout-rule/feed/" rel="self" type="application/rss+xml" />
	<link>http://www.hans-eric.com/2010/07/26/the-boy-scout-rule/</link>
	<description>Hans-Eric Grönlund on software development</description>
	<lastBuildDate>Wed, 21 Dec 2011 04:18:51 +0000</lastBuildDate>
	<sy:updatePeriod>hourly</sy:updatePeriod>
	<sy:updateFrequency>1</sy:updateFrequency>
	<generator>http://wordpress.org/?v=3.3</generator>
	<item>
		<title>By: Hidden Dependencies Are Evil &#8211; Arguing With The Clean Code (Slightly) &#171; The Holy Java</title>
		<link>http://www.hans-eric.com/2010/07/26/the-boy-scout-rule/comment-page-1/#comment-55441</link>
		<dc:creator>Hidden Dependencies Are Evil &#8211; Arguing With The Clean Code (Slightly) &#171; The Holy Java</dc:creator>
		<pubDate>Sat, 19 Feb 2011 01:30:26 +0000</pubDate>
		<guid isPermaLink="false">http://www.hans-eric.com/?p=405#comment-55441</guid>
		<description>[...] without the new features he desired. And whenever we come back to an old code, we should follow the Boy Scoute Rule of software [...]</description>
		<content:encoded><![CDATA[<p>[...] without the new features he desired. And whenever we come back to an old code, we should follow the Boy Scoute Rule of software [...]</p>
]]></content:encoded>
	</item>
	<item>
		<title>By: Hans-Eric</title>
		<link>http://www.hans-eric.com/2010/07/26/the-boy-scout-rule/comment-page-1/#comment-45961</link>
		<dc:creator>Hans-Eric</dc:creator>
		<pubDate>Tue, 27 Jul 2010 08:36:36 +0000</pubDate>
		<guid isPermaLink="false">http://www.hans-eric.com/?p=405#comment-45961</guid>
		<description>&lt;a href=&quot;#comment-45946&quot; rel=&quot;nofollow&quot;&gt;@Paul W. Homer  &lt;/a&gt; 
I agree, Paul, but -- as you point out in your excellent post -- it can be very difficult to make everyone on a multi-personality team go by the common standard. Coaching and strong leadership is required to make it work.

Another great post of yours, that touches the clean code topic, is &lt;a href=&quot;http://theprogrammersparadox.blogspot.com/2010/07/syntactic-noise.html&quot; rel=&quot;nofollow&quot;&gt;Syntactic Noice&lt;/a&gt;.</description>
		<content:encoded><![CDATA[<p><a href="#comment-45946" rel="nofollow">@Paul W. Homer  </a><br />
I agree, Paul, but &#8212; as you point out in your excellent post &#8212; it can be very difficult to make everyone on a multi-personality team go by the common standard. Coaching and strong leadership is required to make it work.</p>
<p>Another great post of yours, that touches the clean code topic, is <a href="http://theprogrammersparadox.blogspot.com/2010/07/syntactic-noise.html" rel="nofollow">Syntactic Noice</a>.</p>
]]></content:encoded>
	</item>
	<item>
		<title>By: Hans-Eric</title>
		<link>http://www.hans-eric.com/2010/07/26/the-boy-scout-rule/comment-page-1/#comment-45960</link>
		<dc:creator>Hans-Eric</dc:creator>
		<pubDate>Tue, 27 Jul 2010 08:06:02 +0000</pubDate>
		<guid isPermaLink="false">http://www.hans-eric.com/?p=405#comment-45960</guid>
		<description>&lt;a href=&quot;#comment-45939&quot; rel=&quot;nofollow&quot;&gt;@Madoc  &lt;/a&gt; 
Thank you for your comment. I like the idea of mapping natural language to code, even if - as in the case of your rule of thumb - the mapping is only made in the brain. I&#039;m having a little trouble, though, imagining how this rule of thumb of yours works in practice. To make it clearer (for a thick-head like me), could you provide an example usage?</description>
		<content:encoded><![CDATA[<p><a href="#comment-45939" rel="nofollow">@Madoc  </a><br />
Thank you for your comment. I like the idea of mapping natural language to code, even if &#8211; as in the case of your rule of thumb &#8211; the mapping is only made in the brain. I&#8217;m having a little trouble, though, imagining how this rule of thumb of yours works in practice. To make it clearer (for a thick-head like me), could you provide an example usage?</p>
]]></content:encoded>
	</item>
	<item>
		<title>By: Paul W. Homer</title>
		<link>http://www.hans-eric.com/2010/07/26/the-boy-scout-rule/comment-page-1/#comment-45946</link>
		<dc:creator>Paul W. Homer</dc:creator>
		<pubDate>Mon, 26 Jul 2010 19:57:22 +0000</pubDate>
		<guid isPermaLink="false">http://www.hans-eric.com/?p=405#comment-45946</guid>
		<description>Usually my rule is: if you see that it is wrong, fix it now. However this doesn&#039;t apply during a code freeze or in a death march. 

I think all team should use one and only one consistent standard, not only for the formatting but also for the variables names and function names, and that standard should be driven by the domain first, then the technical domain. Still, over the years I&#039;ve wondered heavily if this is really possible. That&#039;s why I wrote:

http://theprogrammersparadox.blogspot.com/2010/05/personality-effect.html

Many programmers just don&#039;t seem to grok that consistency would make their lives easier.

Paul.</description>
		<content:encoded><![CDATA[<p>Usually my rule is: if you see that it is wrong, fix it now. However this doesn&#8217;t apply during a code freeze or in a death march. </p>
<p>I think all team should use one and only one consistent standard, not only for the formatting but also for the variables names and function names, and that standard should be driven by the domain first, then the technical domain. Still, over the years I&#8217;ve wondered heavily if this is really possible. That&#8217;s why I wrote:</p>
<p><a href="http://theprogrammersparadox.blogspot.com/2010/05/personality-effect.html" rel="nofollow">http://theprogrammersparadox.blogspot.com/2010/05/personality-effect.html</a></p>
<p>Many programmers just don&#8217;t seem to grok that consistency would make their lives easier.</p>
<p>Paul.</p>
]]></content:encoded>
	</item>
	<item>
		<title>By: Madoc</title>
		<link>http://www.hans-eric.com/2010/07/26/the-boy-scout-rule/comment-page-1/#comment-45939</link>
		<dc:creator>Madoc</dc:creator>
		<pubDate>Mon, 26 Jul 2010 16:09:36 +0000</pubDate>
		<guid isPermaLink="false">http://www.hans-eric.com/?p=405#comment-45939</guid>
		<description>I have a rule of thumb when deciding wether or not code understanding would improve from expanding compact regions of the code. Especially when the question is if one should expand a one-liner to several lines.

I ask myself: &quot;When explaining in natural language what this part of the code does, would I put it all in one simple sentence? Or would I make several sentences (or maybe one longer, complex sentence that makes use of phrases like &quot;the string we extracted before&quot; or so, i.e. the natural language equivalent of variables)?&quot;

When the answer is a very strong tendency to &quot;one short sentence&quot;, then I usually do not change the one-liner. Otherwise, I consider expanding it to several lines, which then depends on my intuition.

I found this rule of thumb useful. It illustrates that not the number of casts or operations should decide if the code is understandable, but instead the equivalence to natural language constructs. Because natural language constructs that feel &quot;just right&quot; to us make up the area of expressible statements that seem to belong to one integral unit of thought to us, not the number and nesting of the contained operations. Natural language is &quot;clean&quot;, at least for humans. Probably that&#039;s because we have invented natural language in order to practical for us. Computer scientists seem to have a tendency to abstract too much; sometimes it seems like they would want to put all of this intuitive stuff of human understanding into one metric, one formula, totally ignoring that it is mostly subjective.</description>
		<content:encoded><![CDATA[<p>I have a rule of thumb when deciding wether or not code understanding would improve from expanding compact regions of the code. Especially when the question is if one should expand a one-liner to several lines.</p>
<p>I ask myself: &#8220;When explaining in natural language what this part of the code does, would I put it all in one simple sentence? Or would I make several sentences (or maybe one longer, complex sentence that makes use of phrases like &#8220;the string we extracted before&#8221; or so, i.e. the natural language equivalent of variables)?&#8221;</p>
<p>When the answer is a very strong tendency to &#8220;one short sentence&#8221;, then I usually do not change the one-liner. Otherwise, I consider expanding it to several lines, which then depends on my intuition.</p>
<p>I found this rule of thumb useful. It illustrates that not the number of casts or operations should decide if the code is understandable, but instead the equivalence to natural language constructs. Because natural language constructs that feel &#8220;just right&#8221; to us make up the area of expressible statements that seem to belong to one integral unit of thought to us, not the number and nesting of the contained operations. Natural language is &#8220;clean&#8221;, at least for humans. Probably that&#8217;s because we have invented natural language in order to practical for us. Computer scientists seem to have a tendency to abstract too much; sometimes it seems like they would want to put all of this intuitive stuff of human understanding into one metric, one formula, totally ignoring that it is mostly subjective.</p>
]]></content:encoded>
	</item>
</channel>
</rss>

