<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0 Transitional//EN">
<HTML><HEAD>
<META http-equiv=Content-Type content="text/html; charset=iso-8859-1">
<META content="MSHTML 5.50.4522.1800" name=GENERATOR>
<STYLE></STYLE>
</HEAD>
<BODY bgColor=#ffffff>
<DIV>"Maniac" <<A href="mailto:Maniac@alltel.net">Maniac@alltel.net</A>>
wrote in message <A
href="news:45m0b9.fem.ln@alltel.net">news:45m0b9.fem.ln@alltel.net</A>...</DIV>
<DIV><FONT face=Arial size=2></FONT><FONT face=Arial size=2></FONT><BR>>>
Lack of autocompletion tends to _encourage_ laziness and _lower_<BR>>>
productivity. <BR>>I strongly disagree lack of autocompletion will in the
short run (in your <BR>>words lower productivity) but will also
increase the skill of the <BR>>programmer by forcing you to look up functions
and other such stuff that<BR>>you accidently store in your brain and you are
EGAD "forced" to learn <BR>>something that the next time you're coding you
happen to remember the<BR>>function. </DIV>
<DIV><FONT face=Arial size=2></FONT> </DIV>
<DIV>Huh? Having to look it up doesn't make you learn anything - I've watched
people load up the same man page over and over and over again. I guess it
might develop your librarian skills but beyond that... Whether or not I learn or
remember something after looking it up is completely dependent on me and
independent of the presence or absence of autocompletion.<BR><BR>>I have yet
to find a "useless" comment. Any documentation in source code <BR>>helps
</DIV>
<DIV><FONT face=Arial size=2></FONT> </DIV>
<DIV>Nope. Here's an unmodified snippet of code I came across not too long
ago:</DIV>
<DIV><FONT face=Arial size=2></FONT> </DIV>
<DIV> lpPool->iFlags=aFlags; /* set flags
*/<BR> lpPool->iSize=aElementSize; /* set size */<BR></DIV>
<DIV><FONT face=Arial size=2></FONT> </DIV>
<DIV>Do these help? No, these comments add no value. Worse, because they
are present, as you scan through the code you end up reading them just because
they are there. It slows you down and clutters the code. So the original
programmer wasted time putting them there and everyone else who reads the code
wastes time reading them. </DIV>
<DIV><FONT face=Arial size=2></FONT> </DIV>
<DIV>In Python, beyond docstrings and some level-of-intent comments near blocks
of code whose purpose/function is not instantly clear, you don't need much else.
(and if the code's purpose/function isn't instantly clear, it's often because
the code is sloppy and needs to be rewritten). </DIV>
<DIV><FONT face=Arial size=2></FONT> </DIV>
<DIV>>Yes it might be redundant now but starting another project and
then<BR>>returning to the "old" code base (when you now have a whole new
mindset)<BR>>w/o documentation (I don't care how "descriptive" function names
you use) <BR>>still requires a re-learning curve and the comment might
trigger something<BR>>that your all-encompassing descriptive function name
wouldn't. </DIV>
<DIV><FONT face=Arial size=2></FONT> </DIV>
<DIV>I'm not against well-placed level-of-intent comments, but comments that
exist because the programmer was too lazy/dumb to choose descriptive names.
Another common example I've seen:</DIV>
<DIV><FONT face=Arial size=2></FONT> </DIV>
<DIV>int i,j,k; // i is the page index, j is the paragraph index, and k is the
word index</DIV>
<DIV><FONT face=Arial size=2></FONT> </DIV>
<DIV>Bleh. You're fired. :)</DIV>
<DIV><FONT face=Arial size=2></FONT> </DIV>
<DIV>-Dave</DIV>
<DIV><FONT face=Arial size=2></FONT> </DIV></BODY></HTML>