<?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/"
	xmlns:media="http://search.yahoo.com/mrss/"
		>
<channel>
	<title>Comments on: Just Let It Go</title>
	<atom:link href="http://cskardon.wordpress.com/2008/05/14/just-let-it-go/feed/" rel="self" type="application/rss+xml" />
	<link>http://cskardon.wordpress.com/2008/05/14/just-let-it-go/</link>
	<description>The world of Chris - a slightly deranged .NET developer....</description>
	<lastBuildDate>Fri, 16 Oct 2009 22:53:29 +0000</lastBuildDate>
	<generator>http://wordpress.com/</generator>
	<sy:updatePeriod>hourly</sy:updatePeriod>
	<sy:updateFrequency>1</sy:updateFrequency>
		<item>
		<title>By: chuck</title>
		<link>http://cskardon.wordpress.com/2008/05/14/just-let-it-go/#comment-36</link>
		<dc:creator>chuck</dc:creator>
		<pubDate>Fri, 16 May 2008 15:00:23 +0000</pubDate>
		<guid isPermaLink="false">http://cskardon.wordpress.com/?p=36#comment-36</guid>
		<description>Yeah, see, now, I personally really like keeping the else clause in, even if it isn&#039;t strictly necessary, because I like how it reads -- the indentation, for example, makes it clear that the part meant to execute when the expression is true and the part meant to execute when it&#039;s false are related in that they represent two outcomes of the same test.</description>
		<content:encoded><![CDATA[<p>Yeah, see, now, I personally really like keeping the else clause in, even if it isn&#8217;t strictly necessary, because I like how it reads &#8212; the indentation, for example, makes it clear that the part meant to execute when the expression is true and the part meant to execute when it&#8217;s false are related in that they represent two outcomes of the same test.</p>
]]></content:encoded>
	</item>
	<item>
		<title>By: Sam</title>
		<link>http://cskardon.wordpress.com/2008/05/14/just-let-it-go/#comment-35</link>
		<dc:creator>Sam</dc:creator>
		<pubDate>Thu, 15 May 2008 17:00:14 +0000</pubDate>
		<guid isPermaLink="false">http://cskardon.wordpress.com/?p=36#comment-35</guid>
		<description>Sorry - hadn&#039;t raed the code carefully enough - ignore me</description>
		<content:encoded><![CDATA[<p>Sorry &#8211; hadn&#8217;t raed the code carefully enough &#8211; ignore me</p>
]]></content:encoded>
	</item>
	<item>
		<title>By: Sam</title>
		<link>http://cskardon.wordpress.com/2008/05/14/just-let-it-go/#comment-34</link>
		<dc:creator>Sam</dc:creator>
		<pubDate>Thu, 15 May 2008 16:58:33 +0000</pubDate>
		<guid isPermaLink="false">http://cskardon.wordpress.com/?p=36#comment-34</guid>
		<description>Surely

return xxx;

is the way to go</description>
		<content:encoded><![CDATA[<p>Surely</p>
<p>return xxx;</p>
<p>is the way to go</p>
]]></content:encoded>
	</item>
	<item>
		<title>By: Chuck Rector</title>
		<link>http://cskardon.wordpress.com/2008/05/14/just-let-it-go/#comment-33</link>
		<dc:creator>Chuck Rector</dc:creator>
		<pubDate>Thu, 15 May 2008 15:07:43 +0000</pubDate>
		<guid isPermaLink="false">http://cskardon.wordpress.com/?p=36#comment-33</guid>
		<description>I was reading Raganwald the other day as well, great stuff. Your post is another good example. 

At an earlier point in my career, I often changed code in similar ways. Worse, I reformatted nearly everything I touched. Ultimately, this is a lot of &quot;fire and motion&quot; without real benefit. It is very rare that someone formats their code in ways which are truly difficult for me to read.

In working with others and using source control, I&#039;ve come to appreciate commit logs which are &quot;clean&quot; and communicate only the &quot;significant&quot; changes. If I have a really good reason for wanting to reformat or rearrange a bit of code, I reserve such changes for separate commits.

That said, there is a line of reasoning you can take behind performing some of the latter changes you&#039;ve described above, beyond style. I believe it&#039;s explained in &quot;Code Complete&quot; (highly recommended reading!)

The short of it is, you put your gating factors (trivial rejections, etc.) at the top of a function, to quickly return or escape from unnecessary processing. Then you allow the common case to occupy the &quot;root level&quot; of your function. The idea being that the normal flow of control should not be nestled away in conditionals (especially deeply nested ones!) Any given function has a specific purpose (if you adhere to SRP) and that purpose should read as simply as possible in the &quot;most expected&quot; location.</description>
		<content:encoded><![CDATA[<p>I was reading Raganwald the other day as well, great stuff. Your post is another good example. </p>
<p>At an earlier point in my career, I often changed code in similar ways. Worse, I reformatted nearly everything I touched. Ultimately, this is a lot of &#8220;fire and motion&#8221; without real benefit. It is very rare that someone formats their code in ways which are truly difficult for me to read.</p>
<p>In working with others and using source control, I&#8217;ve come to appreciate commit logs which are &#8220;clean&#8221; and communicate only the &#8220;significant&#8221; changes. If I have a really good reason for wanting to reformat or rearrange a bit of code, I reserve such changes for separate commits.</p>
<p>That said, there is a line of reasoning you can take behind performing some of the latter changes you&#8217;ve described above, beyond style. I believe it&#8217;s explained in &#8220;Code Complete&#8221; (highly recommended reading!)</p>
<p>The short of it is, you put your gating factors (trivial rejections, etc.) at the top of a function, to quickly return or escape from unnecessary processing. Then you allow the common case to occupy the &#8220;root level&#8221; of your function. The idea being that the normal flow of control should not be nestled away in conditionals (especially deeply nested ones!) Any given function has a specific purpose (if you adhere to SRP) and that purpose should read as simply as possible in the &#8220;most expected&#8221; location.</p>
]]></content:encoded>
	</item>
</channel>
</rss>
