<?xml version='1.0' encoding='UTF-8'?><?xml-stylesheet href="http://www.blogger.com/styles/atom.css" type="text/css"?><feed xmlns='http://www.w3.org/2005/Atom' xmlns:openSearch='http://a9.com/-/spec/opensearchrss/1.0/'><id>tag:blogger.com,1999:blog-1531850453904970924.post4423122970147831118..comments</id><updated>2008-08-30T10:00:16.038-04:00</updated><category term='bloggers'/><category term='computer graphics'/><category term='Microsoft'/><category term='finances'/><category term='songs'/><category term='conceptual products'/><category term='crafting'/><category term='personal'/><category term='online tools'/><category term='video games'/><category term='movies'/><category term='top lists'/><category term='bridge'/><category term='books'/><category term='programming'/><category term='random'/><category term='sony aibo'/><category term='videos'/><category term='robots'/><category term='marriage'/><category term='relationships'/><category term='ultimate frisbee'/><category term='Apple'/><category term='Google'/><category term='carnegie mellon'/><category term='board games'/><category term='products'/><category term='saving money'/><category term='interview'/><category term='travel'/><category term='howtos'/><category term='iPhone'/><category term='iTunes'/><category term='downloadable software'/><category term='current events'/><category term='food'/><category term='sports'/><category term='design'/><category term='laptops'/><category term='code'/><category term='job advice'/><category term='girl geek'/><category term='blogging'/><category term='OS'/><category term='performing arts'/><title type='text'>Comments on RoboJenny: Do You Comment Too Much?</title><link rel='http://schemas.google.com/g/2005#feed' type='application/atom+xml' href='http://www.robojenny.com/feeds/4423122970147831118/comments/default'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/1531850453904970924/4423122970147831118/comments/default'/><link rel='alternate' type='text/html' href='http://www.robojenny.com/2008/07/do-you-comment-too-much.html'/><author><name>RoboJenny</name><uri>http://www.blogger.com/profile/04085723385146006020</uri><email>noreply@blogger.com</email><gd:image xmlns:gd='http://schemas.google.com/g/2005' rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='24' src='http://2.bp.blogspot.com/_ZSO3PFmiAYw/SqCJUMEP7bI/AAAAAAAABAI/yohZgFFAiCk/S220/jlingithub.jpg'/></author><generator version='7.00' uri='http://www.blogger.com'>Blogger</generator><openSearch:totalResults>9</openSearch:totalResults><openSearch:startIndex>1</openSearch:startIndex><openSearch:itemsPerPage>25</openSearch:itemsPerPage><entry><id>tag:blogger.com,1999:blog-1531850453904970924.post-8366631023499225282</id><published>2008-08-30T10:00:00.000-04:00</published><updated>2008-08-30T10:00:00.000-04:00</updated><title type='text'>Good article with good advice!  Thanks for sharing...</title><content type='html'>Good article with good advice!  Thanks for sharing that.  Will definitely take it to heart.&lt;BR/&gt;&lt;BR/&gt;I tend to put comments in as if I'm writing to myself in the future when I look at the code and have no clue what the heck the past version of myself was thinking.  That's the whole point anyway.&lt;BR/&gt;&lt;BR/&gt;I think comments need to explain what I'm trying to accomplish, why I'm trying to accomplish it, and for less obvious subroutines, how I'm accomplishing it.&lt;BR/&gt;&lt;BR/&gt;I picked up a habit of using a standard comment block above subroutines / objects and at the top of files.  Description, input output side effect, etc.  Makes it much easier to skim thru code later.&lt;BR/&gt;&lt;BR/&gt;example code for Pokey: http://homepage.mac.com/michael_shimniok/Robot/PokeySource20080409.tgz&lt;BR/&gt;&lt;BR/&gt;Michael</content><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/1531850453904970924/4423122970147831118/comments/default/8366631023499225282'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/1531850453904970924/4423122970147831118/comments/default/8366631023499225282'/><link rel='alternate' type='text/html' href='http://www.robojenny.com/2008/07/do-you-comment-too-much.html?showComment=1220104800000#c8366631023499225282' title=''/><author><name>shimniok</name><uri>http://www.blogger.com/profile/17602015624941667574</uri><email>noreply@blogger.com</email><gd:image xmlns:gd='http://schemas.google.com/g/2005' rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='32' src='http://tc.wagoneer.net/images/me_southpark_50x50.gif'/></author><thr:in-reply-to xmlns:thr='http://purl.org/syndication/thread/1.0' href='http://www.robojenny.com/2008/07/do-you-comment-too-much.html' ref='tag:blogger.com,1999:blog-1531850453904970924.post-4423122970147831118' source='http://www.blogger.com/feeds/1531850453904970924/posts/default/4423122970147831118' type='text/html'/><gd:extendedProperty xmlns:gd='http://schemas.google.com/g/2005' name='blogger.itemClass' value='pid-1726970335'/></entry><entry><id>tag:blogger.com,1999:blog-1531850453904970924.post-1562659886671116587</id><published>2008-08-30T00:02:00.000-04:00</published><updated>2008-08-30T00:02:00.000-04:00</updated><title type='text'>Hehe "TODO/FIXME" is one of my favorite comments (...</title><content type='html'>Hehe "TODO/FIXME" is one of my favorite comments (and probably the only one on that list I use correctly every time)</content><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/1531850453904970924/4423122970147831118/comments/default/1562659886671116587'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/1531850453904970924/4423122970147831118/comments/default/1562659886671116587'/><link rel='alternate' type='text/html' href='http://www.robojenny.com/2008/07/do-you-comment-too-much.html?showComment=1220068920000#c1562659886671116587' title=''/><author><name>mds</name><uri>http://www.blogger.com/profile/14506141823071613677</uri><email>noreply@blogger.com</email><gd:image xmlns:gd='http://schemas.google.com/g/2005' rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:in-reply-to xmlns:thr='http://purl.org/syndication/thread/1.0' href='http://www.robojenny.com/2008/07/do-you-comment-too-much.html' ref='tag:blogger.com,1999:blog-1531850453904970924.post-4423122970147831118' source='http://www.blogger.com/feeds/1531850453904970924/posts/default/4423122970147831118' type='text/html'/><gd:extendedProperty xmlns:gd='http://schemas.google.com/g/2005' name='blogger.itemClass' value='pid-367785838'/></entry><entry><id>tag:blogger.com,1999:blog-1531850453904970924.post-611256842888112189</id><published>2008-08-29T21:28:00.000-04:00</published><updated>2008-08-29T21:28:00.000-04:00</updated><title type='text'>Don't use inline comments, I gues the handgrenate ...</title><content type='html'>Don't use inline comments, I gues the handgrenate story holds (see pointers). Never pull the pin, when you think you need it. Cause when you actually need it you'll know it. (mostly follows the list)&lt;BR/&gt;&lt;BR/&gt;The rest folds(in any half decent IDE) so shouldn't have to hurt anyone.&lt;BR/&gt;&lt;BR/&gt;"Complicated nested loop structure - This is the textbook case and should be clear."&lt;BR/&gt;Given cyclomatic complexity such a case shouldn't exist. split it up into separate methods.&lt;BR/&gt;&lt;BR/&gt;"For example, writing javadocs for getters and setters on POJOs are unnecessary. If the API user cannot figure out what getName() and setName(String name) do, then I'm not really sure a comment would help them. Use comments for a purpose." You just missed the nail. Now name is perhaps a bad example but in other cases you might want to comment(lacking annotations) return value (non-)null / empty collection? etc</content><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/1531850453904970924/4423122970147831118/comments/default/611256842888112189'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/1531850453904970924/4423122970147831118/comments/default/611256842888112189'/><link rel='alternate' type='text/html' href='http://www.robojenny.com/2008/07/do-you-comment-too-much.html?showComment=1220059680000#c611256842888112189' title=''/><author><name>Michael B</name><email>noreply@blogger.com</email><gd:image xmlns:gd='http://schemas.google.com/g/2005' rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img1.blogblog.com/img/blank.gif'/></author><thr:in-reply-to xmlns:thr='http://purl.org/syndication/thread/1.0' href='http://www.robojenny.com/2008/07/do-you-comment-too-much.html' ref='tag:blogger.com,1999:blog-1531850453904970924.post-4423122970147831118' source='http://www.blogger.com/feeds/1531850453904970924/posts/default/4423122970147831118' type='text/html'/><gd:extendedProperty xmlns:gd='http://schemas.google.com/g/2005' name='blogger.itemClass' value='pid-2127445594'/></entry><entry><id>tag:blogger.com,1999:blog-1531850453904970924.post-6239003671927559983</id><published>2008-08-29T15:35:00.000-04:00</published><updated>2008-08-29T15:35:00.000-04:00</updated><title type='text'>Damn Jenny you're pretty damn sexy. Anywhoo this r...</title><content type='html'>Damn Jenny you're pretty damn sexy. Anywhoo this really all boils down to comments should focus on WHY not how...</content><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/1531850453904970924/4423122970147831118/comments/default/6239003671927559983'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/1531850453904970924/4423122970147831118/comments/default/6239003671927559983'/><link rel='alternate' type='text/html' href='http://www.robojenny.com/2008/07/do-you-comment-too-much.html?showComment=1220038500000#c6239003671927559983' title=''/><author><name>ton</name><email>noreply@blogger.com</email><gd:image xmlns:gd='http://schemas.google.com/g/2005' rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img1.blogblog.com/img/blank.gif'/></author><thr:in-reply-to xmlns:thr='http://purl.org/syndication/thread/1.0' href='http://www.robojenny.com/2008/07/do-you-comment-too-much.html' ref='tag:blogger.com,1999:blog-1531850453904970924.post-4423122970147831118' source='http://www.blogger.com/feeds/1531850453904970924/posts/default/4423122970147831118' type='text/html'/><gd:extendedProperty xmlns:gd='http://schemas.google.com/g/2005' name='blogger.itemClass' value='pid-828134711'/></entry><entry><id>tag:blogger.com,1999:blog-1531850453904970924.post-5152473263302494583</id><published>2008-08-29T14:27:00.000-04:00</published><updated>2008-08-29T14:27:00.000-04:00</updated><title type='text'>I used to comment quite a bit, but then my girlfri...</title><content type='html'>I used to comment quite a bit, but then my girlfriend was, like, "I'm getting sick of your little comments", so I had to pare it down. Now I barely comment at all and, overall, I'd have to say that my relationship is better.</content><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/1531850453904970924/4423122970147831118/comments/default/5152473263302494583'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/1531850453904970924/4423122970147831118/comments/default/5152473263302494583'/><link rel='alternate' type='text/html' href='http://www.robojenny.com/2008/07/do-you-comment-too-much.html?showComment=1220034420000#c5152473263302494583' title=''/><author><name>Bruko</name><uri>http://www.blogger.com/profile/16554253761930565252</uri><email>noreply@blogger.com</email><gd:image xmlns:gd='http://schemas.google.com/g/2005' rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:in-reply-to xmlns:thr='http://purl.org/syndication/thread/1.0' href='http://www.robojenny.com/2008/07/do-you-comment-too-much.html' ref='tag:blogger.com,1999:blog-1531850453904970924.post-4423122970147831118' source='http://www.blogger.com/feeds/1531850453904970924/posts/default/4423122970147831118' type='text/html'/><gd:extendedProperty xmlns:gd='http://schemas.google.com/g/2005' name='blogger.itemClass' value='pid-311778468'/></entry><entry><id>tag:blogger.com,1999:blog-1531850453904970924.post-9099869290829654873</id><published>2008-08-29T12:13:00.000-04:00</published><updated>2008-08-29T12:13:00.000-04:00</updated><title type='text'>As I stated in the post, I am in &lt;i&gt;no way&lt;/i&gt; say...</title><content type='html'>As I stated in the post, I am in &lt;I&gt;no way&lt;/I&gt; saying that code should not be commented. Neither code snippet were examples of the "correct" way, but rather two different examples of poor commenting. I was merely illustrating that even an example with commenting could be messier than the already incorrect example of not commenting at all.&lt;BR/&gt;&lt;BR/&gt;What you stated is exactly an example I stated in my list of situations to comment: stating assumptions. I do think you explained it more eloquently though.&lt;BR/&gt;&lt;BR/&gt;Thank you for you comments.</content><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/1531850453904970924/4423122970147831118/comments/default/9099869290829654873'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/1531850453904970924/4423122970147831118/comments/default/9099869290829654873'/><link rel='alternate' type='text/html' href='http://www.robojenny.com/2008/07/do-you-comment-too-much.html?showComment=1220026380000#c9099869290829654873' title=''/><author><name>RoboJenny</name><uri>http://www.blogger.com/profile/04085723385146006020</uri><email>noreply@blogger.com</email><gd:image xmlns:gd='http://schemas.google.com/g/2005' rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='25' src='http://1.bp.blogspot.com/_ZSO3PFmiAYw/SKMhnlixNTI/AAAAAAAAAq0/t7gAKTek00g/s1600-R/jennysmile.jpg'/></author><thr:in-reply-to xmlns:thr='http://purl.org/syndication/thread/1.0' href='http://www.robojenny.com/2008/07/do-you-comment-too-much.html' ref='tag:blogger.com,1999:blog-1531850453904970924.post-4423122970147831118' source='http://www.blogger.com/feeds/1531850453904970924/posts/default/4423122970147831118' type='text/html'/><gd:extendedProperty xmlns:gd='http://schemas.google.com/g/2005' name='blogger.itemClass' value='pid-1140861305'/></entry><entry><id>tag:blogger.com,1999:blog-1531850453904970924.post-192240142226105433</id><published>2008-08-29T12:07:00.000-04:00</published><updated>2008-08-29T12:07:00.000-04:00</updated><title type='text'>I totally agree with the premise of your post.  Bu...</title><content type='html'>I totally agree with the premise of your post.  But... :)&lt;BR/&gt;&lt;BR/&gt;Given your code snippet I would use it as an example of under-commenting.  I would at the very least expect a clarification on what happens when str is null (in Java you'd throw a NullPointerException in that code).  Commenting code is more than explaining the "what" (which should be pretty obvious) but also the "why", preconditions, and postconditions that someone would need to know in order to use your code correctly.&lt;BR/&gt;&lt;BR/&gt;Excellent point though.</content><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/1531850453904970924/4423122970147831118/comments/default/192240142226105433'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/1531850453904970924/4423122970147831118/comments/default/192240142226105433'/><link rel='alternate' type='text/html' href='http://www.robojenny.com/2008/07/do-you-comment-too-much.html?showComment=1220026020000#c192240142226105433' title=''/><author><name>Chris</name><uri>http://www.grok-programming.com</uri><email>noreply@blogger.com</email><gd:image xmlns:gd='http://schemas.google.com/g/2005' rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img1.blogblog.com/img/blank.gif'/></author><thr:in-reply-to xmlns:thr='http://purl.org/syndication/thread/1.0' href='http://www.robojenny.com/2008/07/do-you-comment-too-much.html' ref='tag:blogger.com,1999:blog-1531850453904970924.post-4423122970147831118' source='http://www.blogger.com/feeds/1531850453904970924/posts/default/4423122970147831118' type='text/html'/><gd:extendedProperty xmlns:gd='http://schemas.google.com/g/2005' name='blogger.itemClass' value='pid-15197969'/></entry><entry><id>tag:blogger.com,1999:blog-1531850453904970924.post-4752568000438752220</id><published>2008-08-29T09:05:00.000-04:00</published><updated>2008-08-29T09:05:00.000-04:00</updated><title type='text'>Heh. I think my code sample was actually pretty we...</title><content type='html'>Heh. I think my code sample was actually pretty weak. I just wanted something short though to illustrate my point wrt overcommenting.&lt;BR/&gt;&lt;BR/&gt;Sadly, I have seen far more egregious examples in production code at more than one of the companies I've worked for, but the same situation where every line is commented.</content><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/1531850453904970924/4423122970147831118/comments/default/4752568000438752220'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/1531850453904970924/4423122970147831118/comments/default/4752568000438752220'/><link rel='alternate' type='text/html' href='http://www.robojenny.com/2008/07/do-you-comment-too-much.html?showComment=1220015100000#c4752568000438752220' title=''/><author><name>RoboJenny</name><uri>http://www.blogger.com/profile/04085723385146006020</uri><email>noreply@blogger.com</email><gd:image xmlns:gd='http://schemas.google.com/g/2005' rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='25' src='http://1.bp.blogspot.com/_ZSO3PFmiAYw/SKMhnlixNTI/AAAAAAAAAq0/t7gAKTek00g/s1600-R/jennysmile.jpg'/></author><thr:in-reply-to xmlns:thr='http://purl.org/syndication/thread/1.0' href='http://www.robojenny.com/2008/07/do-you-comment-too-much.html' ref='tag:blogger.com,1999:blog-1531850453904970924.post-4423122970147831118' source='http://www.blogger.com/feeds/1531850453904970924/posts/default/4423122970147831118' type='text/html'/><gd:extendedProperty xmlns:gd='http://schemas.google.com/g/2005' name='blogger.itemClass' value='pid-1140861305'/></entry><entry><id>tag:blogger.com,1999:blog-1531850453904970924.post-7682878152663022332</id><published>2008-08-29T08:59:00.000-04:00</published><updated>2008-08-29T08:59:00.000-04:00</updated><title type='text'>Here's my response (in code) in C# using .Net 3.5 ...</title><content type='html'>Here's my response (in code) in C# using .Net 3.5 extension method too, but also implemented as a regular static method that takes a string instance.&lt;BR/&gt;&lt;BR/&gt;&lt;A HREF="http://pastebin.ca/1188468" REL="nofollow"&gt;http://pastebin.ca/1188468&lt;/A&gt;</content><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/1531850453904970924/4423122970147831118/comments/default/7682878152663022332'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/1531850453904970924/4423122970147831118/comments/default/7682878152663022332'/><link rel='alternate' type='text/html' href='http://www.robojenny.com/2008/07/do-you-comment-too-much.html?showComment=1220014740000#c7682878152663022332' title=''/><author><name>Chris Benard</name><uri>http://chrisbenard.net/</uri><email>noreply@blogger.com</email><gd:image xmlns:gd='http://schemas.google.com/g/2005' rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img1.blogblog.com/img/openid16-rounded.gif'/></author><thr:in-reply-to xmlns:thr='http://purl.org/syndication/thread/1.0' href='http://www.robojenny.com/2008/07/do-you-comment-too-much.html' ref='tag:blogger.com,1999:blog-1531850453904970924.post-4423122970147831118' source='http://www.blogger.com/feeds/1531850453904970924/posts/default/4423122970147831118' type='text/html'/><gd:extendedProperty xmlns:gd='http://schemas.google.com/g/2005' name='blogger.itemClass' value='pid-290070620'/></entry></feed>
