<?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: Why I don&#8217;t write code comments</title>
	<atom:link href="http://guilherme.pro/2009/04/05/why-i-dont-write-code-comments/feed/" rel="self" type="application/rss+xml" />
	<link>http://guilherme.pro/2009/04/05/why-i-dont-write-code-comments/</link>
	<description>Software Development stuff</description>
	<lastBuildDate>Sat, 03 Apr 2010 03:53:03 -0400</lastBuildDate>
	<generator>http://wordpress.org/?v=2.8.4</generator>
	<sy:updatePeriod>hourly</sy:updatePeriod>
	<sy:updateFrequency>1</sy:updateFrequency>
		<item>
		<title>By: Louco por automatiza&#231;&#227;o! &#171; Pedro Augusto Freitas de Souza</title>
		<link>http://guilherme.pro/2009/04/05/why-i-dont-write-code-comments/comment-page-1/#comment-1725</link>
		<dc:creator>Louco por automatiza&#231;&#227;o! &#171; Pedro Augusto Freitas de Souza</dc:creator>
		<pubDate>Sat, 03 Apr 2010 03:53:03 +0000</pubDate>
		<guid isPermaLink="false">http://guilherme.pro/?p=47#comment-1725</guid>
		<description>[...] “Radical” e “extremo” são palavras que têm uma conotação muito negativa, mas ser radical ou extremo pode ser muito útil quando se tem um propósito como esse (ou então para se fazer uma abordagem como a que eu postei sobre porque eu não gosto de escrever comentários no código). [...]</description>
		<content:encoded><![CDATA[<p>[...] “Radical” e “extremo” são palavras que têm uma conotação muito negativa, mas ser radical ou extremo pode ser muito útil quando se tem um propósito como esse (ou então para se fazer uma abordagem como a que eu postei sobre porque eu não gosto de escrever comentários no código). [...]</p>
]]></content:encoded>
	</item>
	<item>
		<title>By: Guilherme Chapiewski</title>
		<link>http://guilherme.pro/2009/04/05/why-i-dont-write-code-comments/comment-page-1/#comment-1397</link>
		<dc:creator>Guilherme Chapiewski</dc:creator>
		<pubDate>Fri, 04 Dec 2009 07:45:35 +0000</pubDate>
		<guid isPermaLink="false">http://guilherme.pro/?p=47#comment-1397</guid>
		<description>@Anderson

Sorry, it&#039;s not implemented. But the good thing is that it is Open Source, you can do it if youwant to! I&#039;ll be happy to integrate your patch into the project :)</description>
		<content:encoded><![CDATA[<p>@Anderson</p>
<p>Sorry, it&#8217;s not implemented. But the good thing is that it is Open Source, you can do it if youwant to! I&#8217;ll be happy to integrate your patch into the project <img src='http://guilherme.pro/wp-includes/images/smilies/icon_smile.gif' alt=':)' class='wp-smiley' /> </p>
]]></content:encoded>
	</item>
	<item>
		<title>By: Anderson</title>
		<link>http://guilherme.pro/2009/04/05/why-i-dont-write-code-comments/comment-page-1/#comment-1369</link>
		<dc:creator>Anderson</dc:creator>
		<pubDate>Tue, 24 Nov 2009 13:46:07 +0000</pubDate>
		<guid isPermaLink="false">http://guilherme.pro/?p=47#comment-1369</guid>
		<description>How can I use the &quot;no-reply&quot;?

I&#039;ve expected a &quot;.replyTo(...)&quot; !</description>
		<content:encoded><![CDATA[<p>How can I use the &#8220;no-reply&#8221;?</p>
<p>I&#8217;ve expected a &#8220;.replyTo(&#8230;)&#8221; !</p>
]]></content:encoded>
	</item>
	<item>
		<title>By: Louco por automatização! &#124; Planeta Globo.com</title>
		<link>http://guilherme.pro/2009/04/05/why-i-dont-write-code-comments/comment-page-1/#comment-37</link>
		<dc:creator>Louco por automatização! &#124; Planeta Globo.com</dc:creator>
		<pubDate>Wed, 15 Apr 2009 22:12:49 +0000</pubDate>
		<guid isPermaLink="false">http://guilherme.pro/?p=47#comment-37</guid>
		<description>[...] &#8220;Radical&#8221; e &#8220;extremo&#8221; são palavras que têm uma conotação muito negativa, mas ser radical ou extremo pode ser muito útil quando se tem um propósito como esse (ou então para se fazer uma abordagem como a que eu postei sobre porque eu não gosto de escrever comentários no código). [...]</description>
		<content:encoded><![CDATA[<p>[...] &#8220;Radical&#8221; e &#8220;extremo&#8221; são palavras que têm uma conotação muito negativa, mas ser radical ou extremo pode ser muito útil quando se tem um propósito como esse (ou então para se fazer uma abordagem como a que eu postei sobre porque eu não gosto de escrever comentários no código). [...]</p>
]]></content:encoded>
	</item>
	<item>
		<title>By: Louco por automatização! &#124; Guilherme Chapiewski</title>
		<link>http://guilherme.pro/2009/04/05/why-i-dont-write-code-comments/comment-page-1/#comment-35</link>
		<dc:creator>Louco por automatização! &#124; Guilherme Chapiewski</dc:creator>
		<pubDate>Wed, 15 Apr 2009 06:13:22 +0000</pubDate>
		<guid isPermaLink="false">http://guilherme.pro/?p=47#comment-35</guid>
		<description>[...] &#8220;Radical&#8221; e &#8220;extremo&#8221; são palavras que têm uma conotação muito negativa, mas ser radical ou extremo pode ser muito útil quando se tem um propósito como esse (ou então para se fazer uma abordagem como a que eu postei sobre porque eu não gosto de escrever comentários no código). [...]</description>
		<content:encoded><![CDATA[<p>[...] &#8220;Radical&#8221; e &#8220;extremo&#8221; são palavras que têm uma conotação muito negativa, mas ser radical ou extremo pode ser muito útil quando se tem um propósito como esse (ou então para se fazer uma abordagem como a que eu postei sobre porque eu não gosto de escrever comentários no código). [...]</p>
]]></content:encoded>
	</item>
	<item>
		<title>By: Lucas Oleiro</title>
		<link>http://guilherme.pro/2009/04/05/why-i-dont-write-code-comments/comment-page-1/#comment-33</link>
		<dc:creator>Lucas Oleiro</dc:creator>
		<pubDate>Wed, 08 Apr 2009 14:34:53 +0000</pubDate>
		<guid isPermaLink="false">http://guilherme.pro/?p=47#comment-33</guid>
		<description>To support your post, there&#039;s a good book about the same subject with a lot of other arguments:

http://www.infoq.com/articles/clean-code-book-review</description>
		<content:encoded><![CDATA[<p>To support your post, there&#8217;s a good book about the same subject with a lot of other arguments:</p>
<p><a href="http://www.infoq.com/articles/clean-code-book-review" rel="nofollow" onclick="pageTracker._trackPageview('/outgoing/www.infoq.com/articles/clean-code-book-review?referer=');">http://www.infoq.com/articles/clean-code-book-review</a></p>
]]></content:encoded>
	</item>
	<item>
		<title>By: Carlos</title>
		<link>http://guilherme.pro/2009/04/05/why-i-dont-write-code-comments/comment-page-1/#comment-32</link>
		<dc:creator>Carlos</dc:creator>
		<pubDate>Wed, 08 Apr 2009 12:46:46 +0000</pubDate>
		<guid isPermaLink="false">http://guilherme.pro/?p=47#comment-32</guid>
		<description>I agree 100%! Quality should be a concern since the first moment...

but I think lack of expressivity (or expressiveness?) in code does not necessarily make it crappy code.</description>
		<content:encoded><![CDATA[<p>I agree 100%! Quality should be a concern since the first moment&#8230;</p>
<p>but I think lack of expressivity (or expressiveness?) in code does not necessarily make it crappy code.</p>
]]></content:encoded>
	</item>
	<item>
		<title>By: Guilherme Chapiewski</title>
		<link>http://guilherme.pro/2009/04/05/why-i-dont-write-code-comments/comment-page-1/#comment-31</link>
		<dc:creator>Guilherme Chapiewski</dc:creator>
		<pubDate>Tue, 07 Apr 2009 22:18:30 +0000</pubDate>
		<guid isPermaLink="false">http://guilherme.pro/?p=47#comment-31</guid>
		<description>@Carlos

This is a common misconception about Agile. :)

Although you &lt;strong&gt;must&lt;/strong&gt; build &lt;strong&gt;features and functionalities iteratively and incrementally&lt;/strong&gt;, the &lt;strong&gt;QUALITY&lt;/strong&gt; have to be built in &lt;strong&gt;since the very first moment&lt;/strong&gt;!

You will not write crappy code to be &lt;strong&gt;rewritten&lt;/strong&gt; from time to time, you will write high quality code that will be &lt;strong&gt;refactored&lt;/strong&gt; every time. You have to write high quality and well tested code so you can quickly refactor your software to accommodate changes - that&#039;s Agile.

I insist that comments can and should be avoided, but, as any other Agile rule, this is not a silver bullet.</description>
		<content:encoded><![CDATA[<p>@Carlos</p>
<p>This is a common misconception about Agile. <img src='http://guilherme.pro/wp-includes/images/smilies/icon_smile.gif' alt=':)' class='wp-smiley' /> </p>
<p>Although you <strong>must</strong> build <strong>features and functionalities iteratively and incrementally</strong>, the <strong>QUALITY</strong> have to be built in <strong>since the very first moment</strong>!</p>
<p>You will not write crappy code to be <strong>rewritten</strong> from time to time, you will write high quality code that will be <strong>refactored</strong> every time. You have to write high quality and well tested code so you can quickly refactor your software to accommodate changes &#8211; that&#8217;s Agile.</p>
<p>I insist that comments can and should be avoided, but, as any other Agile rule, this is not a silver bullet.</p>
]]></content:encoded>
	</item>
	<item>
		<title>By: Carlos</title>
		<link>http://guilherme.pro/2009/04/05/why-i-dont-write-code-comments/comment-page-1/#comment-30</link>
		<dc:creator>Carlos</dc:creator>
		<pubDate>Tue, 07 Apr 2009 18:20:45 +0000</pubDate>
		<guid isPermaLink="false">http://guilherme.pro/?p=47#comment-30</guid>
		<description>It seems you are suggesting that expressivity in code must be delivered since the first attempt. I beg to disagree, obviously it depends on the length of iterations because expressivity means rewriting the same code several times, but generally in agile projects refactoring is an iterative and incremental activity.

Comments can be useful to handle this transient situation if, as any other tool, used correctly.</description>
		<content:encoded><![CDATA[<p>It seems you are suggesting that expressivity in code must be delivered since the first attempt. I beg to disagree, obviously it depends on the length of iterations because expressivity means rewriting the same code several times, but generally in agile projects refactoring is an iterative and incremental activity.</p>
<p>Comments can be useful to handle this transient situation if, as any other tool, used correctly.</p>
]]></content:encoded>
	</item>
	<item>
		<title>By: Rafael Naufal</title>
		<link>http://guilherme.pro/2009/04/05/why-i-dont-write-code-comments/comment-page-1/#comment-29</link>
		<dc:creator>Rafael Naufal</dc:creator>
		<pubDate>Tue, 07 Apr 2009 16:49:48 +0000</pubDate>
		<guid isPermaLink="false">http://guilherme.pro/?p=47#comment-29</guid>
		<description>I think this problem arises when people don&#039;t know how to factor concerns (which are not coupled together) in objects collaborating to realize some purpose.

So, this kind of code ends up being messy, rot and very difficult to maintain.

A good design approach talks about objects with one responsability and clear method names indicating their purpose, with indirections isolating things that change freqüently from things that stay the same.</description>
		<content:encoded><![CDATA[<p>I think this problem arises when people don&#8217;t know how to factor concerns (which are not coupled together) in objects collaborating to realize some purpose.</p>
<p>So, this kind of code ends up being messy, rot and very difficult to maintain.</p>
<p>A good design approach talks about objects with one responsability and clear method names indicating their purpose, with indirections isolating things that change freqüently from things that stay the same.</p>
]]></content:encoded>
	</item>
</channel>
</rss>
