<!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>